diff options
author | Tünde Tóth <toth.tunde@nisz.hu> | 2021-05-11 11:21:35 +0200 |
---|---|---|
committer | László Németh <nemeth@numbertext.org> | 2021-05-20 18:08:31 +0200 |
commit | a2c4a033d49c23d20761b2881135ec3a72f25b01 (patch) | |
tree | 83eb059fb3d1e76a924edc2d0c67e54d035940c7 | |
parent | f7aca9ed4533f202e87141ca7a65d9949a36c9a1 (diff) |
tdf#57351 sc UI: fix disabled Insert Columns options
In a sheet with active autofilter or standard filter,
Insert Columns Before/After weren't available in the
context menu of the column header and in Sheet->Insert
Columns...
Change-Id: I746d7d5a451848306d67d57e42d3981c471c66f2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115400
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
-rw-r--r-- | sc/source/ui/view/cellsh.cxx | 3 | ||||
-rw-r--r-- | sc/source/ui/view/viewfunc.cxx | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/sc/source/ui/view/cellsh.cxx b/sc/source/ui/view/cellsh.cxx index 256cab898a35..9bf5286c8d7c 100644 --- a/sc/source/ui/view/cellsh.cxx +++ b/sc/source/ui/view/cellsh.cxx @@ -256,7 +256,8 @@ void ScCellShell::GetBlockState( SfxItemSet& rSet ) if (nWhich == FID_INS_COLUMNS_AFTER) eAction = sc::ColRowEditAction::InsertColumnsAfter; - bDisable = (!bSimpleArea) || GetViewData().SimpleRowMarked(); + bDisable = (!bSimpleArea && eMarkType != SC_MARK_SIMPLE_FILTERED) + || GetViewData().SimpleRowMarked(); if (!bEditable && nRow1 == 0 && nRow2 == rDoc.MaxRow()) { // See if row insertions are allowed. diff --git a/sc/source/ui/view/viewfunc.cxx b/sc/source/ui/view/viewfunc.cxx index 73363238a85a..a4c5c6db55a7 100644 --- a/sc/source/ui/view/viewfunc.cxx +++ b/sc/source/ui/view/viewfunc.cxx @@ -1599,7 +1599,8 @@ void ScViewFunc::OnLOKSetWidthOrHeight(SCCOLROW nStart, bool bWidth) bool ScViewFunc::InsertCells( InsCellCmd eCmd, bool bRecord, bool bPartOfPaste ) { ScRange aRange; - if (GetViewData().GetSimpleArea(aRange) == SC_MARK_SIMPLE) + ScMarkType eMarkType = GetViewData().GetSimpleArea(aRange); + if (eMarkType == SC_MARK_SIMPLE || eMarkType == SC_MARK_SIMPLE_FILTERED) { ScDocShell* pDocSh = GetViewData().GetDocShell(); const ScMarkData& rMark = GetViewData().GetMarkData(); |