https://bugs.kde.org/show_bug.cgi?id=442179

Friedrich W. H. Kossebau <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/fram
                   |                            |eworks/kxmlgui/-/commit/ccc
                   |                            |747d718de9a95a25edb0fa0f894
                   |                            |53ec94c1c0
            Version|                            |6.30
  Fixed/Implemented|                            |
                 In|                            |
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #5 from Friedrich W. H. Kossebau <[email protected]> ---
Git commit ccc747d718de9a95a25edb0fa0f89453ec94c1c0 by Friedrich W. H.
Kossebau.
Committed on 25/08/2026 at 00:33.
Pushed by kossebau into branch 'master'.

Fix broken toolbars after second edit w/ multiple KXMLGUIClients

The manual client reset in KXmlGuiWindow::saveNewToolbarConfig() was broken
in 2 ways:
a)
it duplicated the work already done by KEditToolBar, which on apply/ok
as needed already applies the changes to all clients by calling
KEditToolBarWidget::rebuildKXMLGUIClients()
b)
it would only reinsert the client of the shell/main window, not any other
possibly existing KXMLGUIClients, which results in that being appended to
the end of the list in the factory. So on any next UI rebuilding
by at least KEditToolBar things go wrong as the order of clients at least
when it comes to the first/main client assumes the first is the snell/main
client, to be matched against the UI standards file.

Removing the duplicated reinsertion fixes this.

As the API of KEditToolBar specifies how to use this slot, and all known
existing usages in KDE code in their reimmplementations follow that and
call this method as first thing, changing the behaviour here by not
reinserting the main client at all should be acceptable.

Also extend the API docs of saveNewToolbarConfig() with some more related
information.
FIXED-IN: 6.30

M  +0    -5    src/kxmlguiwindow.cpp
M  +4    -1    src/kxmlguiwindow.h

https://invent.kde.org/frameworks/kxmlgui/-/commit/ccc747d718de9a95a25edb0fa0f89453ec94c1c0

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to