Merge lp:~nik90/ubuntu-clock-app/new-bottom-edge into lp:ubuntu-clock-app

Proposed by Nekhelesh Ramananthan
Status: Merged
Approved by: Bartosz Kosiorek
Approved revision: 453
Merged at revision: 444
Proposed branch: lp:~nik90/ubuntu-clock-app/new-bottom-edge
Merge into: lp:ubuntu-clock-app
Diff against target: 1940 lines (+252/-771)
73 files modified
app/MainPage.qml (+23/-7)
app/alarm/AlarmDelegate.qml (+1/-1)
app/alarm/AlarmLabel.qml (+1/-1)
app/alarm/AlarmList.qml (+3/-3)
app/alarm/AlarmModelComponent.qml (+1/-1)
app/alarm/AlarmPage.qml (+87/-84)
app/alarm/AlarmRepeat.qml (+1/-1)
app/alarm/AlarmSettingsPage.qml (+1/-1)
app/alarm/AlarmUtils.qml (+1/-55)
app/alarm/EditAlarmPage.qml (+20/-16)
app/alarm/SoundPeerPicker.qml (+1/-1)
app/clock/ClockPage.qml (+3/-3)
app/clock/MainClock.qml (+1/-1)
app/components/ActionIcon.qml (+1/-1)
app/components/AnalogMode.qml (+1/-1)
app/components/AnalogShadow.qml (+1/-1)
app/components/Clock.qml (+3/-3)
app/components/ClockCircle.qml (+1/-1)
app/components/DigitalMode.qml (+1/-1)
app/components/DigitalShadow.qml (+1/-1)
app/components/EmptyState.qml (+1/-1)
app/components/ExpandableListItem.qml (+1/-1)
app/components/HeaderNavigation.qml (+1/-1)
app/components/Shadow.qml (+1/-1)
app/stopwatch/LapListView.qml (+1/-1)
app/stopwatch/StopwatchFace.qml (+1/-1)
app/stopwatch/StopwatchPage.qml (+1/-1)
app/ubuntu-clock-app.qml (+1/-3)
app/upstreamcomponents/CMakeLists.txt (+0/-2)
app/upstreamcomponents/FakeHeader.qml (+0/-39)
app/upstreamcomponents/PageWithBottomEdge.qml (+0/-449)
app/upstreamcomponents/README.components (+0/-4)
app/worldclock/AddWorldCityButton.qml (+1/-1)
app/worldclock/UserWorldCityDelegate.qml (+2/-1)
app/worldclock/UserWorldCityList.qml (+3/-2)
app/worldclock/WorldCityList.qml (+1/-1)
backend/modules/Alarm/backend.cpp (+1/-1)
backend/modules/Alarm/backend.h (+1/-1)
backend/modules/Alarm/settings.cpp (+1/-1)
backend/modules/Alarm/settings.h (+1/-1)
backend/modules/Alarm/sound.cpp (+1/-1)
backend/modules/Alarm/sound.h (+1/-1)
backend/modules/Stopwatch/backend.cpp (+1/-1)
backend/modules/Stopwatch/backend.h (+1/-1)
backend/modules/Stopwatch/engine.cpp (+2/-2)
backend/modules/Stopwatch/engine.h (+2/-2)
backend/modules/Stopwatch/formattime.cpp (+1/-1)
backend/modules/Stopwatch/formattime.h (+1/-1)
backend/modules/WorldClock/backend.cpp (+1/-1)
backend/modules/WorldClock/backend.h (+1/-1)
backend/modules/WorldClock/datetime.cpp (+1/-1)
backend/modules/WorldClock/datetime.h (+1/-1)
backend/modules/WorldClock/generictimezonemodel.cpp (+1/-1)
backend/modules/WorldClock/generictimezonemodel.h (+1/-1)
backend/modules/WorldClock/geolocation.cpp (+1/-1)
backend/modules/WorldClock/geolocation.h (+1/-1)
backend/modules/WorldClock/jsontimezonemodel.cpp (+1/-1)
backend/modules/WorldClock/jsontimezonemodel.h (+1/-1)
backend/modules/WorldClock/statictimezonemodel.cpp (+1/-1)
backend/modules/WorldClock/statictimezonemodel.h (+1/-1)
backend/modules/WorldClock/timezonemodel.cpp (+1/-1)
backend/modules/WorldClock/timezonemodel.h (+1/-1)
debian/changelog (+16/-0)
po/com.ubuntu.clock.pot (+31/-41)
tests/unit/ClockTestCase.qml (+1/-1)
tests/unit/MockClockApp.qml (+1/-1)
tests/unit/tst_alarm.qml (+1/-1)
tests/unit/tst_alarmLabel.qml (+1/-1)
tests/unit/tst_alarmRepeat.qml (+1/-1)
tests/unit/tst_alarmSound.qml (+1/-1)
tests/unit/tst_alarmUtils.qml (+1/-1)
tests/unit/tst_stopwatchUtils.qml (+1/-1)
tests/unit/tst_worldClock.qml (+1/-1)
To merge this branch: bzr merge lp:~nik90/ubuntu-clock-app/new-bottom-edge
Reviewer Review Type Date Requested Status
Jenkins Bot continuous-integration Approve
Bartosz Kosiorek Approve
Review via email: mp+287236@code.launchpad.net

Commit message

- Use the new bottom edge
- Updated copyright years of all files
- Updated debian changelog

Description of the change

Use the new bottom edge

The new SDK Bottom edge allows us to remove the PageWithBottomEdge custom component.

To post a comment you must log in.
446. By Nekhelesh Ramananthan

Removed PageWithBottomEdge upstream component

Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
447. By Nekhelesh Ramananthan

Updated copyright years

448. By Nekhelesh Ramananthan

Updated debian changelog

Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
449. By Nekhelesh Ramananthan

Updated cmake file

450. By Nekhelesh Ramananthan

Make hint text translatable

Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
451. By Nekhelesh Ramananthan

Show hint for two seconds at app startup

Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
452. By Nekhelesh Ramananthan

Merged lp:ubuntu-clock-app

453. By Nekhelesh Ramananthan

Updated debian changelog

Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Bartosz Kosiorek (gang65) wrote :

It is working perfectly for me.
Thanks.

