Summary:
As described in https://bugreports.qt.io/browse/QTBUG-57714 exposing a
QWidget as a context item to QtQuick can crash. Especially as the
engine's context property gets deleted whilst deleting the parent item.
This patch reworks the code so that the models are exposed to QML
directly rather than going through a QWidget.
CCBUG: 373628
Test Plan:
Pressing back whilst in the decoration KCM used to crash every time, now it doesn't.
I still have the buttons.
Reviewers: #plasma, graesslin
Reviewed By: #plasma, graesslin
Subscribers: graesslin, cfeck, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D4533
Our decoration is deleted using deleteLater() and that might cause access
to the bridge. Given that we also need to deleteLater() the
PreviewBridge.
To do so the PreviewBridge is no longer directly exposed to QML, but
in a wrapper object which holds the bridge as only element.
BUG: 344278
FIXED-IN: 5.4.3
REVIEW: 125724
- tab theme and button items
- move menubutton close hint below checkbox (moved on top)
- use proper background palette on palette updates
REVIEW: 125393
The text cannot be aligned to the icon (makes
it move around when dragging the icon) nor
can we just allocate two line (makes single lines
detached from the icon)
BUG: 343411
REVIEW: 122301
FIXED-IN: 5.2.1
- align with system palette
- base color for buttons and preview individually
to create a visual gap (make them more standalone)
- downsized button config buttons to match up w/ preview
appearance (and because it was simply to huge for a desktop thing)
- upsized preview to preferably show two elements at once
(current + 2*1/2context)
- made the titlebar a visible visual element
- label the titlebar "Titlebar"
- move the (altered) hint to the drag-from area
- hint draggability with a pointing hand cursor
- less hardcoded values
- brief animations on button adding/removing
BUG: 337544
REVIEW: 122064
The decoration button configuration interface is merged into the QML
part using two list views (left buttons, right buttons) and a grid
view for all the available buttons.