Reproduction instructions: 1. On the menus, choose Tools > Options 2. Navigate to LibreOffice > Appearance 3. Install some new theme (e.g. Lime) 4. Choose the theme in the drop-down list box 5. Press Apply 6. Switch the theme back 7. Press Apply 8. Close the dialog Expected behavior: Nothing else happens Actual Behavior: A dialog pops up claiming I need to restart LibreOffice AFAICT, in this situation, there is nothing that requires a restart.
IMO, this asks for something that, while may seem reasonable, should not be implemented. "Apply" does the change to the configuration. The very first "Apply" already made a change that, to become active, needs a restart. Then another "Apply" (with the same side effects) arrived. To know that the two applications cancelled each other, we need to keep track of the history; to know what the side effects could be *after* the restart; to take into account, that the *change* of installing the new themes didn't modify the restart side effects. IMO, this needs too broad knowledge in the dialog machinery. It needs assumptions, intelligence, that is simply unreasonable in it. The current behavior is simple and robust. Implementing the proposal would need huge increase in complexity, which would marginally improve some corner use case, but hugely increase fragility of the system. WF IMO.
And note, that the restart prompt allows to ignore it. The user is free to not restart. Not a huge problem in any way.
I think of the "To apply theme changes, LibreOffice must be restarted" popup as a configure safely thing--so better UX. It allows a simple means to ensure that any and all changes to the UI frameworks are applied and the user is back in a stable condition following the restart. That contrasted to past situations (so even before the Appearance theme framework) where various parts of the UI are not fully updated, sometimes even after restart. At 25.2 already demonstrated the advantage of the Appearance theme restart where the default Automatic theme could not be modified nor restored because it did not include the restart (bug 164399). So dropping the restart sequence in search of some means to assert a full UI refresh *without restart* cross platform is not worth the effort. Other issues with the new Appearance theme framework are more pressing, but dropping the restart from the mix is IMHO => WF from me as well.
IMO, "To display theme changes, LibreOffice must be restarted" would be clearer than "To apply ..." because the user has already 'applied' them by clicking the button.
(In reply to Charles Williams from comment #4) > IMO, "To display theme changes, LibreOffice must be restarted" would be > clearer than "To apply ..." because the user has already 'applied' them by > clicking the button. Semantics, and yes "display theme changes" might be more precise than "apply theme changes" in this usage. But it would be a UI string change with l10n impact, and really rather a bit of Bikeshedding "display" vs. "apply" for the RESTART_REASON dialog. See no compelling reason to adjust the term at this point. =-ref-= https://opengrok.libreoffice.org/xref/core/include/svtools/restartdialog.hxx?a=true&r=4bdb421440207c21bf2ea93fdf8a9494742beb08&h=53#53 https://opengrok.libreoffice.org/xref/core/svtools/uiconfig/ui/restartdialog.ui?a=true&r=4bdb421440207c21bf2ea93fdf8a9494742beb08&h=207#207
This is not enough of an annoyance to argue against Mike's consideration, so I'll live with it.