[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [plasma-desktop] applets/kickoff/package/contents/ui: [Kickoff] Lazy load more
From: Kai Uwe Broulik <kde () privat ! broulik ! de>
Date: 2016-09-05 10:03:11
Message-ID: E1bgqkB-0006cF-MZ () code ! kde ! org
[Download RAW message or body]
Git commit 1ff59def8c6dca908855c32d49f6dbce671e0bc0 by Kai Uwe Broulik.
Committed on 05/09/2016 at 10:02.
Pushed by broulik into branch 'master'.
[Kickoff] Lazy load more
Neither the apps model nor favorites model is needed initially.
Move them to the fullRepresentation so they're only loaded as needed.
Differential Revision: https://phabricator.kde.org/D2656
M +41 -0 applets/kickoff/package/contents/ui/FullRepresentation.qml
M +16 -47 applets/kickoff/package/contents/ui/Kickoff.qml
http://commits.kde.org/plasma-desktop/1ff59def8c6dca908855c32d49f6dbce671e0bc0
diff --git a/applets/kickoff/package/contents/ui/FullRepresentation.qml \
b/applets/kickoff/package/contents/ui/FullRepresentation.qml index 8ac029c..de597be \
100644
--- a/applets/kickoff/package/contents/ui/FullRepresentation.qml
+++ b/applets/kickoff/package/contents/ui/FullRepresentation.qml
@@ -27,6 +27,8 @@ import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.kquickcontrolsaddons 2.0
+import org.kde.plasma.private.kicker 0.1 as Kicker
+
Item {
id: root
Layout.minimumWidth: units.gridUnit * 26
@@ -36,6 +38,8 @@ Item {
property bool switchTabsOnHover: plasmoid.configuration.switchTabsOnHover
property Item currentView: mainTabGroup.currentTab.decrementCurrentIndex ? \
mainTabGroup.currentTab : mainTabGroup.currentTab.item
+ property QtObject globalFavorites: rootModelFavorites
+
state: "Normal"
focus: true
@@ -47,6 +51,43 @@ Item {
root.state = "Normal";
}
+ Kicker.AppsModel {
+ id: rootModel
+
+ appletInterface: plasmoid
+
+ appNameFormat: plasmoid.configuration.showAppsByName ? 0 : 1
+ flat: false
+ showSeparators: false
+
+ favoritesModel: Kicker.FavoritesModel {
+ id: rootModelFavorites
+ favorites: plasmoid.configuration.favorites
+
+ onFavoritesChanged: {
+ plasmoid.configuration.favorites = favorites;
+ }
+ }
+ }
+
+ Kicker.RunnerModel {
+ id: runnerModel
+
+ appletInterface: plasmoid
+
+ runners: {
+ var runners = ["services", "places"];
+
+ if (plasmoid.configuration.useExtraRunners) {
+ runners = runners.concat(plasmoid.configuration.runners);
+ }
+ return runners;
+ }
+ mergeResults: true
+
+ favoritesModel: globalFavorites
+ }
+
PlasmaCore.DataSource {
id: pmSource
engine: "powermanagement"
diff --git a/applets/kickoff/package/contents/ui/Kickoff.qml \
b/applets/kickoff/package/contents/ui/Kickoff.qml index 00e3d8a..c77c4de 100644
--- a/applets/kickoff/package/contents/ui/Kickoff.qml
+++ b/applets/kickoff/package/contents/ui/Kickoff.qml
@@ -40,61 +40,30 @@ Item {
Plasmoid.icon: plasmoid.configuration.icon
- property QtObject globalFavorites: rootModelFavorites
+ Plasmoid.compactRepresentation: MouseArea {
+ hoverEnabled: true
+ onClicked: plasmoid.expanded = !plasmoid.expanded
- property Item dragSource: null
-
- Kicker.AppsModel {
- id: rootModel
-
- appletInterface: plasmoid
-
- appNameFormat: plasmoid.configuration.showAppsByName ? 0 : 1
- flat: false
- showSeparators: false
-
- favoritesModel: Kicker.FavoritesModel {
- id: rootModelFavorites
-
- Component.onCompleted: {
- favorites = plasmoid.configuration.favorites;
- }
+ DropArea {
+ id: compactDragArea
+ anchors.fill: parent
}
- }
- Connections {
- target: globalFavorites
-
- onFavoritesChanged: {
- plasmoid.configuration.favorites = target.favorites;
+ Timer {
+ id: expandOnDragTimer
+ interval: 250
+ running: compactDragArea.containsDrag
+ onTriggered: plasmoid.expanded = true
}
- }
- Connections {
- target: plasmoid.configuration
-
- onFavoritesChanged: {
- globalFavorites.favorites = plasmoid.configuration.favorites;
+ PlasmaCore.IconItem {
+ anchors.fill: parent
+ source: plasmoid.icon
+ active: parent.containsMouse || compactDragArea.containsDrag
}
}
- Kicker.RunnerModel {
- id: runnerModel
-
- appletInterface: plasmoid
-
- runners: {
- var runners = ["services", "places"];
-
- if (plasmoid.configuration.useExtraRunners) {
- runners = runners.concat(plasmoid.configuration.runners);
- }
- return runners;
- }
- mergeResults: true
-
- favoritesModel: globalFavorites
- }
+ property Item dragSource: null
Kicker.DragHelper {
id: dragHelper
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic