vcl/source/control/imivctl1.cxx | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)
New commits: commit fedc32852981682df6919147ecf410d7a06964d6 Author: Heiko Tietze <[email protected]> AuthorDate: Tue Nov 11 14:46:11 2025 +0100 Commit: Heiko Tietze <[email protected]> CommitDate: Wed Nov 12 08:50:10 2025 +0100 Resolves tdf#169383 - Accept ctrl+tab / shift+ctrl+tab on vertical tabs Change-Id: Ia7f7a8980129914c66e50fc5663afa7a0e0fdc7a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/193806 Reviewed-by: Heiko Tietze <[email protected]> Tested-by: Jenkins diff --git a/vcl/source/control/imivctl1.cxx b/vcl/source/control/imivctl1.cxx index 8ad79de5ba9d..8cc63ecec625 100644 --- a/vcl/source/control/imivctl1.cxx +++ b/vcl/source/control/imivctl1.cxx @@ -531,6 +531,27 @@ bool SvxIconChoiceCtrl_Impl::KeyInput( const KeyEvent& rKEvt ) } } break; + case KEY_TAB: + if (!rKEvt.GetKeyCode().IsMod1()) + bKeyUsed = false; // handle simple tab key without ctrl/cmd + else if( pCursor ) + { + MakeEntryVisible( pCursor ); + const bool bDown = !rKEvt.GetKeyCode().IsShift(); + pNewCursor = pImpCursor->GoUpDown(pCursor, bDown); + SetCursor_Impl(pNewCursor); + if( !pNewCursor ) + { + tools::Rectangle aRect( GetEntryBoundRect( pCursor ) ); + if( aRect.Top()) + { + aRect.AdjustBottom( -(aRect.Top()) ); + aRect.SetTop( 0 ); + MakeVisible( aRect ); + } + } + } + break; case KEY_DOWN: case KEY_PAGEDOWN:
