diff options
-rw-r--r-- | include/sfx2/charmapcontrol.hxx | 37 | ||||
-rw-r--r-- | include/sfx2/charmappopup.hxx | 1 | ||||
-rw-r--r-- | include/svtools/toolbarmenu.hxx | 7 | ||||
-rw-r--r-- | sfx2/source/control/charmapcontrol.cxx | 219 | ||||
-rw-r--r-- | sfx2/source/dialog/charmappopup.cxx | 15 | ||||
-rw-r--r-- | sfx2/uiconfig/ui/charmapcontrol.ui | 180 | ||||
-rw-r--r-- | solenv/sanitizers/ui/sfx.suppr | 32 |
7 files changed, 241 insertions, 250 deletions
diff --git a/include/sfx2/charmapcontrol.hxx b/include/sfx2/charmapcontrol.hxx index e6a8f672eef8..83230a458af6 100644 --- a/include/sfx2/charmapcontrol.hxx +++ b/include/sfx2/charmapcontrol.hxx @@ -25,37 +25,38 @@ #include <sfx2/tbxctrl.hxx> #include <sfx2/charwin.hxx> #include <svtools/toolbarmenu.hxx> -#include <vcl/button.hxx> #include <deque> class CharmapPopup; namespace com::sun::star::frame { class XFrame; } -class SfxCharmapCtrl final : public svtools::ToolbarPopup +class SfxCharmapCtrl final : public WeldToolbarPopup { public: - explicit SfxCharmapCtrl(CharmapPopup* pControl, vcl::Window* pParent); - + explicit SfxCharmapCtrl(CharmapPopup* pControl, weld::Widget* pParent); virtual ~SfxCharmapCtrl() override; - virtual void dispose() override; - - virtual bool EventNotify( NotifyEvent& rNEvt ) override; + virtual void GrabFocus() override; private: - VclPtr<SvxCharViewControl> m_pRecentCharView[16]; - VclPtr<SvxCharViewControl> m_pFavCharView[16]; - std::deque<OUString> maRecentCharList; - std::deque<OUString> maRecentCharFontList; - std::deque<OUString> maFavCharList; - std::deque<OUString> maFavCharFontList; - VclPtr<Button> maDlgBtn; - bool mbNeedsInit = true; + rtl::Reference<CharmapPopup> m_xControl; + + ScopedVclPtr<VirtualDevice> m_xVirDev; + + std::deque<OUString> m_aRecentCharList; + std::deque<OUString> m_aRecentCharFontList; + std::deque<OUString> m_aFavCharList; + std::deque<OUString> m_aFavCharFontList; + + SvxCharView m_aRecentCharView[16]; + SvxCharView m_aFavCharView[16]; + std::unique_ptr<weld::Button> m_xDlgBtn; + std::unique_ptr<weld::CustomWeld> m_xRecentCharView[16]; + std::unique_ptr<weld::CustomWeld> m_xFavCharView[16]; - DECL_LINK(CharClickHdl, SvxCharViewControl*, void); - DECL_STATIC_LINK(SfxCharmapCtrl, FocusHdl, Control&, void); - DECL_LINK(OpenDlgHdl, Button*, void); + DECL_LINK(CharClickHdl, SvxCharView*, void); + DECL_LINK(OpenDlgHdl, weld::Button&, void); void getFavCharacterList(); void updateFavCharControl(); diff --git a/include/sfx2/charmappopup.hxx b/include/sfx2/charmappopup.hxx index a691327104b6..4bf25fd674c3 100644 --- a/include/sfx2/charmappopup.hxx +++ b/include/sfx2/charmappopup.hxx @@ -31,6 +31,7 @@ public: using svt::ToolboxController::createPopupWindow; virtual VclPtr<vcl::Window> createPopupWindow( vcl::Window* pParent ) override; + virtual std::unique_ptr<WeldToolbarPopup> weldPopupWindow() override; // XServiceInfo virtual OUString SAL_CALL getImplementationName() override; diff --git a/include/svtools/toolbarmenu.hxx b/include/svtools/toolbarmenu.hxx index d583482628ce..b11b89380774 100644 --- a/include/svtools/toolbarmenu.hxx +++ b/include/svtools/toolbarmenu.hxx @@ -178,12 +178,11 @@ public: // is activated, so ToolbarPopupContainer is that widget and the // contents of the on-demand created WeldToolbarPopup is placed // within the ToolbarPopupContainer -class SVT_DLLPUBLIC ToolbarPopupContainer +class SVT_DLLPUBLIC ToolbarPopupContainer final { private: DECL_LINK(FocusHdl, weld::Widget&, void); -protected: std::unique_ptr<weld::Builder> m_xBuilder; std::unique_ptr<weld::Container> m_xTopLevel; std::unique_ptr<weld::Container> m_xContainer; @@ -199,9 +198,9 @@ public: void unsetPopover(); }; -class SVT_DLLPUBLIC InterimToolbarPopup : public svtools::ToolbarPopup +class SVT_DLLPUBLIC InterimToolbarPopup final : public svtools::ToolbarPopup { -protected: +private: VclPtr<vcl::Window> m_xBox; std::unique_ptr<weld::Builder> m_xBuilder; std::unique_ptr<weld::Container> m_xContainer; diff --git a/sfx2/source/control/charmapcontrol.cxx b/sfx2/source/control/charmapcontrol.cxx index fe44619b2f3a..152aa78c8ad2 100644 --- a/sfx2/source/control/charmapcontrol.cxx +++ b/sfx2/source/control/charmapcontrol.cxx @@ -26,58 +26,83 @@ using namespace css; -SfxCharmapCtrl::SfxCharmapCtrl(CharmapPopup* pControl, vcl::Window* pParent) - : ToolbarPopup(pControl->getFrameInterface(), pParent, "charmapctrl", "sfx/ui/charmapcontrol.ui") +SfxCharmapCtrl::SfxCharmapCtrl(CharmapPopup* pControl, weld::Widget* pParent) + : WeldToolbarPopup(pControl->getFrameInterface(), pParent, "sfx/ui/charmapcontrol.ui", "charmapctrl") + , m_xControl(pControl) + , m_xVirDev(VclPtr<VirtualDevice>::Create()) + , m_aRecentCharView{SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev)} + , m_aFavCharView{SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev), + SvxCharView(m_xVirDev)} + , m_xDlgBtn(m_xBuilder->weld_button("specialchardlg")) + , m_xRecentCharView{std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar1", m_aRecentCharView[0]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar2", m_aRecentCharView[1]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar3", m_aRecentCharView[2]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar4", m_aRecentCharView[3]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar5", m_aRecentCharView[4]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar6", m_aRecentCharView[5]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar7", m_aRecentCharView[6]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar8", m_aRecentCharView[7]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar9", m_aRecentCharView[8]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar10", m_aRecentCharView[9]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar11", m_aRecentCharView[10]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar12", m_aRecentCharView[11]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar13", m_aRecentCharView[12]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar14", m_aRecentCharView[13]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar15", m_aRecentCharView[14]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "viewchar16", m_aRecentCharView[15])} + , m_xFavCharView{std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar1", m_aFavCharView[0]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar2", m_aFavCharView[1]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar3", m_aFavCharView[2]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar4", m_aFavCharView[3]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar5", m_aFavCharView[4]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar6", m_aFavCharView[5]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar7", m_aFavCharView[6]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar8", m_aFavCharView[7]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar9", m_aFavCharView[8]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar10", m_aFavCharView[9]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar11", m_aFavCharView[10]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar12", m_aFavCharView[11]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar13", m_aFavCharView[12]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar14", m_aFavCharView[13]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar15", m_aFavCharView[14]), + std::make_unique<weld::CustomWeld>(*m_xBuilder, "favchar16", m_aFavCharView[15])} { - get( m_pRecentCharView[0], "viewchar1" ); - get( m_pRecentCharView[1], "viewchar2" ); - get( m_pRecentCharView[2], "viewchar3" ); - get( m_pRecentCharView[3], "viewchar4" ); - get( m_pRecentCharView[4], "viewchar5" ); - get( m_pRecentCharView[5], "viewchar6" ); - get( m_pRecentCharView[6], "viewchar7" ); - get( m_pRecentCharView[7], "viewchar8" ); - get( m_pRecentCharView[8], "viewchar9" ); - get( m_pRecentCharView[9], "viewchar10" ); - get( m_pRecentCharView[10], "viewchar11" ); - get( m_pRecentCharView[11], "viewchar12" ); - get( m_pRecentCharView[12], "viewchar13" ); - get( m_pRecentCharView[13], "viewchar14" ); - get( m_pRecentCharView[14], "viewchar15" ); - get( m_pRecentCharView[15], "viewchar16" ); - - get( m_pFavCharView[0], "favchar1" ); - get( m_pFavCharView[1], "favchar2" ); - get( m_pFavCharView[2], "favchar3" ); - get( m_pFavCharView[3], "favchar4" ); - get( m_pFavCharView[4], "favchar5" ); - get( m_pFavCharView[5], "favchar6" ); - get( m_pFavCharView[6], "favchar7" ); - get( m_pFavCharView[7], "favchar8" ); - get( m_pFavCharView[8], "favchar9" ); - get( m_pFavCharView[9], "favchar10" ); - get( m_pFavCharView[10], "favchar11" ); - get( m_pFavCharView[11], "favchar12" ); - get( m_pFavCharView[12], "favchar13" ); - get( m_pFavCharView[13], "favchar14" ); - get( m_pFavCharView[14], "favchar15" ); - get( m_pFavCharView[15], "favchar16" ); - - get( maDlgBtn, "specialchardlg"); - for(int i = 0; i < 16; i++) { - m_pRecentCharView[i]->SetStyle(m_pRecentCharView[i]->GetStyle() | WB_GROUP); - m_pRecentCharView[i]->setMouseClickHdl(LINK(this,SfxCharmapCtrl, CharClickHdl)); - m_pRecentCharView[i]->SetGetFocusHdl(LINK(this,SfxCharmapCtrl, FocusHdl)); - m_pRecentCharView[i]->SetLoseFocusHdl(LINK(this,SfxCharmapCtrl, FocusHdl)); - m_pFavCharView[i]->SetStyle(m_pFavCharView[i]->GetStyle() | WB_GROUP); - m_pFavCharView[i]->setMouseClickHdl(LINK(this,SfxCharmapCtrl, CharClickHdl)); - m_pFavCharView[i]->SetGetFocusHdl(LINK(this,SfxCharmapCtrl, FocusHdl)); - m_pFavCharView[i]->SetLoseFocusHdl(LINK(this,SfxCharmapCtrl, FocusHdl)); + m_aRecentCharView[i].setMouseClickHdl(LINK(this,SfxCharmapCtrl, CharClickHdl)); + m_aFavCharView[i].setMouseClickHdl(LINK(this,SfxCharmapCtrl, CharClickHdl)); } - maDlgBtn->SetClickHdl(LINK(this, SfxCharmapCtrl, OpenDlgHdl)); + m_xDlgBtn->connect_clicked(LINK(this, SfxCharmapCtrl, OpenDlgHdl)); getRecentCharacterList(); updateRecentCharControl(); @@ -87,130 +112,90 @@ SfxCharmapCtrl::SfxCharmapCtrl(CharmapPopup* pControl, vcl::Window* pParent) SfxCharmapCtrl::~SfxCharmapCtrl() { - disposeOnce(); -} - -void SfxCharmapCtrl::dispose() -{ - for(int i = 0; i < 16; i++) - m_pRecentCharView[i].clear(); - - maRecentCharList.clear(); - maRecentCharFontList.clear(); - maDlgBtn.clear(); - - ToolbarPopup::dispose(); } void SfxCharmapCtrl::getFavCharacterList() { //retrieve recent character list css::uno::Sequence< OUString > rFavCharList( officecfg::Office::Common::FavoriteCharacters::FavoriteCharacterList::get() ); - std::copy(rFavCharList.begin(), rFavCharList.end(), std::back_inserter(maFavCharList)); + std::copy(rFavCharList.begin(), rFavCharList.end(), std::back_inserter(m_aFavCharList)); //retrieve recent character font list css::uno::Sequence< OUString > rFavCharFontList( officecfg::Office::Common::FavoriteCharacters::FavoriteCharacterFontList::get() ); - std::copy(rFavCharFontList.begin(), rFavCharFontList.end(), std::back_inserter(maFavCharFontList)); + std::copy(rFavCharFontList.begin(), rFavCharFontList.end(), std::back_inserter(m_aFavCharFontList)); } void SfxCharmapCtrl::updateFavCharControl() { int i = 0; - for ( std::deque< OUString >::iterator it = maFavCharList.begin(), it2 = maFavCharFontList.begin(); - it != maFavCharList.end() || it2 != maFavCharFontList.end(); + for ( std::deque< OUString >::iterator it = m_aFavCharList.begin(), it2 = m_aFavCharFontList.begin(); + it != m_aFavCharList.end() || it2 != m_aFavCharFontList.end(); ++it, ++it2, i++) { - m_pFavCharView[i]->SetText(*it); - vcl::Font rFont = m_pFavCharView[i]->GetControlFont(); + m_aFavCharView[i].SetText(*it); + vcl::Font rFont = m_aFavCharView[i].GetFont(); rFont.SetFamilyName( *it2 ); - m_pFavCharView[i]->SetFont(rFont); - m_pFavCharView[i]->Show(); + m_aFavCharView[i].SetFont(rFont); + m_aFavCharView[i].Show(); } for(; i < 16 ; i++) { - m_pFavCharView[i]->SetText(OUString()); - m_pFavCharView[i]->Hide(); + m_aFavCharView[i].SetText(OUString()); + m_aFavCharView[i].Hide(); } } - void SfxCharmapCtrl::getRecentCharacterList() { //retrieve recent character list css::uno::Sequence< OUString > rRecentCharList( officecfg::Office::Common::RecentCharacters::RecentCharacterList::get() ); - std::copy(rRecentCharList.begin(), rRecentCharList.end(), std::back_inserter(maRecentCharList)); + std::copy(rRecentCharList.begin(), rRecentCharList.end(), std::back_inserter(m_aRecentCharList)); //retrieve recent character font list css::uno::Sequence< OUString > rRecentCharFontList( officecfg::Office::Common::RecentCharacters::RecentCharacterFontList::get() ); - std::copy(rRecentCharFontList.begin(), rRecentCharFontList.end(), std::back_inserter(maRecentCharFontList)); + std::copy(rRecentCharFontList.begin(), rRecentCharFontList.end(), std::back_inserter(m_aRecentCharFontList)); } - void SfxCharmapCtrl::updateRecentCharControl() { int i = 0; - for ( std::deque< OUString >::iterator it = maRecentCharList.begin(), it2 = maRecentCharFontList.begin(); - it != maRecentCharList.end() || it2 != maRecentCharFontList.end(); + for ( std::deque< OUString >::iterator it = m_aRecentCharList.begin(), it2 = m_aRecentCharFontList.begin(); + it != m_aRecentCharList.end() || it2 != m_aRecentCharFontList.end(); ++it, ++it2, i++) { - m_pRecentCharView[i]->SetText(*it); - vcl::Font rFont = m_pRecentCharView[i]->GetControlFont(); + m_aRecentCharView[i].SetText(*it); + vcl::Font rFont = m_aRecentCharView[i].GetFont(); rFont.SetFamilyName( *it2 ); - m_pRecentCharView[i]->SetFont(rFont); - m_pRecentCharView[i]->Show(); + m_aRecentCharView[i].SetFont(rFont); + m_aRecentCharView[i].Show(); } for(; i < 16 ; i++) { - m_pRecentCharView[i]->SetText(OUString()); - m_pRecentCharView[i]->Hide(); - } -} - - -bool SfxCharmapCtrl::EventNotify( NotifyEvent& rNEvt ) -{ - if ( maDlgBtn->HasFocus() && rNEvt.GetType() == MouseNotifyEvent::KEYINPUT ) - { - const vcl::KeyCode& rKey = rNEvt.GetKeyEvent()->GetKeyCode(); - const sal_uInt16 nCode = rKey.GetCode(); - if ( nCode != KEY_TAB && nCode != KEY_RETURN && nCode != KEY_SPACE && nCode != KEY_ESCAPE ) - { - return true; - } - if ( mbNeedsInit && nCode == KEY_TAB ) - { - for(int i = 0; i < 16; i++) - { - m_pRecentCharView[i]->set_property( "can-focus", "true" ); - m_pFavCharView[i]->set_property( "can-focus", "true" ); - } - mbNeedsInit = false; - } + m_aRecentCharView[i].SetText(OUString()); + m_aRecentCharView[i].Hide(); } - return ToolbarPopup::EventNotify( rNEvt ); } - -IMPL_STATIC_LINK(SfxCharmapCtrl, FocusHdl, Control&, pItem, void) +IMPL_LINK(SfxCharmapCtrl, CharClickHdl, SvxCharView*, pView, void) { - pItem.Invalidate(); -} + m_xControl->EndPopupMode(); - -IMPL_LINK(SfxCharmapCtrl, CharClickHdl, SvxCharViewControl*, rView, void) -{ - rView->InsertCharToDoc(); - Close(); + pView->InsertCharToDoc(); } -IMPL_LINK_NOARG(SfxCharmapCtrl, OpenDlgHdl, Button*, void) +IMPL_LINK_NOARG(SfxCharmapCtrl, OpenDlgHdl, weld::Button&, void) { - Close(); + m_xControl->EndPopupMode(); uno::Reference<frame::XFrame> xFrame = SfxViewFrame::Current()->GetFrame().GetFrameInterface(); comphelper::dispatchCommand(".uno:InsertSymbol", xFrame, {}); } +void SfxCharmapCtrl::GrabFocus() +{ + m_aFavCharView[0].GrabFocus(); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sfx2/source/dialog/charmappopup.cxx b/sfx2/source/dialog/charmappopup.cxx index 330012c176b9..661f7ffb976e 100644 --- a/sfx2/source/dialog/charmappopup.cxx +++ b/sfx2/source/dialog/charmappopup.cxx @@ -19,6 +19,7 @@ #include <sfx2/charmappopup.hxx> #include <sfx2/charmapcontrol.hxx> #include <vcl/toolbox.hxx> +#include <vcl/weld.hxx> CharmapPopup::CharmapPopup(const css::uno::Reference<css::uno::XComponentContext>& rContext) : PopupWindowController(rContext, nullptr, OUString()) @@ -39,9 +40,19 @@ void CharmapPopup::initialize( const css::uno::Sequence< css::uno::Any >& rArgum pToolBox->SetItemBits(nId, ToolBoxItemBits::DROPDOWNONLY | pToolBox->GetItemBits(nId)); } -VclPtr<vcl::Window> CharmapPopup::createPopupWindow(vcl::Window* pParent) +std::unique_ptr<WeldToolbarPopup> CharmapPopup::weldPopupWindow() { - return VclPtr<SfxCharmapCtrl>::Create(this, pParent); + return std::make_unique<SfxCharmapCtrl>(this, m_pToolbar); +} + +VclPtr<vcl::Window> CharmapPopup::createPopupWindow( vcl::Window* pParent ) +{ + mxInterimPopover = VclPtr<InterimToolbarPopup>::Create(getFrameInterface(), pParent, + std::make_unique<SfxCharmapCtrl>(this, pParent->GetFrameWeld())); + + mxInterimPopover->Show(); + + return mxInterimPopover; } OUString CharmapPopup::getImplementationName() diff --git a/sfx2/uiconfig/ui/charmapcontrol.ui b/sfx2/uiconfig/ui/charmapcontrol.ui index 9ffe5841a6a8..20b37841a8c5 100644 --- a/sfx2/uiconfig/ui/charmapcontrol.ui +++ b/sfx2/uiconfig/ui/charmapcontrol.ui @@ -1,22 +1,15 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Generated with glade 3.18.3 --> +<!-- Generated with glade 3.22.1 --> <interface domain="sfx"> <requires lib="gtk+" version="3.18"/> - <object class="GtkWindow" id="charmapctrl"> + <object class="GtkPopover" id="charmapctrl"> <property name="can_focus">False</property> - <property name="resizable">False</property> - <property name="destroy_with_parent">True</property> - <property name="type_hint">popup-menu</property> - <property name="skip_pager_hint">True</property> - <property name="deletable">False</property> + <property name="no_show_all">True</property> + <property name="border_width">4</property> <child> - <object class="GtkBox" id="box1"> + <object class="GtkBox" id="container"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="margin_left">3</property> - <property name="margin_right">3</property> - <property name="margin_top">3</property> - <property name="margin_bottom">3</property> <property name="resize_mode">queue</property> <property name="orientation">vertical</property> <property name="spacing">6</property> @@ -36,12 +29,14 @@ <object class="GtkGrid" id="grid1"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="halign">start</property> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar1"> + <object class="GtkDrawingArea" id="favchar1"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">0</property> @@ -49,11 +44,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar2"> + <object class="GtkDrawingArea" id="favchar2"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">1</property> @@ -61,11 +57,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar4"> + <object class="GtkDrawingArea" id="favchar4"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">3</property> @@ -73,11 +70,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar3"> + <object class="GtkDrawingArea" id="favchar3"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">2</property> @@ -85,11 +83,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar5"> + <object class="GtkDrawingArea" id="favchar5"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">4</property> @@ -97,11 +96,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar6"> + <object class="GtkDrawingArea" id="favchar6"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">5</property> @@ -109,11 +109,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar7"> + <object class="GtkDrawingArea" id="favchar7"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">0</property> @@ -121,11 +122,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar8"> + <object class="GtkDrawingArea" id="favchar8"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">1</property> @@ -133,11 +135,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar9"> + <object class="GtkDrawingArea" id="favchar9"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">2</property> @@ -145,11 +148,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar10"> + <object class="GtkDrawingArea" id="favchar10"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">3</property> @@ -157,11 +161,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar11"> + <object class="GtkDrawingArea" id="favchar11"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">4</property> @@ -169,11 +174,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar12"> + <object class="GtkDrawingArea" id="favchar12"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">5</property> @@ -181,11 +187,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar13"> + <object class="GtkDrawingArea" id="favchar13"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">0</property> @@ -193,11 +200,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar14"> + <object class="GtkDrawingArea" id="favchar14"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">1</property> @@ -205,11 +213,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar15"> + <object class="GtkDrawingArea" id="favchar15"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">2</property> @@ -217,11 +226,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="favchar16"> + <object class="GtkDrawingArea" id="favchar16"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">3</property> @@ -257,13 +267,14 @@ <object class="GtkGrid" id="grid2"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="row_homogeneous">True</property> + <property name="halign">start</property> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar1"> + <object class="GtkDrawingArea" id="viewchar1"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">0</property> @@ -271,11 +282,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar2"> + <object class="GtkDrawingArea" id="viewchar2"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">1</property> @@ -283,11 +295,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar4"> + <object class="GtkDrawingArea" id="viewchar4"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">3</property> @@ -295,11 +308,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar3"> + <object class="GtkDrawingArea" id="viewchar3"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">2</property> @@ -307,11 +321,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar5"> + <object class="GtkDrawingArea" id="viewchar5"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">4</property> @@ -319,11 +334,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar6"> + <object class="GtkDrawingArea" id="viewchar6"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">5</property> @@ -331,11 +347,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar16"> + <object class="GtkDrawingArea" id="viewchar16"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">3</property> @@ -343,11 +360,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar15"> + <object class="GtkDrawingArea" id="viewchar15"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">2</property> @@ -355,11 +373,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar14"> + <object class="GtkDrawingArea" id="viewchar14"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">1</property> @@ -367,11 +386,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar13"> + <object class="GtkDrawingArea" id="viewchar13"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">0</property> @@ -379,11 +399,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar12"> + <object class="GtkDrawingArea" id="viewchar12"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">5</property> @@ -391,11 +412,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar11"> + <object class="GtkDrawingArea" id="viewchar11"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">4</property> @@ -403,11 +425,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar10"> + <object class="GtkDrawingArea" id="viewchar10"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">3</property> @@ -415,11 +438,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar9"> + <object class="GtkDrawingArea" id="viewchar9"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">2</property> @@ -427,11 +451,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar8"> + <object class="GtkDrawingArea" id="viewchar8"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">1</property> @@ -439,11 +464,12 @@ </packing> </child> <child> - <object class="sfxlo-SvxCharViewControl" id="viewchar7"> + <object class="GtkDrawingArea" id="viewchar7"> <property name="width_request">35</property> <property name="height_request">35</property> <property name="visible">True</property> - <property name="can_focus">False</property> + <property name="can_focus">True</property> + <property name="events">GDK_BUTTON_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_STRUCTURE_MASK</property> </object> <packing> <property name="left_attach">0</property> diff --git a/solenv/sanitizers/ui/sfx.suppr b/solenv/sanitizers/ui/sfx.suppr index 6d6d9511a493..1b74b6d706b4 100644 --- a/solenv/sanitizers/ui/sfx.suppr +++ b/solenv/sanitizers/ui/sfx.suppr @@ -1,38 +1,6 @@ sfx2/uiconfig/ui/bookmarkdialog.ui://GtkLabel[@id='alttitle'] orphan-label sfx2/uiconfig/ui/charmapcontrol.ui://GtkLabel[@id='label1'] orphan-label -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar1'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar2'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar4'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar3'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar5'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar6'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar7'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar8'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar9'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar10'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar11'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar12'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar13'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar14'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar15'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='favchar16'] no-labelled-by sfx2/uiconfig/ui/charmapcontrol.ui://GtkLabel[@id='label2'] orphan-label -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar1'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar2'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar4'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar3'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar5'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar6'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar16'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar15'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar14'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar13'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar12'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar11'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar10'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar9'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar8'] no-labelled-by -sfx2/uiconfig/ui/charmapcontrol.ui://sfxlo-SvxCharViewControl[@id='viewchar7'] no-labelled-by sfx2/uiconfig/ui/checkin.ui://GtkLabel[@id='label2'] orphan-label sfx2/uiconfig/ui/checkin.ui://GtkTextView[@id='VersionComment'] no-labelled-by sfx2/uiconfig/ui/cmisline.ui://GtkLabel[@id='name'] orphan-label |