Merge lp:~renatofilho/address-book-app/fix-bottom-edge into lp:address-book-app

Proposed by Renato Araujo Oliveira Filho
Status: Merged
Merged at revision: 490
Proposed branch: lp:~renatofilho/address-book-app/fix-bottom-edge
Merge into: lp:address-book-app
Prerequisite: lp:~renatofilho/address-book-app/autopilot-and-sdk-1.3
Diff against target: 201 lines (+54/-16)
6 files modified
src/imports/ABContactListPage.qml (+3/-1)
src/imports/BottomEdge.qml (+47/-12)
src/imports/Ubuntu/AddressBook/ContactShare/ContactSharePage.qml (+2/-0)
src/imports/Ubuntu/Contacts/ContactAvatar.qml (+1/-1)
src/imports/Ubuntu/Contacts/PageWithBottomEdge.qml (+1/-1)
src/imports/Ubuntu/Contacts/SectionDelegate.qml (+0/-1)
To merge this branch: bzr merge lp:~renatofilho/address-book-app/fix-bottom-edge
Reviewer Review Type Date Requested Status
PS Jenkins bot continuous-integration Approve
Ubuntu Phablet Team Pending
Review via email: mp+275246@code.launchpad.net

This proposal supersedes a proposal from 2015-10-21.

Commit message

Make bottom edge usable with a mouse.
Make it smarter when more than one column is available.

Compared with lp:~fboucault/address-book-app/converged_bottom_edge:
 Show a dark background while swiping the bottom edge page.
 Fixed bottom edge animation to avoid it to disappear on second interaction.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote : Posted in a previous version of this proposal
review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
509. By Renato Araujo Oliveira Filho

Fixed font size for new UITK label.

510. By Renato Araujo Oliveira Filho

Use pageStack API on PageWithBottomEdge.

511. By Renato Araujo Oliveira Filho

Make the header invisible on contact share page.

512. By Renato Araujo Oliveira Filho

