parent
aa370e7c08
commit
040030436a
@ -1,37 +0,0 @@
|
|||||||
From b101ff56e874824fa9f0d37a8468b07dbf3d002c Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
||||||
Date: Tue, 16 Aug 2016 11:54:38 +0100
|
|
||||||
Subject: [PATCH] Resolves: tdf#101165 crash on deselecting all filters
|
|
||||||
|
|
||||||
this affects 5-1, but not master because of
|
|
||||||
|
|
||||||
7967e5e51e5210b8c3d3dc63502bd7d875eb36b7 which changed
|
|
||||||
the trigger in ScCheckListMenuWindow::setAllMemberState
|
|
||||||
but lets fix it in master anyway in case there's another
|
|
||||||
route in here
|
|
||||||
|
|
||||||
Change-Id: I49162bb73bf6dbef5cff68d35d10da2c47d9f2b5
|
|
||||||
---
|
|
||||||
sc/source/ui/cctrl/checklistmenu.cxx | 5 ++++-
|
|
||||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/sc/source/ui/cctrl/checklistmenu.cxx b/sc/source/ui/cctrl/checklistmenu.cxx
|
|
||||||
index 93f9aef..a017cda 100644
|
|
||||||
--- a/sc/source/ui/cctrl/checklistmenu.cxx
|
|
||||||
+++ b/sc/source/ui/cctrl/checklistmenu.cxx
|
|
||||||
@@ -1714,8 +1714,11 @@ SvTreeListEntry* ScCheckListBox::ShowCheckEntry( const OUString& sName, ScCheckL
|
|
||||||
{
|
|
||||||
if ( !pEntry )
|
|
||||||
{
|
|
||||||
- if ( rMember.mbDate )
|
|
||||||
+ if (rMember.mbDate)
|
|
||||||
{
|
|
||||||
+ if (rMember.maDateParts.empty())
|
|
||||||
+ return nullptr;
|
|
||||||
+
|
|
||||||
SvTreeListEntry* pYearEntry = FindEntry( nullptr, rMember.maDateParts[0] );
|
|
||||||
if ( !pYearEntry )
|
|
||||||
pYearEntry = InsertEntry( rMember.maDateParts[0], nullptr, true );
|
|
||||||
--
|
|
||||||
2.7.4
|
|
||||||
|
|
@ -1,48 +0,0 @@
|
|||||||
From e527edf06f8befb45b76ee8ebabe62e6dc885e45 Mon Sep 17 00:00:00 2001
|
|
||||||
From: rpmbuild <rpmbuild@fedoraproject.org>
|
|
||||||
Date: Mon, 15 Aug 2016 15:17:11 +0100
|
|
||||||
Subject: [PATCH] Resolves: tdf#91533 (rhbz#1364335) Tooltips are truncated
|
|
||||||
|
|
||||||
Change-Id: Id9ec91ed9652f491e4e2a0556eeed27bf6517002
|
|
||||||
---
|
|
||||||
vcl/inc/helpwin.hxx | 1 +
|
|
||||||
vcl/source/app/help.cxx | 11 +++++++++++
|
|
||||||
2 files changed, 12 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/vcl/inc/helpwin.hxx b/vcl/inc/helpwin.hxx
|
|
||||||
index e7cc81a..3864575 100644
|
|
||||||
--- a/vcl/inc/helpwin.hxx
|
|
||||||
+++ b/vcl/inc/helpwin.hxx
|
|
||||||
@@ -47,6 +47,7 @@ private:
|
|
||||||
virtual void Paint(vcl::RenderContext& rRenderContext, const Rectangle&) override;
|
|
||||||
virtual void RequestHelp( const HelpEvent& rHEvt ) override;
|
|
||||||
virtual void ApplySettings(vcl::RenderContext& rRenderContext) override;
|
|
||||||
+ virtual void StateChanged(StateChangedType nType) override;
|
|
||||||
|
|
||||||
virtual OUString GetText() const override;
|
|
||||||
void ImplShow();
|
|
||||||
diff --git a/vcl/source/app/help.cxx b/vcl/source/app/help.cxx
|
|
||||||
index 28bc632..7a8bbc8 100644
|
|
||||||
--- a/vcl/source/app/help.cxx
|
|
||||||
+++ b/vcl/source/app/help.cxx
|
|
||||||
@@ -277,6 +277,17 @@ HelpTextWindow::HelpTextWindow( vcl::Window* pParent, const OUString& rText, sal
|
|
||||||
maHideTimer.SetTimeout( rHelpSettings.GetTipTimeout() );
|
|
||||||
}
|
|
||||||
|
|
||||||
+void HelpTextWindow::StateChanged(StateChangedType nType)
|
|
||||||
+{
|
|
||||||
+ FloatingWindow::StateChanged(nType);
|
|
||||||
+ if (nType == StateChangedType::InitShow)
|
|
||||||
+ {
|
|
||||||
+ ApplySettings(*this);
|
|
||||||
+ SetHelpText(maHelpText);
|
|
||||||
+ Invalidate();
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
void HelpTextWindow::ApplySettings(vcl::RenderContext& rRenderContext)
|
|
||||||
{
|
|
||||||
const StyleSettings& rStyleSettings = rRenderContext.GetSettings().GetStyleSettings();
|
|
||||||
--
|
|
||||||
2.7.4
|
|
||||||
|
|
@ -1,132 +0,0 @@
|
|||||||
From 84ffcd0df7dbf9ddfbb3f9f165b172ab5271466d Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
||||||
Date: Thu, 11 Aug 2016 14:47:56 +0100
|
|
||||||
Subject: [PATCH] gtk3: style combobox never becomes sensitive if it starts
|
|
||||||
insensitive
|
|
||||||
|
|
||||||
Place cursor inside a protected section in writer, e.g. a table of contents.
|
|
||||||
Save, and reload. The cursor starts inside the protected section.
|
|
||||||
|
|
||||||
With the native gtk3 menubar the styles dropdown in the top left is
|
|
||||||
grayed out. Moving the cursor outside the protected area does not
|
|
||||||
make it active again.
|
|
||||||
|
|
||||||
Under gen it works fine.
|
|
||||||
|
|
||||||
*Extensive* debugging shows that there is a cache based on the numeric
|
|
||||||
slots of commands to their dispatcher, e.g. SfxBindings::GetStateCache
|
|
||||||
so if you SfxBindings::QueryState for a given uno command then it will
|
|
||||||
look up what dispatcher to listen to by slot id.
|
|
||||||
|
|
||||||
This StyleApply command appears in a number of places in LibreOffice,
|
|
||||||
the toolbar as .uno:StyleApply, *but* .uno:StyleApply?A_Bunch_Of_Args
|
|
||||||
elsewhere in the menus.
|
|
||||||
|
|
||||||
In the gtk3 plugin it so happens that all the menu items are parsed
|
|
||||||
and listeners set before the toolbar is created. While in the gen
|
|
||||||
plugin the toolbar is created, and the menus are on-demand later.
|
|
||||||
|
|
||||||
So under gen the dispatcher is created for ".uno:StyleApply" and
|
|
||||||
other .uno:StyleApply?* go through that one. Under gtk3 the dispatcher
|
|
||||||
is created for ".uno:StyleApply?A_Bunch_Of_Args".
|
|
||||||
|
|
||||||
So, when SfxDispatchController_Impl::StateChanged is called, the
|
|
||||||
aDispatchURL.Complete argument is ".uno:StyleApply?A_Bunch_Of_Args", but,
|
|
||||||
because it was supplied as a cached result from the shared slot, some
|
|
||||||
listeners have been added that want to listen to ".uno:StyleApply".
|
|
||||||
The name doesn't match, so looking up the listeners listening to the
|
|
||||||
command with argument finds nothing, so those listeners on the name
|
|
||||||
without argument are not fired.
|
|
||||||
|
|
||||||
Here I look up all the property names that the listeners were added to listen
|
|
||||||
to (1 in all cases I've seen in casual testing) and if either the name with
|
|
||||||
full args or no args matches then inform that listener that something has
|
|
||||||
changed.
|
|
||||||
|
|
||||||
Change-Id: Ib5858ccb16dce41e249ee911751053fd277551b8
|
|
||||||
(cherry picked from commit d9bf3df8143779f0caea2094efa4891370038977)
|
|
||||||
|
|
||||||
factor this status change code out
|
|
||||||
|
|
||||||
no logic change intended
|
|
||||||
|
|
||||||
Change-Id: I74e58f61fdb5d9684384dac5ba9803fc2d411ca7
|
|
||||||
(cherry picked from commit f2a60c783a8099f07b05f25301833f405c161d59)
|
|
||||||
---
|
|
||||||
include/sfx2/unoctitm.hxx | 2 ++
|
|
||||||
sfx2/source/control/unoctitm.cxx | 39 +++++++++++++++++++++++++--------------
|
|
||||||
2 files changed, 27 insertions(+), 14 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/include/sfx2/unoctitm.hxx b/include/sfx2/unoctitm.hxx
|
|
||||||
index 8d58738..423c629 100644
|
|
||||||
--- a/include/sfx2/unoctitm.hxx
|
|
||||||
+++ b/include/sfx2/unoctitm.hxx
|
|
||||||
@@ -126,6 +126,8 @@ class SfxDispatchController_Impl : public SfxControllerItem
|
|
||||||
css::uno::Sequence< css::beans::PropertyValue >& rArgs );
|
|
||||||
static SfxMapUnit GetCoreMetric( SfxItemPool& rPool, sal_uInt16 nSlot );
|
|
||||||
|
|
||||||
+ void sendStatusChanged(const OUString& rURL, const css::frame::FeatureStateEvent& rEvent);
|
|
||||||
+
|
|
||||||
public:
|
|
||||||
SfxDispatchController_Impl( SfxOfficeDispatch* pDisp,
|
|
||||||
SfxBindings* pBind,
|
|
||||||
diff --git a/sfx2/source/control/unoctitm.cxx b/sfx2/source/control/unoctitm.cxx
|
|
||||||
index a2eaff9..7ed25a4 100644
|
|
||||||
--- a/sfx2/source/control/unoctitm.cxx
|
|
||||||
+++ b/sfx2/source/control/unoctitm.cxx
|
|
||||||
@@ -826,6 +826,25 @@ void SAL_CALL SfxDispatchController_Impl::addStatusListener(const css::uno::Refe
|
|
||||||
aListener->statusChanged( aEvent );
|
|
||||||
}
|
|
||||||
|
|
||||||
+void SfxDispatchController_Impl::sendStatusChanged(const OUString& rURL, const css::frame::FeatureStateEvent& rEvent)
|
|
||||||
+{
|
|
||||||
+ ::cppu::OInterfaceContainerHelper* pContnr = pDispatch->GetListeners().getContainer(rURL);
|
|
||||||
+ if (!pContnr)
|
|
||||||
+ return;
|
|
||||||
+ ::cppu::OInterfaceIteratorHelper aIt(*pContnr);
|
|
||||||
+ while (aIt.hasMoreElements())
|
|
||||||
+ {
|
|
||||||
+ try
|
|
||||||
+ {
|
|
||||||
+ static_cast<css::frame::XStatusListener*>(aIt.next())->statusChanged(rEvent);
|
|
||||||
+ }
|
|
||||||
+ catch (const css::uno::RuntimeException&)
|
|
||||||
+ {
|
|
||||||
+ aIt.remove();
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
void SfxDispatchController_Impl::StateChanged( sal_uInt16 nSID, SfxItemState eState, const SfxPoolItem* pState, SfxSlotServer* pSlotServ )
|
|
||||||
{
|
|
||||||
if ( !pDispatch )
|
|
||||||
@@ -904,20 +923,12 @@ void SfxDispatchController_Impl::StateChanged( sal_uInt16 nSID, SfxItemState eSt
|
|
||||||
pDispatcher->GetFrame()->GetObjectShell(), aEvent);
|
|
||||||
}
|
|
||||||
|
|
||||||
- ::cppu::OInterfaceContainerHelper* pContnr = pDispatch->GetListeners().getContainer ( aDispatchURL.Complete );
|
|
||||||
- if (pContnr) {
|
|
||||||
- ::cppu::OInterfaceIteratorHelper aIt( *pContnr );
|
|
||||||
- while( aIt.hasMoreElements() )
|
|
||||||
- {
|
|
||||||
- try
|
|
||||||
- {
|
|
||||||
- static_cast< css::frame::XStatusListener *>(aIt.next())->statusChanged( aEvent );
|
|
||||||
- }
|
|
||||||
- catch (const css::uno::RuntimeException&)
|
|
||||||
- {
|
|
||||||
- aIt.remove();
|
|
||||||
- }
|
|
||||||
- }
|
|
||||||
+ Sequence< OUString > seqNames = pDispatch->GetListeners().getContainedTypes();
|
|
||||||
+ sal_Int32 nLength = seqNames.getLength();
|
|
||||||
+ for (sal_Int32 i = 0; i < nLength; ++i)
|
|
||||||
+ {
|
|
||||||
+ if (seqNames[i] == aDispatchURL.Main || seqNames[i] == aDispatchURL.Complete)
|
|
||||||
+ sendStatusChanged(seqNames[i], aEvent);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
--
|
|
||||||
2.7.4
|
|
||||||
|
|
Loading…
Reference in new issue