review: Approve
Revision history for this message
Jenkins Bot (ubuntu-core-apps-jenkins-bot) :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'app/MainPage.qml'
--- app/MainPage.qml 2016-02-20 08:13:21 +0000
+++ app/MainPage.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -26,17 +26,17 @@
26import "stopwatch"26import "stopwatch"
27import "components"27import "components"
2828
29PageWithBottomEdge {29Page {
30 id: _mainPage30 id: _mainPage
31 objectName: "mainPage"31 objectName: "mainPage"
3232
33 // String with not localized date and time in format "yyyy:MM:dd:hh:mm:ss", eg.: "2015:10:05:16:10:15"33 // String with not localized date and time in format "yyyy:MM:dd:hh:mm:ss", eg.: "2016:10:05:16:10:15"
34 property string notLocalizedDateTimeString34 property string notLocalizedDateTimeString
3535
36 // String with localized time, eg.: "4:10 PM"36 // String with localized time, eg.: "4:10 PM"
37 property string localizedTimeString37 property string localizedTimeString
3838
39 // String with localized date, eg.: "Thursday, 17 September 2015"39 // String with localized date, eg.: "Thursday, 17 September 2016"
40 property string localizedDateString40 property string localizedDateString
4141
42 // Property to keep track of an app cold start status42 // Property to keep track of an app cold start status
@@ -49,9 +49,25 @@
49 property var alarmModel49 property var alarmModel
5050
51 flickable: null51 flickable: null
52 bottomEdgeTitle: _mainPage.visible ? alarmUtils.set_bottom_edge_title(alarmModel, notLocalizedDateTimeString)52
53 : i18n.tr("No active alarms")53 Timer {
54 bottomEdgePageComponent: AlarmPage {}54 id: hideBottomEdgeHintTimer
55 interval: 3000
56 onTriggered: bottomEdge.hint.status = BottomEdgeHint.Inactive
57 }
58
59 BottomEdge {
60 id: bottomEdge
61 height: parent.height
62 hint.iconName: "alarm-clock"
63 hint.text: i18n.tr("Alarms")
64 hint.status: BottomEdgeHint.Active
65 contentComponent: AlarmPage {
66 width: bottomEdge.width
67 height: bottomEdge.height
68 }
69 Component.onCompleted: hideBottomEdgeHintTimer.start()
70 }
5571
56 AlarmUtils {72 AlarmUtils {
57 id: alarmUtils73 id: alarmUtils
5874
=== modified file 'app/alarm/AlarmDelegate.qml'
--- app/alarm/AlarmDelegate.qml 2016-02-16 15:51:20 +0000
+++ app/alarm/AlarmDelegate.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/alarm/AlarmLabel.qml'
--- app/alarm/AlarmLabel.qml 2015-10-22 16:49:23 +0000
+++ app/alarm/AlarmLabel.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/alarm/AlarmList.qml'
--- app/alarm/AlarmList.qml 2015-10-22 16:49:23 +0000
+++ app/alarm/AlarmList.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -31,7 +31,7 @@
31 signal selectAll()31 signal selectAll()
3232
33 clip: true33 clip: true
34 anchors.fill: parent34 currentIndex: -1
3535
36 Timer {36 Timer {
37 id: alarmTimer37 id: alarmTimer
@@ -71,7 +71,7 @@
71 if (selectMode) {71 if (selectMode) {
72 selected = !selected72 selected = !selected
73 } else {73 } else {
74 pageStack.push(Qt.resolvedUrl("EditAlarmPage.qml"), {isNewAlarm: false, tempAlarm: model, alarmModel: alarmModel})74 mainStack.push(Qt.resolvedUrl("EditAlarmPage.qml"), {isNewAlarm: false, tempAlarm: model, alarmModel: alarmModel})
75 }75 }
76 }76 }
7777
7878
=== modified file 'app/alarm/AlarmModelComponent.qml'
--- app/alarm/AlarmModelComponent.qml 2015-10-22 16:49:23 +0000
+++ app/alarm/AlarmModelComponent.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/alarm/AlarmPage.qml'
--- app/alarm/AlarmPage.qml 2015-10-22 16:49:23 +0000
+++ app/alarm/AlarmPage.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -24,102 +24,105 @@
2424
25 readonly property bool isAlarmPage: true25 readonly property bool isAlarmPage: true
2626
27 title: i18n.tr("Alarms")
28 objectName: 'AlarmPage'27 objectName: 'AlarmPage'
29 flickable: null28 header: standardHeader
3029
31 Component.onCompleted: console.log("[LOG]: Alarm Page loaded")30 Component.onCompleted: console.log("[LOG]: Alarm Page loaded")
3231
33 states: [32 PageHeader {
34 PageHeadState {33 id: standardHeader
35 name: "default"34 title: i18n.tr("Alarms")
36 head: alarmPage.head35 leadingActionBar.actions: [
37 when: !alarmListView.ViewItems.selectMode36 Action {
3837 text: "close"
39 backAction: Action {38 iconName: "go-down"
40 iconName: "down"39 onTriggered: {
41 text: i18n.tr("Back")40 bottomEdge.collapse()
42 onTriggered: {41 }
43 pageStack.pop()42 }
44 }43 ]
45 }44 trailingActionBar.actions: [
4645 Action {
47 actions: [46 objectName: "addAlarmAction"
48 Action {47 iconName: "add"
49 objectName: "addAlarmAction"48 text: i18n.tr("Alarm")
50 iconName: "add"49 onTriggered: {
51 text: i18n.tr("Alarm")50 mainStack.push(Qt.resolvedUrl("EditAlarmPage.qml"))
52 onTriggered: {51 }
53 pageStack.push(Qt.resolvedUrl("EditAlarmPage.qml"))52 }
54 }53 ]
55 }54 }
56 ]55
57 },56 PageHeader {
5857 id: selectionHeader
59 PageHeadState {58 visible: alarmListView.ViewItems.selectMode
60 name: "selection"59 leadingActionBar.actions: [
61 head: alarmPage.head60 Action {
62 when: alarmListView.ViewItems.selectMode
63
64 backAction: Action {
65 iconName: "back"61 iconName: "back"
66 text: i18n.tr("Back")62 text: i18n.tr("Back")
67 onTriggered: {63 onTriggered: {
64 alarmPage.header = standardHeader
68 alarmListView.ViewItems.selectMode = false65 alarmListView.ViewItems.selectMode = false
69 }66 }
70 }67 }
7168 ]
72 actions: [69
73 Action {70 trailingActionBar.actions: [
74 text: {71 Action {
75 if(alarmListView.ViewItems.selectedIndices.length === alarmListView.count) {72 text: {
76 return i18n.tr("Select None")73 if(alarmListView.ViewItems.selectedIndices.length === alarmListView.count) {
77 } else {74 return i18n.tr("Select None")
78 return i18n.tr("Select All")75 } else {
79 }76 return i18n.tr("Select All")
80 }77 }
8178 }
82 iconSource: {79
83 if(alarmListView.ViewItems.selectedIndices.length === alarmListView.count) {80 iconSource: {
84 return Qt.resolvedUrl("../graphics/select-none.svg")81 if(alarmListView.ViewItems.selectedIndices.length === alarmListView.count) {
85 } else {82 return Qt.resolvedUrl("../graphics/select-none.svg")
86 return Qt.resolvedUrl("../graphics/select.svg")83 } else {
87 }84 return Qt.resolvedUrl("../graphics/select.svg")
88 }85 }
8986 }
90 onTriggered: {87
91 if(alarmListView.ViewItems.selectedIndices.length === alarmListView.count) {88 onTriggered: {
92 alarmListView.clearSelection()89 if(alarmListView.ViewItems.selectedIndices.length === alarmListView.count) {
93 } else {90 alarmListView.clearSelection()
94 alarmListView.selectAll()91 } else {
95 }92 alarmListView.selectAll()
96 }93 }
97 },94 }
9895 },
99 Action {96
100 iconName: "delete"97 Action {
101 text: i18n.tr("Delete")98 iconName: "delete"
102 enabled: alarmListView.ViewItems.selectedIndices.length !== 099 text: i18n.tr("Delete")
103100 enabled: alarmListView.ViewItems.selectedIndices.length !== 0
104 onTriggered: {101
105 var items = alarmListView.ViewItems.selectedIndices102 onTriggered: {
106103 var items = alarmListView.ViewItems.selectedIndices
107 for(var i=0; i < alarmListView.ViewItems.selectedIndices.length; i++) {104
108 var alarm = alarmModel.get(alarmListView.ViewItems.selectedIndices[i])105 for(var i=0; i < alarmListView.ViewItems.selectedIndices.length; i++) {
109 alarm.cancel()106 var alarm = alarmModel.get(alarmListView.ViewItems.selectedIndices[i])
110 }107 alarm.cancel()
111108 }
112 alarmListView.closeSelection()109
113 }110 alarmListView.closeSelection()
114 }111 }
115 ]112 }
116 }113 ]
117 ]114 }
118115
119 AlarmList {116 AlarmList {
120 id: alarmListView117 id: alarmListView
121 model: alarmModel118 model: alarmModel
122 anchors.fill: parent119 anchors {
120 top: alarmPage.header.bottom
121 left: parent.left
122 right: parent.right
123 bottom: parent.bottom
124 }
125
123 localTime: {126 localTime: {
124 return new Date127 return new Date
125 (128 (
@@ -137,7 +140,7 @@
137 Loader {140 Loader {
138 id: emptyStateLoader141 id: emptyStateLoader
139 anchors {142 anchors {
140 top: parent.top143 top: alarmPage.header.bottom
141 topMargin: units.gu(5)144 topMargin: units.gu(5)
142 left: parent.left145 left: parent.left
143 right: parent.right146 right: parent.right
144147
=== modified file 'app/alarm/AlarmRepeat.qml'
--- app/alarm/AlarmRepeat.qml 2016-02-15 21:09:17 +0000
+++ app/alarm/AlarmRepeat.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/alarm/AlarmSettingsPage.qml'
--- app/alarm/AlarmSettingsPage.qml 2016-02-15 20:02:54 +0000
+++ app/alarm/AlarmSettingsPage.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/alarm/AlarmUtils.qml'
--- app/alarm/AlarmUtils.qml 2015-12-11 02:13:16 +0000
+++ app/alarm/AlarmUtils.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -50,39 +50,6 @@
50 }50 }
51 }51 }
5252
53 // Function to set the bottom edge title with "Next Active in..."
54 function set_bottom_edge_title(alarmModel, clockTimeString) {
55 var bottom_edge_title = i18n.tr("No active alarms")
56
57 var clockTime = new Date
58 (
59 clockTimeString.split(":")[0],
60 clockTimeString.split(":")[1] - 1,
61 clockTimeString.split(":")[2],
62 clockTimeString.split(":")[3],
63 clockTimeString.split(":")[4],
64 clockTimeString.split(":")[5],
65 0
66 )
67 /*
68 Check if alarm model received is valid and has saved alarms and only
69 then proceed to find the next active alarm.
70 */
71 if (!alarmModel || !alarmModel.count) {
72 return bottom_edge_title
73 }
74
75 var activeAlarmDate = _get_next_active_alarm(alarmModel, clockTime)
76
77 // Return immediately if there are no active alarms found
78 if (!activeAlarmDate) {
79 return bottom_edge_title
80 }
81
82 bottom_edge_title = i18n.tr("Next Alarm %1").arg(get_time_to_alarm(activeAlarmDate, clockTime))
83 return bottom_edge_title
84 }
85
86 function get_utc_time(dateTime) {53 function get_utc_time(dateTime) {
87 return new Date(dateTime.getUTCFullYear(),54 return new Date(dateTime.getUTCFullYear(),
88 dateTime.getUTCMonth(),55 dateTime.getUTCMonth(),
@@ -153,27 +120,6 @@
153 INTERNAL FUNCTIONS120 INTERNAL FUNCTIONS
154 */121 */
155122
156 /*
157 Function to get the next active alarm. This function ignores alarms in the
158 past and also iteratively looks through every alarm since the alarm model
159 does not always list the active alarms in chronological order.
160 */
161 function _get_next_active_alarm(alarmModel, clockTime) {
162 var activeAlarmDate = undefined
163
164 for (var i=0; i<alarmModel.count; i++) {
165 var currentAlarm = alarmModel.get(i)
166 if (currentAlarm.enabled && currentAlarm.date > clockTime) {
167 if (activeAlarmDate === undefined ||
168 currentAlarm.date < activeAlarmDate) {
169 activeAlarmDate = currentAlarm.date
170 }
171 }
172 }
173
174 return activeAlarmDate
175 }
176
177 // Function to split time (in ms) into days, hours and minutes123 // Function to split time (in ms) into days, hours and minutes
178 function _split_time(totalTime) {124 function _split_time(totalTime) {
179 // increase by a minute, so we could make a nicer time125 // increase by a minute, so we could make a nicer time
180126
=== modified file 'app/alarm/EditAlarmPage.qml'
--- app/alarm/EditAlarmPage.qml 2016-02-17 22:19:15 +0000
+++ app/alarm/EditAlarmPage.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -31,22 +31,26 @@
31 property var tempAlarm31 property var tempAlarm
32 property bool isNewAlarm: true32 property bool isNewAlarm: true
3333
34 title: isNewAlarm ? i18n.tr("New alarm") : i18n.tr("Edit alarm")
35 visible: false34 visible: false
3635
37 head.actions: Action {36 header: PageHeader {
38 id: saveAlarmButton37 title: isNewAlarm ? i18n.tr("New alarm") : i18n.tr("Edit alarm")
39 iconName: "ok"38 trailingActionBar.actions: [
40 objectName: "saveAlarmAction"39 Action {
41 text: i18n.tr("Alarm")40 id: saveAlarmButton
42 onTriggered: {41 iconName: "ok"
43 if(isNewAlarm) {42 objectName: "saveAlarmAction"
44 saveNewAlarm()43 text: i18n.tr("Alarm")
45 }44 onTriggered: {
46 else {45 if(isNewAlarm) {
47 updateAlarm()46 saveNewAlarm()
48 }47 }
49 }48 else {
49 updateAlarm()
50 }
51 }
52 }
53 ]
50 }54 }
5155
52 Component.onCompleted: {56 Component.onCompleted: {
@@ -225,7 +229,7 @@
225 id: _alarmColumn229 id: _alarmColumn
226230
227 width: parent.width231 width: parent.width
228 anchors.top: parent.top232 anchors.top: _addAlarmPage.header.bottom
229233
230 DatePicker {234 DatePicker {
231 id: _timePicker235 id: _timePicker
232236
=== modified file 'app/alarm/SoundPeerPicker.qml'
--- app/alarm/SoundPeerPicker.qml 2015-10-22 16:49:23 +0000
+++ app/alarm/SoundPeerPicker.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/clock/ClockPage.qml'
--- app/clock/ClockPage.qml 2016-02-18 14:47:46 +0000
+++ app/clock/ClockPage.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -31,13 +31,13 @@
31 // Property to keep track of the clock mode31 // Property to keep track of the clock mode
32 property alias isDigital: clock.isDigital32 property alias isDigital: clock.isDigital
3333
34 // String with not localized date and time in format "yyyy:MM:dd:hh:mm:ss", eg.: "2015:10:05:16:10:15"34 // String with not localized date and time in format "yyyy:MM:dd:hh:mm:ss", eg.: "2016:10:05:16:10:15"
35 property string notLocalizedClockTimeString35 property string notLocalizedClockTimeString
3636
37 // String with localized time, eg.: "4:10 PM"37 // String with localized time, eg.: "4:10 PM"
38 property string localizedClockTimeString38 property string localizedClockTimeString
3939
40 // String with localized date, eg.: "Thursday, 17 September 2015"40 // String with localized date, eg.: "Thursday, 17 September 2016"
41 property string localizedClockDateString41 property string localizedClockDateString
4242
43 // Property to keep track of app cold start status43 // Property to keep track of app cold start status
4444
=== modified file 'app/clock/MainClock.qml'
--- app/clock/MainClock.qml 2016-02-17 19:53:15 +0000
+++ app/clock/MainClock.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/ActionIcon.qml'
--- app/components/ActionIcon.qml 2016-02-15 16:00:47 +0000
+++ app/components/ActionIcon.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/AnalogMode.qml'
--- app/components/AnalogMode.qml 2016-02-22 13:21:13 +0000
+++ app/components/AnalogMode.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/AnalogShadow.qml'
--- app/components/AnalogShadow.qml 2015-10-22 16:49:23 +0000
+++ app/components/AnalogShadow.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/Clock.qml'
--- app/components/Clock.qml 2016-02-15 17:05:25 +0000
+++ app/components/Clock.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -41,13 +41,13 @@
41Item {41Item {
42 id: _clockContainer42 id: _clockContainer
4343
44 // String with not localized date and time in format "yyyy:MM:dd:hh:mm:ss", eg.: "2015:10:05:16:10:15"44 // String with not localized date and time in format "yyyy:MM:dd:hh:mm:ss", eg.: "2016:10:05:16:10:15"
45 property string notLocalizedDateTimeString45 property string notLocalizedDateTimeString
4646
47 // String with localized time, eg.: "4:10 PM"47 // String with localized time, eg.: "4:10 PM"
48 property string localizedTimeString48 property string localizedTimeString
4949
50 // String with localized date, eg.: "Thursday, 17 September 2015"50 // String with localized date, eg.: "Thursday, 17 September 2016"
51 property string localizedDateString51 property string localizedDateString
5252
53 // Property to keep track of the clock mode53 // Property to keep track of the clock mode
5454
=== modified file 'app/components/ClockCircle.qml'
--- app/components/ClockCircle.qml 2016-02-18 15:34:29 +0000
+++ app/components/ClockCircle.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/DigitalMode.qml'
--- app/components/DigitalMode.qml 2016-02-17 19:53:15 +0000
+++ app/components/DigitalMode.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/DigitalShadow.qml'
--- app/components/DigitalShadow.qml 2015-10-22 16:49:23 +0000
+++ app/components/DigitalShadow.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/EmptyState.qml'
--- app/components/EmptyState.qml 2016-02-16 17:29:34 +0000
+++ app/components/EmptyState.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/ExpandableListItem.qml'
--- app/components/ExpandableListItem.qml 2016-02-15 19:36:13 +0000
+++ app/components/ExpandableListItem.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/HeaderNavigation.qml'
--- app/components/HeaderNavigation.qml 2016-02-17 22:19:15 +0000
+++ app/components/HeaderNavigation.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/components/Shadow.qml'
--- app/components/Shadow.qml 2015-10-22 16:49:23 +0000
+++ app/components/Shadow.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/stopwatch/LapListView.qml'
--- app/stopwatch/LapListView.qml 2016-02-17 22:19:15 +0000
+++ app/stopwatch/LapListView.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/stopwatch/StopwatchFace.qml'
--- app/stopwatch/StopwatchFace.qml 2016-02-16 17:07:09 +0000
+++ app/stopwatch/StopwatchFace.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/stopwatch/StopwatchPage.qml'
--- app/stopwatch/StopwatchPage.qml 2016-02-17 22:19:15 +0000
+++ app/stopwatch/StopwatchPage.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/ubuntu-clock-app.qml'
--- app/ubuntu-clock-app.qml 2016-02-25 17:50:48 +0000
+++ app/ubuntu-clock-app.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -126,8 +126,6 @@
126 */126 */
127127
128 alarmModel: alarmModelLoader.item128 alarmModel: alarmModelLoader.item
129 bottomEdgeEnabled: alarmModelLoader.status === Loader.Ready && alarmModelLoader.item.isReady && isClockPage
130
131 /*129 /*
132 FIXME: When the upstream QT bug at130 FIXME: When the upstream QT bug at
133 https://bugreports.qt-project.org/browse/QTBUG-40275 is fixed131 https://bugreports.qt-project.org/browse/QTBUG-40275 is fixed
134132
=== modified file 'app/upstreamcomponents/CMakeLists.txt'
--- app/upstreamcomponents/CMakeLists.txt 2015-08-29 01:27:20 +0000
+++ app/upstreamcomponents/CMakeLists.txt 2016-02-25 23:11:58 +0000
@@ -1,8 +1,6 @@
1set(UPSTREAM_COMPONENTS_QML_JS_FILES1set(UPSTREAM_COMPONENTS_QML_JS_FILES
2 FakeHeader.qml
3 FastScroll.js2 FastScroll.js
4 FastScroll.qml3 FastScroll.qml
5 PageWithBottomEdge.qml
6)4)
75
8# make the files visible in the qtcreator tree6# make the files visible in the qtcreator tree
97
=== removed file 'app/upstreamcomponents/FakeHeader.qml'
--- app/upstreamcomponents/FakeHeader.qml 2015-12-11 02:11:11 +0000
+++ app/upstreamcomponents/FakeHeader.qml 1970-01-01 00:00:00 +0000
@@ -1,39 +0,0 @@
1/*
2 * Copyright (C) 2014-2015 Canonical Ltd
3 *
4 * This file is part of Ubuntu Clock App
5 *
6 * Ubuntu Clock App is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 3 as
8 * published by the Free Software Foundation.
9 *
10 * Ubuntu Clock App is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18
19import QtQuick 2.4
20import Ubuntu.Components 1.3
21
22Column {
23 id: fakeHeader
24
25 height: units.gu(6.125)
26
27 Rectangle {
28 height: units.gu(6)
29 width: parent.width
30 color: Theme.palette.normal.background
31 }
32
33 Rectangle {
34 color: "#C9C9C9"
35 height: units.gu(0.125)
36 anchors.left: parent.left
37 anchors.right: parent.right
38 }
39}
400
=== removed file 'app/upstreamcomponents/PageWithBottomEdge.qml'
--- app/upstreamcomponents/PageWithBottomEdge.qml 2015-12-11 02:11:11 +0000
+++ app/upstreamcomponents/PageWithBottomEdge.qml 1970-01-01 00:00:00 +0000
@@ -1,449 +0,0 @@
1/*
2 * Copyright (C) 2014 Canonical, Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; version 3.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17/*
18 Example:
19
20 MainView {
21 objectName: "mainView"
22
23 applicationName: "com.ubuntu.developer.boiko.bottomedge"
24
25 width: units.gu(100)
26 height: units.gu(75)
27
28 Component {
29 id: pageComponent
30
31 PageWithBottomEdge {
32 id: mainPage
33 title: i18n.tr("Main Page")
34
35 Rectangle {
36 anchors.fill: parent
37 color: "white"
38 }
39
40 bottomEdgePageComponent: Page {
41 title: "Contents"
42 anchors.fill: parent
43 //anchors.topMargin: contentsPage.flickable.contentY
44
45 ListView {
46 anchors.fill: parent
47 model: 50
48 delegate: ListItems.Standard {
49 text: "One Content Item: " + index
50 }
51 }
52 }
53 bottomEdgeTitle: i18n.tr("Bottom edge action")
54 }
55 }
56
57 PageStack {
58 id: stack
59 Component.onCompleted: stack.push(pageComponent)
60 }
61 }
62
63*/
64
65import QtQuick 2.4
66import Ubuntu.Components 1.3
67
68Page {
69 id: page
70
71 property alias bottomEdgePageComponent: edgeLoader.sourceComponent
72 property alias bottomEdgePageSource: edgeLoader.source
73 property alias bottomEdgeTitle: tipLabel.text
74 property bool bottomEdgeEnabled: true
75 property int bottomEdgeExpandThreshold: page.height * 0.2
76 property int bottomEdgeExposedArea: bottomEdge.state !== "expanded" ? (page.height - bottomEdge.y - bottomEdge.tipHeight) : _areaWhenExpanded
77 property bool reloadBottomEdgePage: true
78
79 readonly property alias bottomEdgePage: edgeLoader.item
80 readonly property bool isReady: ((bottomEdge.y === fakeHeader.height) && bottomEdgePageLoaded && edgeLoader.item.active)
81 readonly property bool isCollapsed: (bottomEdge.y === page.height)
82 readonly property bool bottomEdgePageLoaded: (edgeLoader.status == Loader.Ready)
83
84 property bool _showEdgePageWhenReady: false
85 property int _areaWhenExpanded: 0
86
87 signal bottomEdgeReleased()
88 signal bottomEdgeDismissed()
89
90 function showBottomEdgePage(source, properties)
91 {
92 edgeLoader.setSource(source, properties)
93 _showEdgePageWhenReady = true
94 }
95
96 function setBottomEdgePage(source, properties)
97 {
98 edgeLoader.setSource(source, properties)
99 }
100
101 function _pushPage()
102 {
103 if (edgeLoader.status === Loader.Ready) {
104 edgeLoader.item.active = true
105 page.pageStack.push(edgeLoader.item)
106 if (edgeLoader.item.flickable) {
107 edgeLoader.item.flickable.contentY = -page.header.height
108 edgeLoader.item.flickable.returnToBounds()
109 }
110 if (edgeLoader.item.ready)
111 edgeLoader.item.ready()
112 }
113 }
114
115
116 Component.onCompleted: {
117 // avoid a binding on the expanded height value
118 var expandedHeight = height;
119 _areaWhenExpanded = expandedHeight;
120 }
121
122 onActiveChanged: {
123 if (active) {
124 bottomEdge.state = "collapsed"
125 }
126 }
127
128 onBottomEdgePageLoadedChanged: {
129 if (_showEdgePageWhenReady && bottomEdgePageLoaded) {
130 bottomEdge.state = "expanded"
131 _showEdgePageWhenReady = false
132 }
133 }
134
135 Rectangle {
136 id: bgVisual
137
138 color: "black"
139 anchors.fill: page
140 opacity: 0.7 * ((page.height - bottomEdge.y) / page.height)
141 z: 1
142 }
143
144 UbuntuShape {
145 id: tip
146 objectName: "bottomEdgeTip"
147
148 property bool hiden: (activeFocus === false) ||
149 ((bottomEdge.y - units.gu(1)) < tip.y)
150
151 property bool isAnimating: true
152
153 enabled: mouseArea.enabled
154 visible: page.bottomEdgeEnabled
155 anchors {
156 bottom: parent.bottom
157 horizontalCenter: bottomEdge.horizontalCenter
158 bottomMargin: hiden ? - height + units.gu(1) : -units.gu(1)
159 Behavior on bottomMargin {
160 SequentialAnimation {
161 // wait some msecs in case of the focus change again, to avoid flickering
162 PauseAnimation {
163 duration: 300
164 }
165 UbuntuNumberAnimation {
166 duration: UbuntuAnimation.SnapDuration
167 }
168 ScriptAction {
169 script: tip.isAnimating = false
170 }
171 }
172 }
173 }
174
175 z: 1
176 width: tipLabel.paintedWidth + units.gu(6)
177 height: bottomEdge.tipHeight + units.gu(1)
178 backgroundColor: Theme.palette.normal.overlay
179 Label {
180 id: tipLabel
181
182 anchors {
183 top: parent.top
184 left: parent.left
185 right: parent.right
186 }
187 height: bottomEdge.tipHeight
188 verticalAlignment: Text.AlignVCenter
189 horizontalAlignment: Text.AlignHCenter
190 opacity: tip.hiden ? 0.0 : 1.0
191 Behavior on opacity {
192 UbuntuNumberAnimation {
193 duration: UbuntuAnimation.SnapDuration
194 }
195 }
196 }
197 }
198
199 Rectangle {
200 id: shadow
201
202 anchors {
203 left: parent.left
204 right: parent.right
205 bottom: parent.bottom
206 }
207 height: units.gu(1)
208 z: 1
209 opacity: 0.0
210 gradient: Gradient {
211 GradientStop { position: 0.0; color: "transparent" }
212 GradientStop { position: 1.0; color: Qt.rgba(0, 0, 0, 0.2) }
213 }
214 }
215
216 MouseArea {
217 id: mouseArea
218
219 property real previousY: -1
220 property string dragDirection: "None"
221
222 preventStealing: true
223 drag {
224 axis: Drag.YAxis
225 target: bottomEdge
226 minimumY: bottomEdge.pageStartY
227 maximumY: page.height
228 }
229 enabled: edgeLoader.status == Loader.Ready
230 visible: page.bottomEdgeEnabled
231
232 anchors {
233 left: parent.left
234 right: parent.right
235 bottom: parent.bottom
236 }
237 height: bottomEdge.tipHeight
238 z: 1
239
240 onReleased: {
241 page.bottomEdgeReleased()
242 if ((dragDirection === "BottomToTop") &&
243 bottomEdge.y < (page.height - bottomEdgeExpandThreshold - bottomEdge.tipHeight)) {
244 bottomEdge.state = "expanded"
245 } else {
246 bottomEdge.state = "collapsed"
247 }
248 previousY = -1
249 dragDirection = "None"
250 }
251
252 onPressed: {
253 previousY = mouse.y
254 tip.forceActiveFocus()
255 }
256
257 onMouseYChanged: {
258 var yOffset = previousY - mouseY
259 // skip if was a small move
260 if (Math.abs(yOffset) <= units.gu(2)) {
261 return
262 }
263 previousY = mouseY
264 dragDirection = yOffset > 0 ? "BottomToTop" : "TopToBottom"
265 }
266 }
267
268 FakeHeader {
269 id: fakeHeader
270
271 anchors {
272 left: parent.left
273 right: parent.right
274 }
275 y: -fakeHeader.height + (fakeHeader.height * (page.height - bottomEdge.y)) / (page.height - fakeHeader.height)
276 z: bgVisual.z + 1
277
278 Behavior on y {
279 UbuntuNumberAnimation {
280 duration: UbuntuAnimation.SnapDuration
281 }
282 }
283 }
284
285 Rectangle {
286 id: bottomEdge
287 objectName: "bottomEdge"
288
289 readonly property int tipHeight: units.gu(3)
290 readonly property int pageStartY: fakeHeader.height
291
292 z: 1
293 color: Theme.palette.normal.background
294 clip: true
295 anchors {
296 left: parent.left
297 right: parent.right
298 }
299 height: page.height
300 y: height
301
302 visible: !page.isCollapsed
303 state: "collapsed"
304 states: [
305 State {
306 name: "collapsed"
307 PropertyChanges {
308 target: bottomEdge
309 y: bottomEdge.height
310 }
311 PropertyChanges {
312 target: fakeHeader
313 y: -fakeHeader.height
314 }
315 },
316 State {
317 name: "expanded"
318 PropertyChanges {
319 target: bottomEdge
320 y: bottomEdge.pageStartY
321 }
322 PropertyChanges {
323 target: fakeHeader
324 y: 0
325 }
326 },
327 State {
328 name: "floating"
329 when: mouseArea.drag.active
330 PropertyChanges {
331 target: shadow
332 opacity: 1.0
333 }
334 }
335 ]
336
337 transitions: [
338 Transition {
339 to: "expanded"
340 SequentialAnimation {
341 alwaysRunToEnd: true
342 ParallelAnimation {
343 SmoothedAnimation {
344 target: bottomEdge
345 property: "y"
346 duration: UbuntuAnimation.FastDuration
347 easing.type: Easing.Linear
348 }
349 SmoothedAnimation {
350 target: fakeHeader
351 property: "y"
352 duration: UbuntuAnimation.FastDuration
353 easing.type: Easing.Linear
354 }
355 }
356 SmoothedAnimation {
357 target: edgeLoader
358 property: "anchors.topMargin"
359 to: - units.gu(4)
360 duration: UbuntuAnimation.FastDuration
361 easing.type: Easing.Linear
362 }
363 SmoothedAnimation {
364 target: edgeLoader
365 property: "anchors.topMargin"
366 to: 0
367 duration: UbuntuAnimation.FastDuration
368 easing: UbuntuAnimation.StandardEasing
369 }
370 ScriptAction {
371 script: page._pushPage()
372 }
373 }
374 },
375 Transition {
376 from: "expanded"
377 to: "collapsed"
378 SequentialAnimation {
379 alwaysRunToEnd: true
380
381 ScriptAction {
382 script: {
383 Qt.inputMethod.hide()
384 edgeLoader.item.parent = edgeLoader
385 edgeLoader.item.anchors.fill = edgeLoader
386 edgeLoader.item.active = false
387 }
388 }
389 ParallelAnimation {
390 SmoothedAnimation {
391 target: bottomEdge
392 property: "y"
393 duration: UbuntuAnimation.SlowDuration
394 }
395 SmoothedAnimation {
396 target: fakeHeader
397 property: "y"
398 duration: UbuntuAnimation.SlowDuration
399 }
400 }
401 ScriptAction {
402 script: {
403 // destroy current bottom page
404 if (page.reloadBottomEdgePage) {
405 edgeLoader.active = false
406 } else {
407 tip.forceActiveFocus()
408 }
409
410 // notify
411 page.bottomEdgeDismissed()
412
413 edgeLoader.active = true
414 }
415 }
416 }
417 },
418 Transition {
419 from: "floating"
420 to: "collapsed"
421 UbuntuNumberAnimation {
422 target: bottomEdge
423 property: "opacity"
424 }
425 }
426 ]
427
428 Loader {
429 id: edgeLoader
430
431 asynchronous: true
432 anchors.fill: parent
433 //WORKAROUND: The SDK move the page contents down to allocate space for the header we need to avoid that during the page dragging
434 Binding {
435 target: edgeLoader.status === Loader.Ready ? edgeLoader : null
436 property: "anchors.topMargin"
437 value: edgeLoader.item && edgeLoader.item.flickable ? edgeLoader.item.flickable.contentY : 0
438 when: !page.isReady
439 }
440
441 onLoaded: {
442 tip.forceActiveFocus()
443 if (page.isReady && edgeLoader.item.active !== true) {
444 page._pushPage()
445 }
446 }
447 }
448 }
449}
4500
=== modified file 'app/upstreamcomponents/README.components'
--- app/upstreamcomponents/README.components 2015-08-29 01:27:20 +0000
+++ app/upstreamcomponents/README.components 2016-02-25 23:11:58 +0000
@@ -4,10 +4,6 @@
44
5#### Links5#### Links
66
7PageWithBottomEdge.qml
8
9https://bazaar.launchpad.net/~phablet-team/address-book-app/trunk/view/head:/src/imports/Ubuntu/Contacts/PageWithBottomEdge.qml
10
11FastScroll.js7FastScroll.js
128
13https://bazaar.launchpad.net/~phablet-team/address-book-app/trunk/view/head:/src/imports/Ubuntu/Contacts/FastScroll.js9https://bazaar.launchpad.net/~phablet-team/address-book-app/trunk/view/head:/src/imports/Ubuntu/Contacts/FastScroll.js
1410
=== modified file 'app/worldclock/AddWorldCityButton.qml'
--- app/worldclock/AddWorldCityButton.qml 2016-02-17 19:53:15 +0000
+++ app/worldclock/AddWorldCityButton.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'app/worldclock/UserWorldCityDelegate.qml'
--- app/worldclock/UserWorldCityDelegate.qml 2016-02-17 21:30:07 +0000
+++ app/worldclock/UserWorldCityDelegate.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -33,6 +33,7 @@
3333
34 height: units.gu(9)34 height: units.gu(9)
35 divider.visible: false35 divider.visible: false
36 highlightColor: "Transparent"
3637
37 Item {38 Item {
38 id: delegate39 id: delegate
3940
=== modified file 'app/worldclock/UserWorldCityList.qml'
--- app/worldclock/UserWorldCityList.qml 2015-10-22 16:49:23 +0000
+++ app/worldclock/UserWorldCityList.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
@@ -21,12 +21,13 @@
21import U1db 1.0 as U1db21import U1db 1.0 as U1db
22import Ubuntu.Components 1.322import Ubuntu.Components 1.3
2323
24ListView {24UbuntuListView {
25 id: worldCityColumn25 id: worldCityColumn
26 objectName: "userWorldCityRepeater"26 objectName: "userWorldCityRepeater"
2727
28 clip: true28 clip: true
29 anchors.fill: parent29 anchors.fill: parent
30 currentIndex: -1
3031
31 onFlickStarted: {32 onFlickStarted: {
32 forceActiveFocus()33 forceActiveFocus()
3334
=== modified file 'app/worldclock/WorldCityList.qml'
--- app/worldclock/WorldCityList.qml 2016-02-25 18:41:20 +0000
+++ app/worldclock/WorldCityList.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Alarm/backend.cpp'
--- backend/modules/Alarm/backend.cpp 2015-08-26 23:35:50 +0000
+++ backend/modules/Alarm/backend.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Alarm/backend.h'
--- backend/modules/Alarm/backend.h 2015-08-25 15:29:02 +0000
+++ backend/modules/Alarm/backend.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Alarm/settings.cpp'
--- backend/modules/Alarm/settings.cpp 2015-08-25 15:29:02 +0000
+++ backend/modules/Alarm/settings.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Alarm/settings.h'
--- backend/modules/Alarm/settings.h 2015-08-25 15:29:02 +0000
+++ backend/modules/Alarm/settings.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Alarm/sound.cpp'
--- backend/modules/Alarm/sound.cpp 2015-08-25 15:41:50 +0000
+++ backend/modules/Alarm/sound.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Alarm/sound.h'
--- backend/modules/Alarm/sound.h 2015-09-11 13:54:12 +0000
+++ backend/modules/Alarm/sound.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Stopwatch/backend.cpp'
--- backend/modules/Stopwatch/backend.cpp 2015-09-09 21:30:53 +0000
+++ backend/modules/Stopwatch/backend.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Stopwatch/backend.h'
--- backend/modules/Stopwatch/backend.h 2015-08-24 23:37:28 +0000
+++ backend/modules/Stopwatch/backend.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Stopwatch/engine.cpp'
--- backend/modules/Stopwatch/engine.cpp 2015-09-11 13:37:43 +0000
+++ backend/modules/Stopwatch/engine.cpp 2016-02-25 23:11:58 +0000
@@ -1,6 +1,6 @@
1/*****************************************************************************1/*****************************************************************************
2 * Copyright: 2015 Michael Zanetti <michael_zanetti@gmx.net> *2 * Copyright: 2015-2016 Michael Zanetti <michael_zanetti@gmx.net> *
3 * 2015 Bartosz Kosiorek <gang65@poczta.onet.pl> *3 * 2015-2016 Bartosz Kosiorek <gang65@poczta.onet.pl> *
4 * *4 * *
5 * This prject is free software: you can redistribute it and/or modify *5 * This prject is free software: you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *6 * it under the terms of the GNU General Public License as published by *
77
=== modified file 'backend/modules/Stopwatch/engine.h'
--- backend/modules/Stopwatch/engine.h 2015-09-11 13:37:43 +0000
+++ backend/modules/Stopwatch/engine.h 2016-02-25 23:11:58 +0000
@@ -1,6 +1,6 @@
1/*****************************************************************************1/*****************************************************************************
2 * Copyright: 2015 Michael Zanetti <michael_zanetti@gmx.net> *2 * Copyright: 2015-2016 Michael Zanetti <michael_zanetti@gmx.net> *
3 * 2015 Bartosz Kosiorek <gang65@poczta.onet.pl> *3 * 2015-2016 Bartosz Kosiorek <gang65@poczta.onet.pl> *
4 * *4 * *
5 * This prject is free software: you can redistribute it and/or modify *5 * This prject is free software: you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *6 * it under the terms of the GNU General Public License as published by *
77
=== modified file 'backend/modules/Stopwatch/formattime.cpp'
--- backend/modules/Stopwatch/formattime.cpp 2016-02-15 15:05:13 +0000
+++ backend/modules/Stopwatch/formattime.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/Stopwatch/formattime.h'
--- backend/modules/Stopwatch/formattime.h 2015-09-11 13:54:12 +0000
+++ backend/modules/Stopwatch/formattime.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/backend.cpp'
--- backend/modules/WorldClock/backend.cpp 2015-08-26 23:30:10 +0000
+++ backend/modules/WorldClock/backend.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/backend.h'
--- backend/modules/WorldClock/backend.h 2015-08-25 15:54:39 +0000
+++ backend/modules/WorldClock/backend.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/datetime.cpp'
--- backend/modules/WorldClock/datetime.cpp 2015-10-06 22:34:27 +0000
+++ backend/modules/WorldClock/datetime.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/datetime.h'
--- backend/modules/WorldClock/datetime.h 2015-10-06 22:34:27 +0000
+++ backend/modules/WorldClock/datetime.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/generictimezonemodel.cpp'
--- backend/modules/WorldClock/generictimezonemodel.cpp 2015-08-29 01:27:20 +0000
+++ backend/modules/WorldClock/generictimezonemodel.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/generictimezonemodel.h'
--- backend/modules/WorldClock/generictimezonemodel.h 2015-08-29 01:27:20 +0000
+++ backend/modules/WorldClock/generictimezonemodel.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/geolocation.cpp'
--- backend/modules/WorldClock/geolocation.cpp 2015-08-25 15:54:39 +0000
+++ backend/modules/WorldClock/geolocation.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/geolocation.h'
--- backend/modules/WorldClock/geolocation.h 2015-08-25 15:54:39 +0000
+++ backend/modules/WorldClock/geolocation.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/jsontimezonemodel.cpp'
--- backend/modules/WorldClock/jsontimezonemodel.cpp 2015-08-25 16:11:38 +0000
+++ backend/modules/WorldClock/jsontimezonemodel.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/jsontimezonemodel.h'
--- backend/modules/WorldClock/jsontimezonemodel.h 2015-08-25 16:11:38 +0000
+++ backend/modules/WorldClock/jsontimezonemodel.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/statictimezonemodel.cpp'
--- backend/modules/WorldClock/statictimezonemodel.cpp 2015-09-10 11:10:13 +0000
+++ backend/modules/WorldClock/statictimezonemodel.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/statictimezonemodel.h'
--- backend/modules/WorldClock/statictimezonemodel.h 2015-08-25 16:11:38 +0000
+++ backend/modules/WorldClock/statictimezonemodel.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2* Copyright (C) 2015 Canonical Ltd2* Copyright (C) 2015-2016 Canonical Ltd
3*3*
4* This file is part of Ubuntu Clock App4* This file is part of Ubuntu Clock App
5*5*
66
=== modified file 'backend/modules/WorldClock/timezonemodel.cpp'
--- backend/modules/WorldClock/timezonemodel.cpp 2015-10-06 22:02:45 +0000
+++ backend/modules/WorldClock/timezonemodel.cpp 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'backend/modules/WorldClock/timezonemodel.h'
--- backend/modules/WorldClock/timezonemodel.h 2015-09-17 05:36:41 +0000
+++ backend/modules/WorldClock/timezonemodel.h 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'debian/changelog'
--- debian/changelog 2016-02-02 23:45:47 +0000
+++ debian/changelog 2016-02-25 23:11:58 +0000
@@ -5,10 +5,26 @@
5 * Move to use the new SDK components v1.3 (LP: #1508363)5 * Move to use the new SDK components v1.3 (LP: #1508363)
6 * Fix continously move the alarm volume slider to the desired value (LP: #1492584)6 * Fix continously move the alarm volume slider to the desired value (LP: #1492584)
7 * Fix wrong alarm caption which appears during high load (LP: #1530000)7 * Fix wrong alarm caption which appears during high load (LP: #1530000)
8 * Implemented new UI design according to design specs (LP: #1528241)
9 * Removed SURU bar from all views (LP: #1543492)
10
11 [ Nicholas Skaggs ]
12 * Fixed test launching and added option for building with SDK
13 * Removed fixtures and debug_print_trees
814
9 [ Andrew Hayzen ]15 [ Andrew Hayzen ]
10 * Fixes for various autopilot issues (LP: #1535488)16 * Fixes for various autopilot issues (LP: #1535488)
1117
18 [ Michal Predotka ]
19 * Fix stopwatch start button being too wide (LP: #1543475)
20 * Updated all list items to the new ListItemLayout (LP: #1543472)
21 * Added ability to start/stop stopwatch by clicking on clock face (LP: #1543479)
22 * Fix settings page list items using the wrong font color (LP: #1543501)
23
24 [ Nekhelesh Ramananthan ]
25 * Fix 'Shutter' effect animation on title bar when opening bottom edge (LP: #1543496)
26 * Migrate to the new SDK Bottom edge (LP: #1549988)
27
12 -- Bartosz Kosiorek <gang65@poczta.onet.pl> Wed, 30 Dec 2015 01:43:24 +010028 -- Bartosz Kosiorek <gang65@poczta.onet.pl> Wed, 30 Dec 2015 01:43:24 +0100
1329
14ubuntu-clock-app (3.6) vivid; urgency=medium30ubuntu-clock-app (3.6) vivid; urgency=medium
1531
=== modified file 'po/com.ubuntu.clock.pot'
--- po/com.ubuntu.clock.pot 2016-02-17 21:47:42 +0000
+++ po/com.ubuntu.clock.pot 2016-02-25 23:11:58 +0000
@@ -1,6 +1,6 @@
1# SOME DESCRIPTIVE TITLE.1# SOME DESCRIPTIVE TITLE.
2# Copyright (C) YEAR Canonical Ltd.2# Copyright (C) YEAR Canonical Ltd.
3# This file is distributed under the same license as the PACKAGE package.3# This file is distributed under the same license as the package.
4# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.4# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5#5#
6#, fuzzy6#, fuzzy
@@ -8,7 +8,7 @@
8msgstr ""8msgstr ""
9"Project-Id-Version: \n"9"Project-Id-Version: \n"
10"Report-Msgid-Bugs-To: \n"10"Report-Msgid-Bugs-To: \n"
11"POT-Creation-Date: 2016-02-17 22:46+0100\n"11"POT-Creation-Date: 2016-02-26 00:06+0100\n"
12"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"12"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"13"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14"Language-Team: LANGUAGE <LL@li.org>\n"14"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,51 +18,46 @@
18"Content-Transfer-Encoding: 8bit\n"18"Content-Transfer-Encoding: 8bit\n"
19"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"19"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
2020
21#: ../app/MainPage.qml:53 ../app/alarm/AlarmUtils.qml:5521#: ../app/MainPage.qml:63 ../app/alarm/AlarmPage.qml:34
22msgid "No active alarms"22msgid "Alarms"
23msgstr ""23msgstr ""
2424
25#: ../app/alarm/AlarmLabel.qml:33 ../app/alarm/AlarmLabel.qml:7125#: ../app/alarm/AlarmLabel.qml:33 ../app/alarm/AlarmLabel.qml:71
26#: ../app/alarm/EditAlarmPage.qml:29426#: ../app/alarm/EditAlarmPage.qml:297
27msgid "Label"27msgid "Label"
28msgstr ""28msgstr ""
2929
30#: ../app/alarm/AlarmList.qml:61 ../app/alarm/AlarmPage.qml:10130#: ../app/alarm/AlarmList.qml:61 ../app/alarm/AlarmPage.qml:99
31#: ../app/worldclock/UserWorldCityList.qml:6931#: ../app/worldclock/UserWorldCityList.qml:70
32msgid "Delete"32msgid "Delete"
33msgstr ""33msgstr ""
3434
35#: ../app/alarm/AlarmPage.qml:2735#: ../app/alarm/AlarmPage.qml:48 ../app/alarm/EditAlarmPage.qml:43
36msgid "Alarms"36#: ../app/alarm/EditAlarmPage.qml:188
37msgid "Alarm"
37msgstr ""38msgstr ""
3839
39#: ../app/alarm/AlarmPage.qml:41 ../app/alarm/AlarmPage.qml:6640#: ../app/alarm/AlarmPage.qml:62 ../app/worldclock/WorldCityList.qml:79
40#: ../app/worldclock/WorldCityList.qml:79
41msgid "Back"41msgid "Back"
42msgstr ""42msgstr ""
4343
44#: ../app/alarm/AlarmPage.qml:51 ../app/alarm/EditAlarmPage.qml:4144#: ../app/alarm/AlarmPage.qml:74
45#: ../app/alarm/EditAlarmPage.qml:185
46msgid "Alarm"
47msgstr ""
48
49#: ../app/alarm/AlarmPage.qml:76
50msgid "Select None"45msgid "Select None"
51msgstr ""46msgstr ""
5247
53#: ../app/alarm/AlarmPage.qml:78 ../app/alarm/AlarmRepeat.qml:5948#: ../app/alarm/AlarmPage.qml:76 ../app/alarm/AlarmRepeat.qml:59
54msgid "Select All"49msgid "Select All"
55msgstr ""50msgstr ""
5651
57#: ../app/alarm/AlarmPage.qml:15252#: ../app/alarm/AlarmPage.qml:155
58msgid "No saved alarms"53msgid "No saved alarms"
59msgstr ""54msgstr ""
6055
61#: ../app/alarm/AlarmPage.qml:15356#: ../app/alarm/AlarmPage.qml:156
62msgid "Tap the + icon to add an alarm"57msgid "Tap the + icon to add an alarm"
63msgstr ""58msgstr ""
6459
65#: ../app/alarm/AlarmRepeat.qml:36 ../app/alarm/EditAlarmPage.qml:27960#: ../app/alarm/AlarmRepeat.qml:36 ../app/alarm/EditAlarmPage.qml:282
66msgid "Repeat"61msgid "Repeat"
67msgstr ""62msgstr ""
6863
@@ -104,7 +99,7 @@
104msgid "Change time and date"99msgid "Change time and date"
105msgstr ""100msgstr ""
106101
107#: ../app/alarm/AlarmSound.qml:30 ../app/alarm/EditAlarmPage.qml:314102#: ../app/alarm/AlarmSound.qml:30 ../app/alarm/EditAlarmPage.qml:317
108msgid "Sound"103msgid "Sound"
109msgstr ""104msgstr ""
110105
@@ -136,39 +131,34 @@
136msgid "Daily"131msgid "Daily"
137msgstr ""132msgstr ""
138133
139#: ../app/alarm/AlarmUtils.qml:82134#: ../app/alarm/AlarmUtils.qml:70
140#, qt-format
141msgid "Next Alarm %1"
142msgstr ""
143
144#: ../app/alarm/AlarmUtils.qml:103
145msgid "Alarm Passed"135msgid "Alarm Passed"
146msgstr ""136msgstr ""
147137
148#: ../app/alarm/AlarmUtils.qml:113138#: ../app/alarm/AlarmUtils.qml:80
149#, no-c-format, qt-format139#, no-c-format, qt-format
150msgid "in %1d %2h %3m"140msgid "in %1d %2h %3m"
151msgstr ""141msgstr ""
152142
153#: ../app/alarm/AlarmUtils.qml:123143#: ../app/alarm/AlarmUtils.qml:90
154#, no-c-format, qt-format144#, no-c-format, qt-format
155msgid "in %1h %2m"145msgid "in %1h %2m"
156msgstr ""146msgstr ""
157147
158#: ../app/alarm/AlarmUtils.qml:132148#: ../app/alarm/AlarmUtils.qml:99
159#, no-c-format, qt-format149#, no-c-format, qt-format
160msgid "in %1m"150msgid "in %1m"
161msgstr ""151msgstr ""
162152
163#: ../app/alarm/EditAlarmPage.qml:34153#: ../app/alarm/EditAlarmPage.qml:37
164msgid "New alarm"154msgid "New alarm"
165msgstr ""155msgstr ""
166156
167#: ../app/alarm/EditAlarmPage.qml:34157#: ../app/alarm/EditAlarmPage.qml:37
168msgid "Edit alarm"158msgid "Edit alarm"
169msgstr ""159msgstr ""
170160
171#: ../app/alarm/EditAlarmPage.qml:337161#: ../app/alarm/EditAlarmPage.qml:339
172msgid "Delete alarm"162msgid "Delete alarm"
173msgstr ""163msgstr ""
174164
@@ -177,7 +167,7 @@
177msgid "Add sound from"167msgid "Add sound from"
178msgstr ""168msgstr ""
179169
180#: ../app/clock/ClockPage.qml:245170#: ../app/clock/ClockPage.qml:244
181msgid "Retrieving location..."171msgid "Retrieving location..."
182msgstr ""172msgstr ""
183173
@@ -222,37 +212,37 @@
222212
223#. TRANSLATORS: this indicates if the time in a world clock213#. TRANSLATORS: this indicates if the time in a world clock
224#. is behind or ahead of the time at the current location214#. is behind or ahead of the time at the current location
225#: ../app/worldclock/UserWorldCityDelegate.qml:135215#: ../app/worldclock/UserWorldCityDelegate.qml:136
226msgid "behind"216msgid "behind"
227msgstr ""217msgstr ""
228218
229#: ../app/worldclock/UserWorldCityDelegate.qml:136219#: ../app/worldclock/UserWorldCityDelegate.qml:137
230msgid "ahead"220msgid "ahead"
231msgstr ""221msgstr ""
232222
233#. TRANSLATORS: the first argument is hour, followed by223#. TRANSLATORS: the first argument is hour, followed by
234#. minute, and the translation for either 'behind' or224#. minute, and the translation for either 'behind' or
235#. 'ahead'225#. 'ahead'
236#: ../app/worldclock/UserWorldCityDelegate.qml:146226#: ../app/worldclock/UserWorldCityDelegate.qml:147
237#, qt-format227#, qt-format
238msgid "%1h %2m %3"228msgid "%1h %2m %3"
239msgstr ""229msgstr ""
240230
241#. TRANSLATORS: the first argument is hour, followed by the231#. TRANSLATORS: the first argument is hour, followed by the
242#. translation for either 'behind' or 'ahead'232#. translation for either 'behind' or 'ahead'
243#: ../app/worldclock/UserWorldCityDelegate.qml:155233#: ../app/worldclock/UserWorldCityDelegate.qml:156
244#, qt-format234#, qt-format
245msgid "%1h %2"235msgid "%1h %2"
246msgstr ""236msgstr ""
247237
248#. TRANSLATORS: the first argument is minute, followed by the238#. TRANSLATORS: the first argument is minute, followed by the
249#. translation for either 'behind' or 'ahead'239#. translation for either 'behind' or 'ahead'
250#: ../app/worldclock/UserWorldCityDelegate.qml:163240#: ../app/worldclock/UserWorldCityDelegate.qml:164
251#, qt-format241#, qt-format
252msgid "%1m %2"242msgid "%1m %2"
253msgstr ""243msgstr ""
254244
255#: ../app/worldclock/UserWorldCityDelegate.qml:169245#: ../app/worldclock/UserWorldCityDelegate.qml:170
256msgid "Same time"246msgid "Same time"
257msgstr ""247msgstr ""
258248
259249
=== modified file 'tests/unit/ClockTestCase.qml'
--- tests/unit/ClockTestCase.qml 2016-02-25 17:07:00 +0000
+++ tests/unit/ClockTestCase.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'tests/unit/MockClockApp.qml'
--- tests/unit/MockClockApp.qml 2015-10-22 16:49:23 +0000
+++ tests/unit/MockClockApp.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'tests/unit/tst_alarm.qml'
--- tests/unit/tst_alarm.qml 2015-12-11 02:13:16 +0000
+++ tests/unit/tst_alarm.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'tests/unit/tst_alarmLabel.qml'
--- tests/unit/tst_alarmLabel.qml 2016-02-25 17:07:00 +0000
+++ tests/unit/tst_alarmLabel.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'tests/unit/tst_alarmRepeat.qml'
--- tests/unit/tst_alarmRepeat.qml 2016-02-25 17:40:26 +0000
+++ tests/unit/tst_alarmRepeat.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'tests/unit/tst_alarmSound.qml'
--- tests/unit/tst_alarmSound.qml 2015-10-22 16:49:23 +0000
+++ tests/unit/tst_alarmSound.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'tests/unit/tst_alarmUtils.qml'
--- tests/unit/tst_alarmUtils.qml 2016-02-25 17:40:26 +0000
+++ tests/unit/tst_alarmUtils.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'tests/unit/tst_stopwatchUtils.qml'
--- tests/unit/tst_stopwatchUtils.qml 2016-02-25 17:40:26 +0000
+++ tests/unit/tst_stopwatchUtils.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2015 Canonical Ltd2 * Copyright (C) 2015-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *
66
=== modified file 'tests/unit/tst_worldClock.qml'
--- tests/unit/tst_worldClock.qml 2015-10-22 16:49:23 +0000
+++ tests/unit/tst_worldClock.qml 2016-02-25 23:11:58 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014-2015 Canonical Ltd2 * Copyright (C) 2014-2016 Canonical Ltd
3 *3 *
4 * This file is part of Ubuntu Clock App4 * This file is part of Ubuntu Clock App
5 *5 *

Subscribers

People subscribed via source and target branches