← Back to team overview

ubuntu-touch-coreapps-reviewers team mailing list archive

[Merge] lp:~nik90/ubuntu-calendar-app/migrate-listitemlayout into lp:ubuntu-calendar-app

 

Nekhelesh Ramananthan has proposed merging lp:~nik90/ubuntu-calendar-app/migrate-listitemlayout into lp:ubuntu-calendar-app.

Commit message:
Switches the following pages to listitemlayout
- SettingsPage.qml
- CalendarChoicePopup.qml

Requested reviews:
  Ubuntu Calendar Developers (ubuntu-calendar-dev)
Related bugs:
  Bug #1550313 in Ubuntu Calendar App: "Switch to ListItemLayouts where possible"
  https://bugs.launchpad.net/ubuntu-calendar-app/+bug/1550313

For more details, see:
https://code.launchpad.net/~nik90/ubuntu-calendar-app/migrate-listitemlayout/+merge/287309

Switches the following pages to listitemlayout
- SettingsPage.qml
- CalendarChoicePopup.qml
-- 
Your team Ubuntu Calendar Developers is requested to review the proposed merge of lp:~nik90/ubuntu-calendar-app/migrate-listitemlayout into lp:ubuntu-calendar-app.
=== modified file 'CalendarChoicePopup.qml'
--- CalendarChoicePopup.qml	2016-01-29 14:35:14 +0000
+++ CalendarChoicePopup.qml	2016-02-26 12:53:59 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2013-2014 Canonical Ltd
+ * Copyright (C) 2013-2016 Canonical Ltd
  *
  * This file is part of Ubuntu Calendar App
  *
@@ -15,125 +15,131 @@
  * You should have received a copy of the GNU General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
+
 import QtQuick 2.4
+import QtOrganizer 5.0
 import Ubuntu.Components 1.3
-import Ubuntu.Components.Popups 1.0
-import Ubuntu.Components.ListItems 1.0 as ListItem
-import QtOrganizer 5.0
 import Ubuntu.SyncMonitor 0.1
