on xenial help sign in
make the dash app start with upstart
c33e733Michael Zanetti
data/unity8-dash.confnew file+22
@@ -0,0 +1,22 @@
1+description "Unity Shell v8 - Dash application"
2+author "Michael Zanetti <michael.zanetti@canonical.com>"
3+
4+emits scope-ui-starting
5+
6+start on started unity8
7+stop on desktop-end
8+
9+kill timeout 120
10+
11+respawn
12+
13+pre-start script
14+ if [ -z "$UNITY_SCOPES_LIST" ]; then
15+ # FIXME: remove once we have this in dconf
16+ initctl set-env UNITY_SCOPES_LIST="scopes;clickscope;musicaggregator;videoaggregator"
17+ fi
18+
19+ initctl emit scope-ui-starting
20+end script
21+
22+exec ${BINARY:-unity8-dash} $ARGS --desktop_file_hint=/usr/share/applications/unity8-dash.desktop
data/unity8.conf+1−7
@@ -1,7 +1,7 @@
1description "Unity Shell v8"
1description "Unity Shell v8"
2author "Ricardo Mendoza <ricmm@ubuntu.com>"
2author "Ricardo Mendoza <ricmm@ubuntu.com>"
3
3
4−emits scope-ui-starting indicator-services-start
4+emits indicator-services-start
5
5
6start on ((xsession SESSION=ubuntu-touch) or (xsession SESSION=ubuntu-touch-surfaceflinger)) and started dbus
6start on ((xsession SESSION=ubuntu-touch) or (xsession SESSION=ubuntu-touch-surfaceflinger)) and started dbus
7stop on desktop-end
7stop on desktop-end
@@ -34,11 +34,6 @@ pre-start script
34 gdbus call --session --dest org.freedesktop.DBus --object-path /org/freedesktop/DBus --method org.freedesktop.DBus.UpdateActivationEnvironment "@a{ss} {'MIR_SOCKET': '$MIR_SERVER_FILE'}"
34 gdbus call --session --dest org.freedesktop.DBus --object-path /org/freedesktop/DBus --method org.freedesktop.DBus.UpdateActivationEnvironment "@a{ss} {'MIR_SOCKET': '$MIR_SERVER_FILE'}"
35 fi
35 fi
36
36
37− if [ -z "$UNITY_SCOPES_LIST" ]; then
38− # FIXME: remove once we have this in dconf
39− initctl set-env UNITY_SCOPES_LIST="scopes;clickscope;musicaggregator;videoaggregator"
40− fi
41−
42 # Remove the socket if still there
37 # Remove the socket if still there
43 if [ -S "$MIR_SERVER_FILE" ]; then
38 if [ -S "$MIR_SERVER_FILE" ]; then
44 rm "$MIR_SERVER_FILE"
39 rm "$MIR_SERVER_FILE"
@@ -46,7 +41,6 @@ pre-start script
46
41
47 initctl set-env --global MIR_SERVER_PROMPT_FILE=1
42 initctl set-env --global MIR_SERVER_PROMPT_FILE=1
48
43
49− initctl emit scope-ui-starting
50 initctl emit --no-wait indicator-services-start
44 initctl emit --no-wait indicator-services-start
51end script
45end script
52
46
debian/unity8.install+1
@@ -1,4 +1,5 @@
1data/unity8.conf usr/share/upstart/sessions/
1data/unity8.conf usr/share/upstart/sessions/
2+data/unity8-dash.conf usr/share/upstart/sessions/
2usr/bin/unity8
3usr/bin/unity8
3usr/bin/unity8-dash
4usr/bin/unity8-dash
4usr/share/applications/unity8.desktop
5usr/share/applications/unity8.desktop
qml/Shell.qml+1−32
@@ -48,8 +48,6 @@ Item {
48 property url background
48 property url background
49 readonly property real panelHeight: panel.panelHeight
49 readonly property real panelHeight: panel.panelHeight
50
50
51− property bool dashShown: dash.shown && dash.available && underlay.visible
52−
53 property bool sideStageEnabled: shell.width >= units.gu(100)
51 property bool sideStageEnabled: shell.width >= units.gu(100)
54 readonly property string focusedApplicationId: ApplicationManager.focusedApplicationId
52 readonly property string focusedApplicationId: ApplicationManager.focusedApplicationId
55
53
@@ -59,7 +57,6 @@ Item {
59 } else {
57 } else {
60 var execFlags = shell.sideStageEnabled ? ApplicationManager.NoFlag : ApplicationManager.ForceMainStage;
58 var execFlags = shell.sideStageEnabled ? ApplicationManager.NoFlag : ApplicationManager.ForceMainStage;
61 ApplicationManager.startApplication(appId, execFlags);
59 ApplicationManager.startApplication(appId, execFlags);
62− stages.show();
63 }
60 }
64 }
61 }
65
62
@@ -130,35 +127,6 @@ Item {
130 }
127 }
131 }
128 }
132
129
133− EdgeDragArea {
134− id: stagesDragArea
135− direction: Direction.Leftwards
136−
137− anchors { top: parent.top; right: parent.right; bottom: parent.bottom }
138− width: shell.edgeSize
139−
140− property real progress: stages.width
141−
142− onTouchXChanged: {
143− if (status == DirectionalDragArea.Recognized) {
144− if (ApplicationManager.empty) {
145− progress = Math.max(stages.width - stagesDragArea.width + touchX, stages.width * .3);
146− } else {
147− progress = stages.width - stagesDragArea.width + touchX;
148− }
149− }
150− }
151−
152− onDraggingChanged: {
153− if (!dragging) {
154− if (!ApplicationManager.empty && progress < stages.width - units.gu(10)) {
155− stages.show();
156− }
157− stagesDragArea.progress = Qt.binding(function () { return stages.width; });
158− }
159− }
160− }
161−
162 Item {
130 Item {
163 id: stages
131 id: stages
164 objectName: "stages"
132 objectName: "stages"
@@ -614,6 +582,7 @@ Item {
614 }
582 }
615
583
616 if (!stages.locked) {
584 if (!stages.locked) {
585+ ApplicationManager.requestFocusApplication("unity8-dash")
617 launcher.fadeOut();
586 launcher.fadeOut();
618 } else {
587 } else {
619 launcher.switchToNextState("visible");
588 launcher.switchToNextState("visible");