Does not show empty state message if contact editor is open.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/imports/ABContactListPage.qml'
2--- src/imports/ABContactListPage.qml 2015-10-22 12:56:07 +0000
3+++ src/imports/ABContactListPage.qml 2015-10-22 12:56:08 +0000
4@@ -427,7 +427,8 @@
5 !contactList.favouritesIsSelected &&
6 mainPage.isEmpty &&
7 (mainPage.newPhoneToAdd === "") &&
8- !(contactList.filterTerm && contactList.filterTerm !== ""))
9+ !(contactList.filterTerm && contactList.filterTerm !== "")) &&
10+ bottomEdge.visible
11
12 Behavior on visible {
13 SequentialAnimation {
14@@ -582,6 +583,7 @@
15 flickable: contactList
16 iconName: "contact-new"
17 enabled: !contactList.isInSelectionMode
18+ backGroundEffectEnabled: pageStack.columns === 1
19
20 // FIXME: this is a workaround for the lack of fully asynchronous loading
21 // of Pages in AdaptativePageLayout
22
23=== modified file 'src/imports/BottomEdge.qml'
24--- src/imports/BottomEdge.qml 2015-10-22 12:56:07 +0000
25+++ src/imports/BottomEdge.qml 2015-10-22 12:56:08 +0000
26@@ -20,12 +20,14 @@
27 Item {
28 id: bottomEdge
29
30+ readonly property alias content: bottomEdgeLoader.item
31 readonly property bool fullLoaded: bottomEdgeLoader.status == Loader.Ready
32+
33 property bool opened: false
34 property Component contentComponent
35- property Item content: bottomEdgeLoader.item
36 property string iconName
37 property Item flickable
38+ property alias backGroundEffectEnabled: darkBg.visible
39
40 signal openBegin
41 signal openEnd
42@@ -40,6 +42,17 @@
43 bottomEdge.state = "collapsed";
44 }
45
46+ Rectangle {
47+ id: darkBg
48+
49+ anchors.fill: parent
50+ color: "black"
51+ opacity: bottomEdgeBody.y > 0 ? 0.8 - (bottomEdgeBody.y / bottomEdgeDragArea.drag.maximumY) : 0.8
52+ Behavior on opacity {
53+ NumberAnimation { duration: UbuntuAnimation.FastDuration }
54+ }
55+ }
56+
57 Item {
58 id: bottomEdgeBody
59 anchors {
60@@ -121,13 +134,19 @@
61 states: [
62 State {
63 name: "collapsed"
64+ ParentChange {
65+ target: bottomEdgeContent
66+ parent: bottomEdgeBody
67+ x: 0
68+ y: 0
69+ }
70 PropertyChanges {
71 target: bottomEdgeBody
72 y: bottomEdgeDragArea.drag.maximumY
73 }
74 PropertyChanges {
75 target: bottomEdgeContent
76- visible: false
77+ opacity: 0.0
78 }
79 },
80 State {
81@@ -139,9 +158,12 @@
82 y: 0
83 }
84 PropertyChanges {
85+ target: bottomEdgeContent
86+ opacity: 1.0
87+ }
88+ PropertyChanges {
89 target: bottomEdgeBody
90- y: bottomEdgeDragArea.drag.maximumY
91- opacity: 0.0
92+ y: 0
93 }
94 PropertyChanges {
95 target: bottomEdgeShadows
96@@ -154,7 +176,7 @@
97 when: bottomEdgeDragArea.drag.active
98 PropertyChanges {
99 target: bottomEdgeContent
100- visible: true
101+ opacity: 1.0
102 }
103 }
104 ]
105@@ -164,16 +186,28 @@
106 to: "collapsed"
107 SequentialAnimation {
108 alwaysRunToEnd: true
109-
110- SmoothedAnimation {
111- target: bottomEdgeBody
112- property: "y"
113- duration: UbuntuAnimation.SlowDuration
114+ ParallelAnimation {
115+ ParentAnimation {
116+ UbuntuNumberAnimation {
117+ properties: "x,y"
118+ duration: UbuntuAnimation.SlowDuration
119+ target: bottomEdgeContent
120+ }
121+ }
122+ UbuntuNumberAnimation {
123+ target: bottomEdgeBody
124+ property: "y"
125+ duration: UbuntuAnimation.SlowDuration
126+ }
127+ }
128+ PropertyAction {
129+ target: bottomEdgeContent
130+ property: "opacity"
131 }
132 ScriptAction {
133 script: {
134- bottomEdgeLoader.active = false;
135- bottomEdgeLoader.active = true;
136+ bottomEdgeLoader.active = false
137+ bottomEdgeLoader.active = true
138 bottomEdge.opened = false
139 }
140 }
141@@ -182,6 +216,7 @@
142 Transition {
143 to: "expanded"
144 SequentialAnimation {
145+ alwaysRunToEnd: true
146 ParallelAnimation {
147 ScriptAction {
148 script: bottomEdge.openBegin()
149
150=== modified file 'src/imports/Ubuntu/AddressBook/ContactShare/ContactSharePage.qml'
151--- src/imports/Ubuntu/AddressBook/ContactShare/ContactSharePage.qml 2015-10-22 12:56:07 +0000
152+++ src/imports/Ubuntu/AddressBook/ContactShare/ContactSharePage.qml 2015-10-22 12:56:08 +0000
153@@ -31,6 +31,8 @@
154 signal canceled()
155 signal completed()
156
157+ // invisible header
158+ header: Item { height: 0 }
159 ContentHub.ContentPeerPicker {
160 visible: true
161 anchors.fill: parent
162
163=== modified file 'src/imports/Ubuntu/Contacts/ContactAvatar.qml'
164--- src/imports/Ubuntu/Contacts/ContactAvatar.qml 2015-10-22 12:56:07 +0000
165+++ src/imports/Ubuntu/Contacts/ContactAvatar.qml 2015-10-22 12:56:08 +0000
166@@ -51,9 +51,9 @@
167
168 anchors.centerIn: parent
169 text: Contacts.contactInitialsFromString(contactDisplayName)
170- font.pointSize: 88
171 color: UbuntuColors.lightAubergine
172 visible: (img.status != Image.Ready)
173+ fontSize: "large"
174 }
175
176 source: !img.visible ? img : null
177
178=== modified file 'src/imports/Ubuntu/Contacts/PageWithBottomEdge.qml'
179--- src/imports/Ubuntu/Contacts/PageWithBottomEdge.qml 2015-10-22 12:56:07 +0000
180+++ src/imports/Ubuntu/Contacts/PageWithBottomEdge.qml 2015-10-22 12:56:08 +0000
181@@ -103,7 +103,7 @@
182 {
183 if (edgeLoader.status === Loader.Ready) {
184 edgeLoader.item.active = true
185- page.pageStack.addPageToCurrentColumn(page, edgeLoader.item)
186+ page.pageStack.push(edgeLoader.item)
187 if (edgeLoader.item.flickable) {
188 edgeLoader.item.flickable.contentY = -page.header.height
189 edgeLoader.item.flickable.returnToBounds()
190
191=== modified file 'src/imports/Ubuntu/Contacts/SectionDelegate.qml'
192--- src/imports/Ubuntu/Contacts/SectionDelegate.qml 2015-10-22 12:56:07 +0000
193+++ src/imports/Ubuntu/Contacts/SectionDelegate.qml 2015-10-22 12:56:08 +0000
194@@ -28,7 +28,6 @@
195
196 anchors.fill: parent
197 verticalAlignment: Text.AlignVCenter
198- font.pointSize: 76
199 height: units.gu(3)
200 }
201 ThinDivider {

Subscribers

People subscribed via source and target branches