Pitel created this revision. Restricted Application added a project: Plasma. Restricted Application added a subscriber: plasma-devel. Pitel requested review of this revision.
REVISION SUMMARY My try at ordered system try heavily inspired by D11233 <https://phabricator.kde.org/D11233>. Features (and problems): - the main intention was to keep code as simple as possible - items can be reordered by drag & drop and removed from config by dragging into trash bin - item list is by design loaded only at opening settings dialog (doing on-the-fly updates seems complicated for very little gain) - new items are added at right end of systray and remeber their position (so the first start the order will be random but on subsequent starts the order will remain the same) - all this is backed by only one new config option `itemOrder` of type `StringList` - items currently not existent are displayed in italics (and without icon because there is nowhere to get it) - now also all status notifier items are always in italics because I removed using `statusNotifierModel` from setting which solves crash after closing setting (and ugly > crash) - contains an ugly hack to workaround `ComboBox`'es going crazy when `TableView` model is changed (I have no clue what causes this, only than `currentItem` binding is not to blame) - the drag & drop support was adapted from R884 <https://phabricator.kde.org/source/plasma-active-window-control/> (most notably `OrderItem.qml` comes from there and was only lightly modified Any c REPOSITORY R120 Plasma Workspace BRANCH stableSystray REVISION DETAIL https://phabricator.kde.org/D11292 AFFECTED FILES applets/systemtray/package/contents/config/main.xml applets/systemtray/package/contents/ui/ConfigEntries.qml applets/systemtray/package/contents/ui/OrderableItem.qml applets/systemtray/package/contents/ui/items/AbstractItem.qml applets/systemtray/package/contents/ui/main.qml To: Pitel Cc: plasma-devel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart