sfx2/source/sidebar/FocusManager.cxx |    7 +++++++
 1 file changed, 7 insertions(+)

New commits:
commit ef4ac09618a859d7399c55559b27030228745a5f
Author:     Jim Raykowski <rayk...@gmail.com>
AuthorDate: Thu Aug 3 21:26:44 2023 -0800
Commit:     Adolfo Jayme Barrientos <fit...@ubuntu.com>
CommitDate: Wed Aug 16 13:03:37 2023 +0200

    tdf#156557 Sidebar: Make Shift+Tab kb navigation behave as expected
    
    This patch makes Shift+Tab change keyboard focus to the last panel
    control of the previous panel when focus is currently on a panel title.
    It also makes Shift+Tab change keyboard focus to the Tabbar hamburger
    menu when focus is currently on the "Close Sidebar Deck" button.
    
    Change-Id: I3ff849655afc4f01dba2268055292eee573adf43
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155333
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>
    (cherry picked from commit e2db54b9bf48b79802154d5fc9460fc432ea69a0)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155396
    Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com>

diff --git a/sfx2/source/sidebar/FocusManager.cxx 
b/sfx2/source/sidebar/FocusManager.cxx
index d0c38461b9ae..b77d30a75ba3 100644
--- a/sfx2/source/sidebar/FocusManager.cxx
+++ b/sfx2/source/sidebar/FocusManager.cxx
@@ -297,6 +297,11 @@ bool FocusManager::MoveFocusInsideDeckTitle (
                 FocusPanelContent(0);
                 bConsumed = true;
             }
+            else if (nDirection < 0)
+            {
+                FocusButton(0);
+                bConsumed = true;
+            }
             break;
 
         default: break;
@@ -369,6 +374,8 @@ bool FocusManager::HandleKeyEvent(
             {
                 case PC_PanelTitle:
                 case PC_PanelToolBox:
+                    if (rKeyCode.IsShift())
+                        break;
                     MoveFocusInsidePanel(aLocation, nDirection);
                     bConsumed = true;
                     break;

Reply via email to