+import Ubuntu.Components.Popups 1.3
 
 Page {
-    id: root
+    id: calendarChoicePage
     objectName: "calendarchoicepopup"
-    property var model;
 
-    signal collectionUpdated();
+    property var model
+    signal collectionUpdated()
 
     visible: false
-    title: i18n.tr("Calendars")
-
-    head {
-        backAction: Action {
-            text: i18n.tr("Back")
-            iconName: "back"
-            onTriggered: {
-                root.collectionUpdated();
-                pop();
-            }
-        }
-    }
-
-    head.actions:  Action {
-        objectName: "syncbutton"
-        iconName: "reload"
-        // TRANSLATORS: Please translate this string  to 15 characters only.
-        // Currently ,there is no way we can increase width of action menu currently.
-        text: enabled ? i18n.tr("Sync") : i18n.tr("Syncing")
-        onTriggered: syncMonitor.sync(["calendar"])
-        enabled: (syncMonitor.state !== "syncing")
-        visible: syncMonitor.enabledServices ? syncMonitor.serviceIsEnabled("calendar") : false
+    header: PageHeader {
+        title: i18n.tr("Calendars")
+        leadingActionBar.actions: [
+            Action {
+                text: i18n.tr("Back")
+                iconName: "back"
+                onTriggered: {
+                    calendarChoicePage.collectionUpdated();
+                    pop();
+                }
+            }
+        ]
+        trailingActionBar.actions: [
+            Action {
+                objectName: "syncbutton"
+                iconName: "reload"
+                // TRANSLATORS: Please translate this string  to 15 characters only.
+                // Currently ,there is no way we can increase width of action menu currently.
+                text: enabled ? i18n.tr("Sync") : i18n.tr("Syncing")
+                onTriggered: syncMonitor.sync(["calendar"])
+                enabled: (syncMonitor.state !== "syncing")
+                visible: syncMonitor.enabledServices ? syncMonitor.serviceIsEnabled("calendar") : false
+            }
+        ]
     }
 
     SyncMonitor {
         id: syncMonitor
     }
 
-    ListView {
+    UbuntuListView {
         id: calendarsList
-        anchors.fill: parent
-
-        footer: CalendarListButtonDelegate {
+
+        anchors { top: calendarChoicePage.header.bottom; left: parent.left; right: parent.right; bottom: parent.bottom }
+
+        header: ListItem {
             id: importFromGoogleButton
 
             visible: (onlineAccountHelper.status === Loader.Ready)
-            iconSource: "image://theme/google"
-            labelText: i18n.tr("Add online Calendar")
+            height: onlineCalendarLayout.height + divider.height
+
+            ListItemLayout {
+                id: onlineCalendarLayout
+                title.text: i18n.tr("Add online Calendar")
+
+                Image {
+                    SlotsLayout.position: SlotsLayout.First
+                    source: "image://theme/google"
+                    width: units.gu(5)
+                    height: width
+                }
+            }
+
             onClicked: {
                 onlineAccountHelper.item.setupExec()
             }
         }
 
-        model : root.model.getCollections();
-        delegate: ListItem.Standard {
+        model : calendarChoicePage.model.getCollections()
+        currentIndex: -1
+
+        delegate: ListItem {
             id: delegateComp
             objectName: "calendarItem"
 
-            Rectangle {
-                id: calendarColorCode
-                objectName: "calendarColorCode"
-
-                width: parent.height - units.gu(2)
-                height: width
-
-                anchors {
-                    left: parent.left
-                    leftMargin: units.gu(2)
-                    verticalCenter: parent.verticalCenter
-                }
-
-                color: modelData.color
-                opacity: checkBox.checked ? 1.0 : 0.8
-
-                MouseArea{
-                    anchors.fill: parent
-                    onClicked: {
-                        //popup dialog
-                        var dialog = PopupUtils.open(Qt.resolvedUrl("ColorPickerDialog.qml"),root);
-                        dialog.accepted.connect(function(color) {
-                            var collection = root.model.collection(modelData.collectionId);
-                            collection.color = color;
-                            root.model.saveCollection(collection);
-                        })
-                    }
-                }
-            }
-
-            Label{
-                objectName: "calendarName"
-                text: modelData.name
-                elide: Text.ElideRight
-                opacity: checkBox.checked ? 1.0 : 0.8
-                color: UbuntuColors.midAubergine
-                width: parent.width - calendarColorCode.width - checkBox.width - units.gu(6) /*margins*/
-                anchors {
-                    left: calendarColorCode.right
-                    margins: units.gu(2)
-                    verticalCenter: parent.verticalCenter
-                }
-            }
-
-            control: CheckBox {
-                id: checkBox
-                objectName: "checkBox"
-                checked: modelData.extendedMetaData("collection-selected")
-                enabled:  !root.isInEditMode
-                onCheckedChanged: {
-                    modelData.setExtendedMetaData("collection-selected",checkBox.checked)
-                    var collection = root.model.collection(modelData.collectionId);
-                    root.model.saveCollection(collection);
-                }
-            }
-
+            height: calendarsListLayout.height + divider.height
+
+            ListItemLayout {
+                id: calendarsListLayout
+
+                title.text: modelData.name
+                title.objectName: "calendarName"
+
+                CheckBox {
+                    id: checkBox
+                    objectName: "checkBox"
+                    SlotsLayout.position: SlotsLayout.Last
+                    checked: modelData.extendedMetaData("collection-selected")
+                    enabled: !calendarChoicePage.isInEditMode
+                    onCheckedChanged: {
+                        modelData.setExtendedMetaData("collection-selected",checkBox.checked)
+                        var collection = calendarChoicePage.model.collection(modelData.collectionId);
+                        calendarChoicePage.model.saveCollection(collection);
+                    }
+                }
+
+                Rectangle {
+                    id: calendarColorCode
+                    objectName: "calendarColorCode"
+
+                    SlotsLayout.position: SlotsLayout.First
+                    width: units.gu(5)
+                    height: width
+                    color: modelData.color
+                    opacity: checkBox.checked ? 1.0 : 0.8
+
+                    MouseArea{
+                        anchors.fill: parent
+                        onClicked: {
+                            //popup dialog
+                            var dialog = PopupUtils.open(Qt.resolvedUrl("ColorPickerDialog.qml"),calendarChoicePage);
+                            dialog.accepted.connect(function(color) {
+                                var collection = calendarChoicePage.model.collection(modelData.collectionId);
+                                collection.color = color;
+                                calendarChoicePage.model.saveCollection(collection);
+                            })
+                        }
+                    }
+                }
+            }
         }
     }
 

=== removed file 'CalendarListButtonDelegate.qml'
--- CalendarListButtonDelegate.qml	2016-01-29 14:35:14 +0000
+++ CalendarListButtonDelegate.qml	1970-01-01 00:00:00 +0000
@@ -1,51 +0,0 @@
-/*
- * Copyright (C) 2012-2015 Canonical, Ltd.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 3.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-import QtQuick 2.4
-import Ubuntu.Components 1.3
-import Ubuntu.Components.ListItems 1.0 as ListItem
-
-ListItem.Standard {
-   id: root
-
-   property alias iconSource: uShape.source
-   property alias labelText: name.text
-
-   Image {
-       id: uShape
-
-       width: parent.height - units.gu(2)
-       height: width
-
-       anchors {
-           left: parent.left
-           leftMargin: units.gu(2)
-           verticalCenter: parent.verticalCenter
-       }
-   }
-
-   Label {
-       id: name
-
-       anchors {
-           left: uShape.right
-           margins: units.gu(2)
-           verticalCenter: parent.verticalCenter
-       }
-       color: UbuntuColors.midAubergine
-       elide: Text.ElideRight
-   }
-}

=== modified file 'Settings.qml'
--- Settings.qml	2016-02-03 08:06:25 +0000
+++ Settings.qml	2016-02-26 12:53:59 +0000
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2013-2014 Canonical Ltd
+ * Copyright (C) 2013-2016 Canonical Ltd
  *
  * This file is part of Ubuntu Calendar App
  *
@@ -15,106 +15,71 @@
  * You should have received a copy of the GNU General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
+
 import QtQuick 2.4
 import Ubuntu.Components 1.3
-import Ubuntu.Components.Popups 1.0
-import Ubuntu.Components.ListItems 1.0 as ListItem
 
 Page {
-    id: root
+    id: settingsPage
     objectName: "settings"
 
     visible: false
 
-    head {
+    header: PageHeader {
         title: i18n.tr("Settings")
-        backAction: Action {
-            text: i18n.tr("Back")
-            iconName: "back"
-            onTriggered: {
-                pop();
+        leadingActionBar.actions: [
+            Action {
+                text: i18n.tr("Back")
+                iconName: "back"
+                onTriggered: {
+                    pop()
+                }
             }
-        }
+        ]
     }
 
-    ListModel{
-        id: model;
+    Component.onCompleted: {
+        weekCheckBox.checked = mainView.displayWeekNumber
+        lunarCalCheckBox.checked = mainView.displayLunarCalendar
     }
 
     Column {
         id: settingsColumn
         objectName: "settingsColumn"
+
         spacing: units.gu(0.5)
-        anchors {
-            margins: units.gu(2)
-            fill: parent
-        }
-
-        Item{
-            width: parent.width;
-            height: Math.max(weekNumber.height, weekCheckbox.height)
-
-            Label{
-                id: weekNumber;
-                objectName: "weekNumber"
-                text: i18n.tr("Show week numbers");
-                elide: Text.ElideRight
-                opacity: weekCheckbox.checked ? 1.0 : 0.8
-                color: UbuntuColors.midAubergine
-                anchors {
-                    left: parent.left
-                    right: weekCheckbox.left;
-                    margins: units.gu(2)
-                    verticalCenter: parent.verticalCenter
-                }
-            }
-
-            CheckBox {
-                id: weekCheckbox
-                objectName: "weekCheckBox"
-                anchors.right:parent.right;
-                onCheckedChanged: {
-                    mainView.displayWeekNumber = weekCheckbox.checked;
-                }
-            }
-        }
-
-        ListItem.ThinDivider {}
-
-        Item{
-            width: parent.width;
-            height: Math.max(lunarCal.height, lunarCalCheckbox.height)
-
-            Label{
-                id: lunarCal;
-                objectName: "lunarCalendar"
-                text: i18n.tr("Show lunar calendar");
-                elide: Text.ElideRight
-                opacity: lunarCalCheckbox.checked ? 1.0 : 0.8
-                color: UbuntuColors.midAubergine
-                anchors {
-                    left: parent.left
-                    right: lunarCalCheckbox.left;
-                    margins: units.gu(2)
-                    verticalCenter: parent.verticalCenter
-                }
-            }
-
-            CheckBox {
-                id: lunarCalCheckbox
-                objectName: "lunarCalCheckbox"
-                anchors.right:parent.right;
-                onCheckedChanged: {
-                    mainView.displayLunarCalendar = lunarCalCheckbox.checked
-                }
-            }
-        }
-
-        ListItem.ThinDivider {}
-    }
-
-    Component.onCompleted: {
-        weekCheckbox.checked = mainView.displayWeekNumber
-        lunarCalCheckbox.checked = mainView.displayLunarCalendar
+        anchors { top: settingsPage.header.bottom; left: parent.left; right: parent.right; bottom: parent.bottom }
+
+        ListItem {
+            height: weekNumberLayout.height + divider.height
+            ListItemLayout {
+                id: weekNumberLayout
+                title.text: i18n.tr("Show week numbers")
+                CheckBox {
+                    id: weekCheckBox
+                    objectName: "weekCheckBox"
+                    SlotsLayout.position: SlotsLayout.Last
+                    onCheckedChanged: {
+                        mainView.displayWeekNumber = weekCheckBox.checked
+                    }
+                }
+            }
+        }
+
+        ListItem {
+            height: lunarCalLayout.height + divider.height
+            ListItemLayout {
+                id: lunarCalLayout
+                title.text: i18n.tr("Show lunar calendar")
+                CheckBox {
+                    id: lunarCalCheckBox
+                    objectName: "lunarCalCheckbox"
+                    SlotsLayout.position: SlotsLayout.Last
+                    onCheckedChanged: {
+                        mainView.displayLunarCalendar = lunarCalCheckBox.checked
+                    }
+                }
+            }
+        }
     }
 }

=== modified file 'po/com.ubuntu.calendar.pot'
--- po/com.ubuntu.calendar.pot	2016-02-17 14:56:56 +0000
+++ po/com.ubuntu.calendar.pot	2016-02-26 12:53:59 +0000
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-01-11 21:36+0800\n"
+"POT-Creation-Date: 2016-02-26 18:19+0530\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@xxxxxx>\n"
@@ -18,30 +18,39 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
 
-#: ../AgendaView.qml:51 ../DayView.qml:40 ../MonthView.qml:39
-#: ../WeekView.qml:44 ../YearView.qml:36
+#: ../AgendaView.qml:52 ../DayView.qml:41 ../MonthView.qml:40
+#: ../WeekView.qml:45 ../YearView.qml:43
 msgid "Today"
 msgstr ""
 
-#: ../AgendaView.qml:92
+#: ../AgendaView.qml:62 ../calendar.qml:291 ../calendar.qml:512
+msgid "Agenda"
+msgstr ""
+
+#: ../AgendaView.qml:101
 msgid "No upcoming events"
 msgstr ""
 
-#: ../AgendaView.qml:95
+#: ../AgendaView.qml:104
 msgid "You have no calendars enabled"
 msgstr ""
 
-#: ../AgendaView.qml:105
+#: ../AgendaView.qml:114
 msgid "Enable calendars"
 msgstr ""
 
 #. TRANSLATORS: the first argument (%1) refers to a start time for an event,
 #. while the second one (%2) refers to the end time
-#: ../AgendaView.qml:168 ../EventBubble.qml:133
+#: ../AgendaView.qml:177 ../EventBubble.qml:133
 #, qt-format
 msgid "%1 - %2"
 msgstr ""
 
+#: ../AgendaView.qml:183
+#, qt-format
+msgid "%1 %2 %3 %4 %5"
+msgstr ""
+
 #. TRANSLATORS: the first parameter refers to the number of all-day events
 #. on a given day. "Ev." is short form for "Events".
 #. Please keep the translation of "Ev." to 3 characters only, as the week view
@@ -59,25 +68,25 @@
 msgstr[0] ""
 msgstr[1] ""
 
-#: ../CalendarChoicePopup.qml:33 ../EventActions.qml:60
+#: ../CalendarChoicePopup.qml:34 ../EventActions.qml:63
 msgid "Calendars"
 msgstr ""
 
-#: ../CalendarChoicePopup.qml:37
+#: ../CalendarChoicePopup.qml:37 ../Settings.qml:32
 msgid "Back"
 msgstr ""
 
 #. TRANSLATORS: Please translate this string  to 15 characters only.
 #. Currently ,there is no way we can increase width of action menu currently.
-#: ../CalendarChoicePopup.qml:51 ../EventActions.qml:36
+#: ../CalendarChoicePopup.qml:51 ../EventActions.qml:37
 msgid "Sync"
 msgstr ""
 
-#: ../CalendarChoicePopup.qml:51 ../EventActions.qml:36
+#: ../CalendarChoicePopup.qml:51 ../EventActions.qml:37
 msgid "Syncing"
 msgstr ""
 
-#: ../CalendarChoicePopup.qml:70
+#: ../CalendarChoicePopup.qml:76
 msgid "Add online Calendar"
 msgstr ""
 
@@ -101,10 +110,16 @@
 #. TRANSLATORS: this is a time formatting string,
 #. see http://qt-project.org/doc/qt-5/qml-qtqml-date.html#details for valid expressions.
 #. It's used in the header of the month and week views
-#: ../DayView.qml:59 ../MonthView.qml:60 ../WeekView.qml:63
+#: ../DayView.qml:64 ../DayView.qml:157 ../MonthView.qml:62
+#: ../MonthView.qml:149 ../WeekView.qml:68 ../WeekView.qml:180
 msgid "MMMM yyyy"
 msgstr ""
 
+#: ../DayView.qml:155 ../MonthView.qml:144 ../WeekView.qml:178
+#, qt-format
+msgid "%1 %2"
+msgstr ""
+
 #: ../DeleteConfirmationDialog.qml:31
 msgid "Delete Recurring Event"
 msgstr ""
@@ -136,7 +151,7 @@
 msgid "Delete"
 msgstr ""
 
-#: ../EditEventConfirmationDialog.qml:29 ../NewEvent.qml:324
+#: ../EditEventConfirmationDialog.qml:29 ../NewEvent.qml:325
 msgid "Edit Event"
 msgstr ""
 
@@ -154,10 +169,14 @@
 msgid "Edit this"
 msgstr ""
 
-#: ../EventActions.qml:50 ../NewEvent.qml:324
+#: ../EventActions.qml:52 ../NewEvent.qml:325
 msgid "New Event"
 msgstr ""
 
+#: ../EventActions.qml:75 ../Settings.qml:29
+msgid "Settings"
+msgstr ""
+
 #. TRANSLATORS: the first argument (%1) refers to a time for an event,
 #. while the second one (%2) refers to title of event
 #: ../EventBubble.qml:144 ../EventBubble.qml:149
@@ -165,35 +184,55 @@
 msgid "%1 <b>%2</b>"
 msgstr ""
 
-#: ../EventDetails.qml:43 ../NewEvent.qml:435
+#: ../EventDetails.qml:44 ../NewEvent.qml:436
 msgid "Event Details"
 msgstr ""
 
 #. TRANSLATORS: the first parameter refers to the name of event calendar.
-#: ../EventDetails.qml:68
+#: ../EventDetails.qml:69
 #, qt-format
 msgid "%1 Calendar"
 msgstr ""
 
-#: ../EventDetails.qml:129
+#: ../EventDetails.qml:143
+#, qt-format
+msgid "%1 %2 %3 - %4 %5 %6 (All Day)"
+msgstr ""
+
+#: ../EventDetails.qml:147
 #, qt-format
 msgid "%1 - %2 (All Day)"
 msgstr ""
 
-#: ../EventDetails.qml:133
+#: ../EventDetails.qml:153
+#, qt-format
+msgid "%1 %2 %3 (All Day)"
+msgstr ""
+
+#: ../EventDetails.qml:156
 #, qt-format
 msgid "%1 (All Day)"
 msgstr ""
 
-#: ../EventDetails.qml:203
+#: ../EventDetails.qml:162
+#, qt-format
+msgid "%1 %2 %3, %4 - %5 %6 %7, %8"
+msgstr ""
+
+#: ../EventDetails.qml:171
+#, qt-format
+msgid "%1 %2 %3, %4 - %5"
+msgstr ""
+
+#: ../EventDetails.qml:238
 msgid "Edit"
 msgstr ""
 
-#: ../EventDetails.qml:354 ../NewEvent.qml:537
+#: ../EventDetails.qml:389 ../NewEvent.qml:538
 msgid "Guests"
 msgstr ""
 
-#: ../EventDetails.qml:397 ../EventReminder.qml:35 ../NewEvent.qml:634
+#: ../EventDetails.qml:432 ../EventReminder.qml:35 ../NewEvent.qml:635
 msgid "Reminder"
 msgstr ""
 
@@ -216,7 +255,7 @@
 #. TRANSLATORS: this refers to how often a recurrent event repeats
 #. and it is shown as the header of the option selector to choose
 #. its repetition
-#: ../EventRepetition.qml:242 ../NewEvent.qml:618
+#: ../EventRepetition.qml:242 ../NewEvent.qml:619
 msgid "Repeats"
 msgstr ""
 
@@ -247,6 +286,11 @@
 msgid "Weekly on %1"
 msgstr ""
 
+#: ../HeaderDateComponent.qml:90
+#, qt-format
+msgid "%1 %2 %3"
+msgstr ""
+
 #: ../LimitLabelModel.qml:25
 msgid "Never"
 msgstr ""
@@ -259,6 +303,10 @@
 msgid "After Date"
 msgstr ""
 
+#: ../MonthComponent.qml:262
+msgid "Wk"
+msgstr ""
+
 #: ../NewEvent.qml:84
 msgid "Save"
 msgstr ""
@@ -267,43 +315,43 @@
 msgid "End time can't be before start time"
 msgstr ""
 
-#: ../NewEvent.qml:334
+#: ../NewEvent.qml:335
 msgid "Error"
 msgstr ""
 
-#: ../NewEvent.qml:336
+#: ../NewEvent.qml:337
 msgid "OK"
 msgstr ""
 
-#: ../NewEvent.qml:389
+#: ../NewEvent.qml:390
 msgid "From"
 msgstr ""
 
-#: ../NewEvent.qml:402
+#: ../NewEvent.qml:403
 msgid "To"
 msgstr ""
 
-#: ../NewEvent.qml:419
+#: ../NewEvent.qml:420
 msgid "All day event"
 msgstr ""
 
-#: ../NewEvent.qml:448
+#: ../NewEvent.qml:449
 msgid "Event Name"
 msgstr ""
 
-#: ../NewEvent.qml:466
+#: ../NewEvent.qml:467
 msgid "Description"
 msgstr ""
 
-#: ../NewEvent.qml:484
+#: ../NewEvent.qml:485
 msgid "Location"
 msgstr ""
 
-#: ../NewEvent.qml:499 com.ubuntu.calendar_calendar.desktop.in.in.h:1
+#: ../NewEvent.qml:500 com.ubuntu.calendar_calendar.desktop.in.in.h:1
 msgid "Calendar"
 msgstr ""
 
-#: ../NewEvent.qml:541
+#: ../NewEvent.qml:542
 msgid "Add Guest"
 msgstr ""
 
@@ -390,52 +438,56 @@
 msgid "2 weeks"
 msgstr ""
 
+#: ../Settings.qml:57
+msgid "Show week numbers"
+msgstr ""
+
+#: ../Settings.qml:73
+msgid "Show lunar calendar"
+msgstr ""
+
 #: ../TimeLineBase.qml:73
 msgid "Untitled"
 msgstr ""
 
 #. TRANSLATORS: W refers to Week, followed by the actual week number (%1)
-#: ../TimeLineHeader.qml:54
+#: ../TimeLineHeader.qml:53
 #, qt-format
 msgid "W%1"
 msgstr ""
 
-#: ../TimeLineHeader.qml:66
+#: ../TimeLineHeader.qml:65
 msgid "All Day"
 msgstr ""
 
-#: ../YearView.qml:54
+#: ../YearView.qml:61 ../YearView.qml:112
 #, qt-format
 msgid "Year %1"
 msgstr ""
 
-#: ../calendar.qml:45
+#: ../calendar.qml:46
 msgid ""
 "Calendar app accept four arguments: --starttime, --endtime, --newevent and --"
 "eventid. They will be managed by system. See the source for a full comment "
 "about them"
 msgstr ""
 
-#: ../calendar.qml:354
+#: ../calendar.qml:259 ../calendar.qml:428
 msgid "Year"
 msgstr ""
 
-#: ../calendar.qml:388
+#: ../calendar.qml:267 ../calendar.qml:449
 msgid "Month"
 msgstr ""
 
-#: ../calendar.qml:421
+#: ../calendar.qml:275 ../calendar.qml:470
 msgid "Week"
 msgstr ""
 
-#: ../calendar.qml:459
+#: ../calendar.qml:283 ../calendar.qml:491
 msgid "Day"
 msgstr ""
 
-#: ../calendar.qml:491
-msgid "Agenda"
-msgstr ""
-
 #: com.ubuntu.calendar_calendar.desktop.in.in.h:2
 msgid "A calendar for Ubuntu which syncs with online accounts."
 msgstr ""


Follow ups