Jump to content

Plasma/OxygenQmlControls

From KDE Community Wiki

Oxygen QML Controls Status

Status Component Problems / Status Developer
TODO ApplicationWindow No background gradient
IN PROGRESS MenuBar No dropdown menu Frame (https://git.reviewboard.kde.org/r/114271/ ) G <Martin G>
TODO StatusBar
TODO ToolBar
IN PROGRESS ScrollView <David>
TODO SplitView
TODO StackView
IN PROGRESS TabView https://codereview.qt-project.org/#change,72813 <[email protected]>
IN PROGRESS TableView Selection highlight has no gradient + Scrollview bug <David>
IN PROGRESS Button No frame when an icon is set - https://codereview.qt-project.org/#change,73347 [mailto: David < David >]
DONE CheckBox
IN PROGRESS ComboBox [mailto: Martin K < Martin K>]
DONE GroupBox https://git.reviewboard.kde.org/r/112329/
DONE Label
DONE ProgressBar
TODO ProgressBar indeterminate mode does not show busy animation
DONE RadioButton
IN PROGRESS Slider * does not keep focus highlight after being clicked [mailto: Martin K < Martin K >]
IN PROGRESS SpinBox Klapetek <Martin Klapetek>
TODO TextArea
  • Missing focus frame
  • [merged] wrong text colors when disabled - https://codereview.qt-project.org/#change,73094
  • does not keep highlight when right-clicking highlighted text (makes copying text via context menu impossible)
  • does not react to "horizontalAlignment" property change unless text selection is started
TODO TextField
TODO ToolButton
TODO background no drag to move window

Fixing Info

In Oxygen most style methods take an optional parameter which is the widget to get hints for. From QtQuickControls this is a null pointer. Oxygen sometimes fails on this and returns different to the desktop implementation.

There is a Controls Style QML theme that, uses a private QtQuickControls library which talks to QStyle. Most relevant code is at: src/controls/Private/qquickstyleitem.cpp

Using QGuiApplication will cause styles not to load. Apps _must_ use QApplication

Upstream documentation http://qt-project.org/doc/qt-5.1/qtquickcontrols/qtquickcontrols-index.html