https://bugs.documentfoundation.org/show_bug.cgi?id=161782
Bug ID: 161782
Summary: Unable to back out of many Sidebar decks into document
with Esc
Product: LibreOffice
Version: 24.2.0.0 alpha0+
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: bibisected, bisected, regression
Severity: normal
Priority: medium
Component: UI
Assignee: [email protected]
Reporter: [email protected]
Blocks: 65138
Try this in Calc, Sidebar decks Styles, Gallery and Navigator:
1. Focus into panel
2. Hit Esc repeatedly
Result: focus remains inside the deck even though it should move to document as
per Sidebar guidelines.
This regressed with 9ca60dc90958001c078ed6331bd432c36961a425
tdf#156156 Add Help button to sidebar decks
Debugging what happens when I hit Esc while in Styles, what I can see is that
in the FocusManager::GetFocusLocation() function of
sfx2/source/sidebar/FocusManager.cxx, the condition in the panel search loop:
if (pContents->has_child_focus())
return FocusLocation(PC_PanelContent, nIndex);
reports has_child_focus() as being true *while I am focused in the Cell Styles
button in the toolbar*! So it incorrectly reports the focus location to be
PC_PanelContent. This results in a no-op for the user hitting Esc.
I suppose this has to do with the rework of sfx2/uiconfig/ui/deck.ui
To be exact, the has_child_focus() function that is called is:
SalInstanceWidget::has_child_focus at vcl/source/app/salvtables.cxx:396
That then does calls leading to Window::ImplIsChild() in
vcl/source/window/stacking.cxx
I'm not sure where this should be fixed: the .ui file or
FocusManager::GetFocusLocation() ?
Referenced Bugs:
https://bugs.documentfoundation.org/show_bug.cgi?id=65138
[Bug 65138] [META] Sidebar feature related issues
--
You are receiving this mail because:
You are the assignee for the bug.