Nate Graham f147fcf223 Fix initial window size calculations
KMainWindow::applyMainWindowSettings() currently does resize(windowHandle()->size());
unconditionally, but that will always return 640x480. As a result, all
KXMLGUI-using apps will get an initial main window size of 640x480,
overriding whatever size hint they might have set. This yields an
unpolished first impression to the new user due to windows being too
small the first time apps are launched.

Various apps have been working around this by adding an initial resize()
call to their main window code, which is not super desirable, as it
amounts to working around a workaround in client code.

In order to avoid negative consequences from this workaround, we need to
set the newly-created window to have the geometry of the existing
widget, which ensures that its sizeHint is applied properly.
2021-04-25 18:46:17 +00:00
2021-04-23 14:17:14 +02:00
2021-04-25 18:46:17 +00:00
2016-12-06 19:26:05 +01:00

KXMLGUI

Framework for managing menu and toolbar actions

Introduction

KXMLGUI provides a framework for managing menu and toolbar actions in an abstract way. The actions are configured through a XML description and hooks in the application code. The framework supports merging of multiple description for example for integrating actions from plugins.

Kiosk

KXMLGui makes use of the Kiosk authorization functionality of KConfig (see the KAuthorized namespace in that framework). Notably, QAction instances added to a KActionCollection are disabled if KAuthorized::authorizeAction() reports that they are not authorized. The items on the standard help menu (KHelpMenu) can likewise be disabled based on Kiosk settings, and toolbar editing can be restricted.

See KActionCollection, KHelpMenu and KToolBar documentation for more information.

Languages
C++ 98%
CMake 1.7%
Python 0.2%