From KDE Community Wiki
Revision as of 12:38, 1 April 2014 by D ed (talk | contribs) (→‎Oxygen QML Controls Status)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Oxygen QML Controls Status

Status Component Problems / Status Developer
TODO ApplicationWindow No background gradient
DONE MenuBar No dropdown menu Frame ( ) G <Martin G>
TODO StatusBar
TODO ToolBar
IN PROGRESS ScrollView <David>
TODO SplitView
TODO StackView
IN PROGRESS TabView,72813 <[email protected]>
IN PROGRESS TableView Selection highlight has no gradient + Scrollview bug <David>
IN PROGRESS Button No frame when an icon is set -,73347 [mailto: David < David >]
DONE CheckBox
IN PROGRESS ComboBox [mailto: Martin K < Martin K>]
DONE GroupBox
DONE Label
DONE ProgressBar [merged] indeterminate mode does not show busy animation (happens because Oxygen needs a QObject which is used for tracking the animated bar position; by default the *widget is used, which is NULL with QQC) [mailto: Martin K < Martin K >]
DONE RadioButton
IN PROGRESS Slider * does not keep focus highlight after being clicked -,74044 [mailto: Martin K < Martin K >]
DONE SpinBox Klapetek <Martin Klapetek>
TODO TextArea
  • Missing focus frame
  • [merged] wrong text colors when disabled -,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