[Libreoffice-commits] core.git: Branch 'libreoffice-6-3' - 2 commits - sc/source
Caolán McNamara (via logerrit)
logerrit at kemper.freedesktop.org
Wed Nov 20 11:08:58 UTC 2019
sc/source/ui/view/gridwin.cxx | 9 +++++++++
1 file changed, 9 insertions(+)
New commits:
commit 7afb8a874aa71c8cf2fcba930ac6d5680070f18a
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Mon Nov 18 21:28:22 2019 +0000
Commit: Xisco Faulí <xiscofauli at libreoffice.org>
CommitDate: Wed Nov 20 12:08:13 2019 +0100
tdf#125917 Ensure mouse is captured before the menu is launched
calc seems to excessively capture the mouse and grabs + floats are messy across
the different ports. But We usually have the mouse captured before calling the
menu, except if we are editing a cell, an additional capture here will ensure
the grab status is the same in both modes and that events go to the same place
in either case.
Change-Id: I213560273be1a6a398d6a1787a53d64501c473f0
Reviewed-on: https://gerrit.libreoffice.org/83166
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli at libreoffice.org>
diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx
index 3e13352820af..f26f3c77e1cc 100644
--- a/sc/source/ui/view/gridwin.cxx
+++ b/sc/source/ui/view/gridwin.cxx
@@ -1774,6 +1774,10 @@ void ScGridWindow::HandleMouseButtonDown( const MouseEvent& rMEvt, MouseEventSta
tools::Rectangle aButtonRect = GetListValButtonRect( aListValPos );
if ( aButtonRect.IsInside( aPos ) )
{
+ // tdf#125917 typically we have the mouse captured already, except if are editing the cell.
+ // Ensure its captured before the menu is launched even in the cell editing case
+ CaptureMouse();
+
LaunchDataSelectMenu( aListValPos.Col(), aListValPos.Row() );
nMouseStatus = SC_GM_FILTER; // not set in DoAutoFilterMenue for bDataSelect
commit 3244ea03fa7e84d218a4182afb8a78a50c6479a1
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Mon Nov 18 12:28:01 2019 +0000
Commit: Xisco Faulí <xiscofauli at libreoffice.org>
CommitDate: Wed Nov 20 12:07:59 2019 +0100
Related: tdf#125917 remove active editing when we want to replace contents
this addresses comment #6 so that the chosen value is entered in the cell
Change-Id: I3b45301e00b2f79038e88c926f15babd49dcc2bf
Reviewed-on: https://gerrit.libreoffice.org/83168
Tested-by: Jenkins
Reviewed-by: Xisco Faulí <xiscofauli at libreoffice.org>
diff --git a/sc/source/ui/view/gridwin.cxx b/sc/source/ui/view/gridwin.cxx
index e2b1815141ec..3e13352820af 100644
--- a/sc/source/ui/view/gridwin.cxx
+++ b/sc/source/ui/view/gridwin.cxx
@@ -1248,6 +1248,11 @@ void ScGridWindow::FilterSelect( sal_uLong nSel )
void ScGridWindow::ExecDataSelect( SCCOL nCol, SCROW nRow, const OUString& rStr )
{
+ ScModule* pScMod = SC_MOD();
+ ScInputHandler* pViewHdl = pScMod->GetInputHdl(pViewData->GetViewShell());
+ if (pViewHdl && pViewData->HasEditView(pViewData->GetActivePart()))
+ pViewHdl->CancelHandler();
+
SCTAB nTab = pViewData->GetTabNo();
ScViewFunc* pView = pViewData->GetView();
pView->EnterData( nCol, nRow, nTab, rStr );
More information about the Libreoffice-commits
mailing list