diff options
author | Tamás Zolnai <tamas.zolnai@collabora.com> | 2018-04-19 12:10:52 +0200 |
---|---|---|
committer | Tamás Zolnai <tamas.zolnai@collabora.com> | 2018-04-19 14:05:21 +0200 |
commit | 67919621cb0b95074c4401bdfced9d87b230cc2f (patch) | |
tree | b7364b38de39a3a260cbe956e8daba78fac3affd /sfx2/source/control/shell.cxx | |
parent | 4ec8afafea320f40806abc7bdc9149a9b26b3d4c (diff) |
sw lok: Accept / reject change is always enabled in the context menu
Use conditional fastcall for allow executing these two uno commands
even if there is no tracked changes at the cursor position instead of
enable the menu slots unconditionally.
See also:
b6011f07254f8003929320ad842d8d09daca0e09
Change-Id: Iaf8a8082961cd174c038fc021d2c41fb7cb97bff
Reviewed-on: https://gerrit.libreoffice.org/53148
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Diffstat (limited to 'sfx2/source/control/shell.cxx')
-rw-r--r-- | sfx2/source/control/shell.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/sfx2/source/control/shell.cxx b/sfx2/source/control/shell.cxx index 2f25891ce5e5..c89d162ebe9d 100644 --- a/sfx2/source/control/shell.cxx +++ b/sfx2/source/control/shell.cxx @@ -388,6 +388,21 @@ bool SfxShell::CanExecuteSlot_Impl( const SfxSlot &rSlot ) return aSet.GetItemState(nId) != SfxItemState::DISABLED; } +bool SfxShell::IsConditionalFastCall( const SfxRequest &rReq ) +{ + sal_uInt16 nId = rReq.GetSlot(); + bool bRet = false; + + if (nId == SID_UNDO || nId == SID_REDO) + { + const SfxItemSet* pArgs = rReq.GetArgs(); + if (pArgs && pArgs->HasItem(SID_REPAIRPACKAGE)) + bRet = true; + } + return bRet; +} + + void ShellCall_Impl( void* pObj, void* pArg ) { static_cast<SfxShell*>(pObj)->ExecuteSlot( *static_cast<SfxRequest*>(pArg) ); |