[Libreoffice-commits] core.git: sc/source
Szymon KÅos (via logerrit)
logerrit at kemper.freedesktop.org
Thu Nov 26 11:14:13 UTC 2020
sc/source/ui/cctrl/checklistmenu.cxx | 5 ++++-
sc/source/ui/inc/checklistmenu.hxx | 3 ++-
sc/source/ui/view/gridwin.cxx | 9 ++++++---
3 files changed, 12 insertions(+), 5 deletions(-)
New commits:
commit 1106126f708945a605de6654eae6afb4416b8b90
Author: Szymon Kłos <szymon.klos at collabora.com>
AuthorDate: Fri Nov 13 12:30:51 2020 +0100
Commit: Szymon Kłos <szymon.klos at collabora.com>
CommitDate: Thu Nov 26 12:13:17 2020 +0100
autofilter: make working with multiple users in online
Change-Id: Ib0255178112fae5d964cd6155d42848e7c7c51e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106660
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos at collabora.com>
diff --git a/sc/source/ui/cctrl/checklistmenu.cxx b/sc/source/ui/cctrl/checklistmenu.cxx
index f6834aaff790..3c3b1752d5d8 100644
--- a/sc/source/ui/cctrl/checklistmenu.cxx
+++ b/sc/source/ui/cctrl/checklistmenu.cxx
@@ -554,11 +554,14 @@ ScCheckListMenuControl::~ScCheckListMenuControl()
}
ScCheckListMenuWindow::ScCheckListMenuWindow(vcl::Window* pParent, ScDocument* pDoc, bool bCanHaveSubMenu,
- bool bTreeMode, int nWidth, ScCheckListMenuWindow* pParentMenu)
+ bool bTreeMode, int nWidth, ScCheckListMenuWindow* pParentMenu,
+ vcl::ILibreOfficeKitNotifier* pNotifier)
: DockingWindow(pParent, "InterimDockParent", "svx/ui/interimdockparent.ui")
, mxParentMenu(pParentMenu)
, mxBox(get("box"))
{
+ if (pNotifier)
+ SetLOKNotifier(pNotifier);
setDeferredProperties();
mxControl.reset(new ScCheckListMenuControl(this, mxBox.get(), pDoc, bCanHaveSubMenu, bTreeMode, nWidth));
SetBackground(Application::GetSettings().GetStyleSettings().GetMenuColor());
diff --git a/sc/source/ui/inc/checklistmenu.hxx b/sc/source/ui/inc/checklistmenu.hxx
index b4f7c9c2a8b4..247ff1c55c42 100644
--- a/sc/source/ui/inc/checklistmenu.hxx
+++ b/sc/source/ui/inc/checklistmenu.hxx
@@ -304,7 +304,8 @@ class ScCheckListMenuWindow : public DockingWindow
public:
explicit ScCheckListMenuWindow(vcl::Window* pParent, ScDocument* pDoc,
bool bCanHaveSubMenu, bool bTreeMode, int nWidth = -1,
- ScCheckListMenuWindow* pParentMenu = nullptr);
+ ScCheckListMenuWindow* pParentMenu = nullptr,
+ vcl::ILibreOfficeKitNotifier* pNotifier = nullptr);
virtual void dispose() override;
virtual ~ScCheckListMenuWindow() override;
diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx
index e817730ed97e..546d9cb9d8ac 100644
--- a/sc/source/ui/view/gridwin.cxx
+++ b/sc/source/ui/view/gridwin.cxx
@@ -607,9 +607,14 @@ void ScGridWindow::LaunchAutoFilterMenu(SCCOL nCol, SCROW nRow)
ScFilterEntries aFilterEntries;
rDoc.GetFilterEntries(nCol, nRow, nTab, aFilterEntries);
+ vcl::ILibreOfficeKitNotifier* pNotifier = nullptr;
+ if (bLOKActive)
+ pNotifier = SfxViewShell::Current();
+
int nColWidth = ScViewData::ToPixel(rDoc.GetColWidth(nCol, nTab), mrViewData.GetPPTX());
mpAutoFilterPopup.reset(VclPtr<ScCheckListMenuWindow>::Create(this, &rDoc, false,
- aFilterEntries.mbHasDates, nColWidth));
+ aFilterEntries.mbHasDates, nColWidth,
+ nullptr, pNotifier));
ScCheckListMenuControl& rControl = mpAutoFilterPopup->get_widget();
int nMaxTextWidth = 0;
@@ -645,8 +650,6 @@ void ScGridWindow::LaunchAutoFilterMenu(SCCOL nCol, SCROW nRow)
nWindowWidth = rControl.IncreaseWindowWidthToFitText(nWindowWidth);
nMaxTextWidth = std::max<int>(nMaxTextWidth, nWindowWidth - 70);
- if (bLOKActive)
- mpAutoFilterPopup->SetLOKNotifier(SfxViewShell::Current());
rControl.setOKAction(new AutoFilterAction(this, AutoFilterMode::Normal));
rControl.setPopupEndAction(
new AutoFilterPopupEndAction(this, ScAddress(nCol, nRow, nTab)));
More information about the Libreoffice-commits
mailing list