summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Balland-Poirier <laurent.balland-poirier@laposte.net>2014-09-27 07:59:04 +0200
committerKohei Yoshida <kohei.yoshida@collabora.com>2014-09-30 09:59:10 -0400
commit50eac342603ca08d808f53dc9a32bb9d1dfba372 (patch)
tree1efb2d60ef4c77673db2f6b3fb44c7c0445c8d2c
parent3d468017ababdf4d2bb96c662373c96ec06c6c0c (diff)
fdo#53920 Switch back tab at RefButton closure time
Bug occurs because visible tab is not the initial tab. So, instead of switching back to initial tab at dialog closure time (removed from cellsh2.cxx), this commit proposes that switching back to initial tab is operate when expanding the RefButton shrink dialog. Reviewed-on: https://gerrit.libreoffice.org/11660 Reviewed-by: Kohei Yoshida <libreoffice@kohei.us> Tested-by: Kohei Yoshida <libreoffice@kohei.us> (cherry picked from commit 31432c4469e7e0d05516143533d6b5e0b411dda3) Change-Id: I3cf7ed14054fa69881d4ecbc55c48dfbfc4356aa
-rw-r--r--sc/source/ui/dbgui/validate.cxx12
-rw-r--r--sc/source/ui/view/cellsh2.cxx2
2 files changed, 11 insertions, 3 deletions
diff --git a/sc/source/ui/dbgui/validate.cxx b/sc/source/ui/dbgui/validate.cxx
index e858bdf35337..665ed3865ade 100644
--- a/sc/source/ui/dbgui/validate.cxx
+++ b/sc/source/ui/dbgui/validate.cxx
@@ -153,11 +153,21 @@ void ScTPValidationValue::RefInputDonePostHdl()
m_pBtnRef->SetParent( m_pRefGrid );
if ( ScValidationDlg *pValidationDlg = GetValidationDlg() )
+ {
pValidationDlg->get_refinput_shrink_parent()->Hide();
+ ScViewData* pViewData = pValidationDlg->GetTabViewShell()->GetViewData();
+ SCTAB nCurTab = pViewData->GetTabNo();
+ SCTAB nRefTab = pViewData->GetRefTabNo();
+ // If RefInput switched to a different sheet from the data sheet,
+ // switch back: fdo#53920
+ if ( nCurTab != nRefTab )
+ {
+ pViewData->GetViewShell()->SetTabNo( nRefTab );
+ }
+ }
if( m_pRefEdit && !m_pRefEdit->HasFocus() )
m_pRefEdit->GrabFocus();
-
}
bool ScValidationDlg::Close()
diff --git a/sc/source/ui/view/cellsh2.cxx b/sc/source/ui/view/cellsh2.cxx
index 52ad408ae387..9a0fc85345a9 100644
--- a/sc/source/ui/view/cellsh2.cxx
+++ b/sc/source/ui/view/cellsh2.cxx
@@ -847,8 +847,6 @@ void ScCellShell::ExecuteDB( SfxRequest& rReq )
assert(pDlg); //Dialog create fail!
short nResult = pDlg->Execute();
- //When picking Cell Range, other Tab may be switched. Need restore the correct tab
- pTabViewShell->SetTabNo( nTab );
if ( nResult == RET_OK )
{
const SfxItemSet* pOutSet = pDlg->GetOutputItemSet();