on xenial help sign in
Prevent overlapping animations
commitafe6f5582811752de1a013c4856d7a1ff8d6fe0c authorMichael Terry <michael.terry@canonical.com> dateMon 30 Sep 2013, 15:39 (13 years ago) parentd17fd66
2 files changed+15−14
Greeter/GreeterContent.qml+6−7 Greeter/Infographics.qml+9−7
Greeter/GreeterContent.qml+6−7
@@ -141,20 +141,19 @@ MouseArea {
141141
142142 property string selectedUser
143143 property string infographicUser: AccountsService.statsWelcomeScreen ? selectedUser : ""
144− onInfographicUserChanged: updateUsername()
144+ onInfographicUserChanged: greeterContentLoader.infographicModel.username = infographicUser
145145
146− Component.onCompleted: selectedUser = greeterContentLoader.model.data(greeterContentLoader.currentIndex, LightDM.UserRoles.NameRole)
146+ Component.onCompleted: {
147+ selectedUser = greeterContentLoader.model.data(greeterContentLoader.currentIndex, LightDM.UserRoles.NameRole)
148+ greeterContentLoader.infographicModel.username = infographicUser
149+ greeterContentLoader.infographicModel.readyForDataChangeSlot()
150+ }
147151
148152 Connections {
149153 target: root
150154 onSelected: infographics.selectedUser = greeterContentLoader.model.data(uid, LightDM.UserRoles.NameRole)
151155 }
152156
153− function updateUsername() {
154− greeterContentLoader.infographicModel.username = infographicUser;
155− greeterContentLoader.infographicModel.readyForDataChangeSlot();
156− }
157−
158157 anchors {
159158 verticalCenter: parent.verticalCenter
160159 left: narrowMode ? root.left : loginLoader.right
Greeter/Infographics.qml+9−7
@@ -29,13 +29,7 @@ Item {
2929 Connections {
3030 target: model
3131
32− property bool appeared: false
33−
34− onDataAboutToAppear: {
35− // Don't 'hide' on first appearance, since there is no content yet
36− if (appeared) startHideAnimation() // hide "no data" label
37− appeared = true
38− }
32+ onDataAboutToAppear: startHideAnimation() // hide "no data" label
3933 onDataAppeared: startShowAnimation()
4034
4135 onDataAboutToChange: startHideAnimation()
@@ -46,11 +40,19 @@ Item {
4640 }
4741
4842 function startShowAnimation() {
43+ dotHideAnimTimer.stop()
44+ circleShrinkAnimTimer.stop()
45+ notification.hideAnim.stop()
46+
4947 dotShowAnimTimer.startFromBeginning()
5048 notification.showAnim.start()
5149 }
5250
5351 function startHideAnimation() {
52+ dotShowAnimTimer.stop()
53+ circleGrowAnimTimer.stop()
54+ notification.showAnim.stop()
55+
5456 dotHideAnimTimer.startFromBeginning()
5557 notification.hideAnim.start()
5658 }