diff -Nru gnome-calendar-44.0/data/org.gnome.calendar.gschema.xml.in gnome-calendar-44.1/data/org.gnome.calendar.gschema.xml.in
--- gnome-calendar-44.0/data/org.gnome.calendar.gschema.xml.in 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/data/org.gnome.calendar.gschema.xml.in 2023-04-22 09:51:06.000000000 +0000
@@ -1,30 +1,32 @@
-
-
- true
- Window maximized
- Window maximized state
-
-
- (768, 600)
- Window size
- Window size (width and height).
-
-
- (-1, -1)
- Window position
- Window position (x and y).
-
-
- 'month'
- Type of the active view
- Type of the active window view, default value is: monthly view
-
-
- (true, true, '', nothing)
- Weather Service Configuration
- Whether weather reports are shown, automatic locations are used and a location-name
-
-
+
+
+ true
+ Window maximized
+ Window maximized state
+
+
+ (768, 600)
+ Window size
+ Window size (width and height).
+
+
+ 'month'
+ Type of the active view
+ Type of the active window view, default value is: monthly view
+
+
+ (true, true, '', nothing)
+ Weather Service Configuration
+ Whether weather reports are shown, automatic locations are used and a location-name
+
+
+ 1.0
+
+
+
diff -Nru gnome-calendar-44.0/debian/changelog gnome-calendar-44.1/debian/changelog
--- gnome-calendar-44.0/debian/changelog 2023-03-16 21:01:41.000000000 +0000
+++ gnome-calendar-44.1/debian/changelog 2023-04-27 14:25:32.000000000 +0000
@@ -1,3 +1,20 @@
+gnome-calendar (44.1-1) experimental; urgency=medium
+
+ * Team upload
+ * New upstream release
+ - Preserve week view zoom levels when closing the app
+ (https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/916)
+ - Lots of stability and performance improvements to search
+ (https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/981,
+ https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/987,
+ https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/988)
+ - Improve keyboard navigation of event preview popover
+ (https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/980)
+ - Updated translations
+ * * debian/control.in: Bump minimum libgtk-4-dev to 4.10.0.
+
+ -- Amin Bandali Thu, 27 Apr 2023 10:25:32 -0400
+
gnome-calendar (44.0-1) experimental; urgency=medium
* New upstream release
diff -Nru gnome-calendar-44.0/debian/control gnome-calendar-44.1/debian/control
--- gnome-calendar-44.0/debian/control 2023-03-16 21:01:41.000000000 +0000
+++ gnome-calendar-44.1/debian/control 2023-04-27 14:25:32.000000000 +0000
@@ -6,7 +6,7 @@
Section: gnome
Priority: optional
Maintainer: Debian GNOME Maintainers
-Uploaders: Iain Lane , Jeremy Bicha , Laurent Bigonville
+Uploaders: Jeremy Bicha
Build-Depends: appstream-util,
debhelper-compat (= 13),
dh-sequence-gnome,
@@ -19,7 +19,7 @@
libedataserverui4-dev (>= 3.45.1),
libgeocode-glib-dev (>= 3.26.3),
libglib2.0-dev (>= 2.67.5),
- libgtk-4-dev (>= 4.6.0),
+ libgtk-4-dev (>= 4.10.0),
libgweather-4-dev (>= 4.1),
libical-dev (>= 1.0.1),
libsoup-3.0-dev,
diff -Nru gnome-calendar-44.0/debian/control.in gnome-calendar-44.1/debian/control.in
--- gnome-calendar-44.0/debian/control.in 2023-03-16 21:01:41.000000000 +0000
+++ gnome-calendar-44.1/debian/control.in 2023-04-27 14:25:32.000000000 +0000
@@ -15,7 +15,7 @@
libedataserverui4-dev (>= 3.45.1),
libgeocode-glib-dev (>= 3.26.3),
libglib2.0-dev (>= 2.67.5),
- libgtk-4-dev (>= 4.6.0),
+ libgtk-4-dev (>= 4.10.0),
libgweather-4-dev (>= 4.1),
libical-dev (>= 1.0.1),
libsoup-3.0-dev,
diff -Nru gnome-calendar-44.0/meson.build gnome-calendar-44.1/meson.build
--- gnome-calendar-44.0/meson.build 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/meson.build 2023-04-22 09:51:06.000000000 +0000
@@ -1,7 +1,7 @@
project(
'gnome-calendar',
'c',
- version: '44.0',
+ version: '44.1',
license: 'GPL3+',
meson_version: '>= 0.57.0'
)
@@ -165,7 +165,7 @@
libsoup_dep = dependency('libsoup-3.0')
libadwaita_dep = dependency('libadwaita-1', version: '>= 1.2.alpha')
glib_dep = dependency('glib-2.0', version: '>= 2.67.5')
-gtk_dep = dependency('gtk4', version: '>= 4.6.0')
+gtk_dep = dependency('gtk4', version: '>= 4.10.0')
gio_dep = dependency('gio-2.0', version: '>= 2.58.0')
gweather_dep = dependency('gweather4')
geoclue_dep = dependency('libgeoclue-2.0', version: '>=2.4')
diff -Nru gnome-calendar-44.0/NEWS gnome-calendar-44.1/NEWS
--- gnome-calendar-44.0/NEWS 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/NEWS 2023-04-22 09:51:06.000000000 +0000
@@ -1,3 +1,9 @@
+Major changes in 44.1:
+* Preserve week view zoom levels when closing the app
+* Lots of stability and performance improvements to search
+* Improve keyboard navigation of event preview popover
+* Updated translations
+
Major changes in 44.0:
* Updated translations
diff -Nru gnome-calendar-44.0/po/fur.po gnome-calendar-44.1/po/fur.po
--- gnome-calendar-44.0/po/fur.po 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/po/fur.po 2023-04-22 09:51:06.000000000 +0000
@@ -7,8 +7,8 @@
msgstr ""
"Project-Id-Version: gnome-calendar master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-calendar/issues\n"
-"POT-Creation-Date: 2023-01-11 14:14+0000\n"
-"PO-Revision-Date: 2023-01-16 15:40+0000\n"
+"POT-Creation-Date: 2023-03-16 14:29+0000\n"
+"PO-Revision-Date: 2023-04-05 17:42+0200\n"
"Last-Translator: Fabio T. \n"
"Language-Team: Friulian \n"
"Language: fur\n"
@@ -17,7 +17,7 @@
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Editor: HaiPO 1.4 beta\n"
-"X-Generator: Poedit 3.1.1\n"
+"X-Generator: Poedit 3.2.2\n"
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:7
#: data/org.gnome.Calendar.desktop.in.in:3 src/main.c:35
@@ -44,8 +44,8 @@
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:16
msgid ""
"We aim to find the perfect balance between nicely crafted features and user-"
-"centred usability. No excess, nothing missing. You’ll feel comfortable using"
-" Calendar, like you’ve been using it for ages!"
+"centred usability. No excess, nothing missing. You’ll feel comfortable using "
+"Calendar, like you’ve been using it for ages!"
msgstr ""
"Il nestri obietîf al è chel di cjatâ il perfet belançament tra "
"funzionalitâts ben fatis e doprabilitât utent: nuie di masse, nuie che al "
@@ -68,8 +68,7 @@
msgid "Access and manage your calendars"
msgstr "Jentre e ministre i tiei calendaris"
-#. Translators: Search terms to find this application. Do NOT translate or
-#. localize the semicolons! The list MUST also end with a semicolon!
+#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon!
#: data/org.gnome.Calendar.desktop.in.in:13
msgid "Calendar;Event;Reminder;"
msgstr "Calendari;Lunari;Event;Events;Promemorie;"
@@ -91,27 +90,19 @@
msgstr "La dimension dal barcon (largjece e altece)."
#: data/org.gnome.calendar.gschema.xml.in:16
-msgid "Window position"
-msgstr "Posizion barcon"
-
-#: data/org.gnome.calendar.gschema.xml.in:17
-msgid "Window position (x and y)."
-msgstr "La posizion dal barcon (x e y)."
-
-#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Type of the active view"
msgstr "Mût de viste ative"
-#: data/org.gnome.calendar.gschema.xml.in:22
+#: data/org.gnome.calendar.gschema.xml.in:17
msgid "Type of the active window view, default value is: monthly view"
msgstr ""
"Il mût de viste dal barcon atîf, il valôr predefinît al è: viste mensîl"
-#: data/org.gnome.calendar.gschema.xml.in:26
+#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Weather Service Configuration"
msgstr "Configurazion dal servizi meteorologjic"
-#: data/org.gnome.calendar.gschema.xml.in:27
+#: data/org.gnome.calendar.gschema.xml.in:22
msgid ""
"Whether weather reports are shown, automatic locations are used and a "
"location-name"
@@ -120,24 +111,23 @@
"posizions automatichis e un non di localitât"
#. Translators: %1$s is the start date and %2$s is the end date.
-#. Translators: %1$s is the start date, and %2$s. For example: June 21 -
-#. November 29, 2022
+#. Translators: %1$s is the start date, and %2$s. For example: June 21 - November 29, 2022
#: src/core/gcal-event.c:1906 src/gui/gcal-event-popover.c:395
#, c-format
msgid "%1$s — %2$s"
msgstr "%1$s — %2$s"
+#.
#. * Translators: %1$s is the start date, %2$s is the start time,
#. * %3$s is the end date, and %4$s is the end time.
+#.
#: src/core/gcal-event.c:1914
#, c-format
msgid "%1$s %2$s — %3$s %4$s"
msgstr "%1$s %2$s — %3$s %4$s"
-#. Translators: %1$s is a date, %2$s is the start hour, and %3$s is the end
-#. hour
-#. Translators: %1$s is the event name, %2$s is the start hour, and %3$s is
-#. the end hour
+#. Translators: %1$s is a date, %2$s is the start hour, and %3$s is the end hour
+#. Translators: %1$s is the event name, %2$s is the start hour, and %3$s is the end hour
#: src/core/gcal-event.c:1930 src/gui/gcal-quick-add-popover.c:461
#, c-format
msgid "%1$s, %2$s – %3$s"
@@ -189,51 +179,36 @@
msgid "Color"
msgstr "Colôr"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:134
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:140
msgid "Display calendar"
msgstr "Visualize calendari"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:146
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:152
msgid "Add new events to this calendar by default"
msgstr "Di norme, zontâ gnûfs events a chest calendari"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:158
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:164
msgid "Remove Calendar"
msgstr "Gjave calendari"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:49
+#: src/gui/calendar-management/gcal-file-chooser-button.c:51
msgid "Select a file"
msgstr "Selezione un file"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:94
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:248
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:281
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
-msgid "Cancel"
-msgstr "Anule"
-
-#: src/gui/calendar-management/gcal-file-chooser-button.c:96
-msgid "Open"
-msgstr "Vierç"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.c:512
+#: src/gui/calendar-management/gcal-new-calendar-page.c:516
msgid "New Calendar"
msgstr "Gnûf calendari"
-#: src/gui/calendar-management/gcal-new-calendar-page.c:690
-msgid "Calendar files"
-msgstr "File calendari"
-
#: src/gui/calendar-management/gcal-new-calendar-page.ui:16
#: src/gui/calendar-management/gcal-new-calendar-page.ui:22
msgid "Calendar Name"
msgstr "Non calendari"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:55
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:61
msgid "Import a Calendar"
msgstr "Impuarte un calendari"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:72
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:78
msgid ""
"Alternatively, enter the web address of an online calendar you want to "
"import, or open a supported calendar file."
@@ -241,35 +216,49 @@
"In alternative, inserìs la direzion web di un calendari online che si "
"desidere impuartâ, opûr vierç un file di calendari supuartât."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:100
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:106
msgid "Open a File"
msgstr "Vierç un file"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:124
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:109
+msgid "Calendar files"
+msgstr "File calendari"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:142
msgid "Calendars"
msgstr "Calendaris"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:148
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:166
msgid ""
"If the calendar belongs to one of your online accounts, you can add it "
"through the online account settings."
msgstr ""
-"Se il calendari al fâs part di un dai tiei account online, tu puedis zontâlu"
-" cun Impostazions account online."
+"Se il calendari al fâs part di un dai tiei account online, tu puedis zontâlu "
+"cun Impostazions account online."
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:193
+msgid "Credentials"
+msgstr "Credenziâls"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:194
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:206
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:297
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
+msgid "Cancel"
+msgstr "Anule"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:214
+msgid "Connect"
+msgstr "Conet"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:243
msgid "User"
msgstr "Utent"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:207
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:256
msgid "Password"
msgstr "Password"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:255
-msgid "Connect"
-msgstr "Conet"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:285
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:301
#: src/gui/gcal-quick-add-popover.ui:98
msgid "Add"
msgstr "Zonte"
@@ -476,9 +465,10 @@
msgid "This %A"
msgstr "Chest %A"
-#. * Translators: %1$s is the formatted date (e.g. Today, Sunday, or even
-#. 2019-10-11) and %2$s is the
+#.
+#. * Translators: %1$s is the formatted date (e.g. Today, Sunday, or even 2019-10-11) and %2$s is the
#. * formatted time (e.g. 03:14 PM, or 21:29)
+#.
#: src/gui/event-editor/gcal-schedule-section.c:285
#, c-format
msgid "%1$s, %2$s"
@@ -607,7 +597,7 @@
msgid "translator-credits"
msgstr "Fabio Tomat "
-#: src/gui/gcal-application.c:194 src/gui/gcal-window.ui:282
+#: src/gui/gcal-application.c:194 src/gui/gcal-window.ui:283
msgid "Weather"
msgstr "Timp"
@@ -619,16 +609,16 @@
msgid "_Calendars"
msgstr "_Calendaris"
-#: src/gui/gcal-calendar-button.ui:42
+#: src/gui/gcal-calendar-button.ui:41
msgctxt "tooltip"
msgid "Synchronizing remote calendars…"
msgstr "Daûr a sincronizâ i calendaris esternis…"
-#: src/gui/gcal-calendar-button.ui:72
+#: src/gui/gcal-calendar-button.ui:71
msgid "_Synchronize Calendars"
msgstr "_Sincronize calendaris"
-#: src/gui/gcal-calendar-button.ui:76
+#: src/gui/gcal-calendar-button.ui:75
msgid "Manage Calendars…"
msgstr "Gjestìs i calendaris…"
@@ -695,72 +685,90 @@
msgid "Yesterday %s"
msgstr "Îr %s"
+#.
#. * Translators: %1$s is a month name (e.g. November), %2$d is the day
#. * of month, and %3$ is the hour. This format string results in dates
#. * like "November 21, 22:00".
+#.
#: src/gui/gcal-event-popover.c:175
#, c-format
msgid "%1$s %2$d, %3$s"
msgstr "Al/Ai %2$d di %1$s aes %3$s"
+#.
#. * Translators: %1$s is a month name (e.g. November), %2$d is the day
#. * of month, %3$d is the year, and %4$s is the hour. This format string
#. * results in dates like "November 21, 2020, 22:00".
+#.
#: src/gui/gcal-event-popover.c:187
#, c-format
msgid "%1$s %2$d, %3$d, %4$s"
msgstr "Al/Ai %2$d di %1$s dal %3$d aes %4$s"
+#.
#. * Translators: %1$s is a month name (e.g. November), and %2$d is
#. * the day of month. This format string results in dates like
#. * "November 21".
+#.
#: src/gui/gcal-event-popover.c:216 src/gui/gcal-event-popover.c:330
#, c-format
msgid "%1$s %2$d"
msgstr "Al/Ai %2$d di %1$s"
+#.
#. * Translators: %1$s is a month name (e.g. November), %2$d is the day
#. * of month, and %3$d is the year. This format string results in dates
#. * like "November 21, 2020".
+#.
#: src/gui/gcal-event-popover.c:227 src/gui/gcal-event-popover.c:341
#, c-format
msgid "%1$s %2$d, %3$d"
msgstr "Al/Ai %2$d di %1$s dal %3$d"
+#.
#. * Translators: %1$s is the start hour, and %2$s is the end hour, for
#. * example: "Today, 19:00 — 22:00"
+#.
#: src/gui/gcal-event-popover.c:261
#, c-format
msgid "Today, %1$s — %2$s"
msgstr "Vuê, %1$s — %2$s"
+#.
#. * Translators: %1$s is the start hour, and %2$s is the end hour, for
#. * example: "Tomorrow, 19:00 — 22:00"
+#.
#: src/gui/gcal-event-popover.c:269
#, c-format
msgid "Tomorrow, %1$s – %2$s"
msgstr "Doman, %1$s — %2$s"
+#.
#. * Translators: %1$s is the start hour, and %2$s is the end hour, for
#. * example: "Tomorrow, 19:00 — 22:00"
+#.
#: src/gui/gcal-event-popover.c:277
#, c-format
msgid "Yesterday, %1$s – %2$s"
msgstr "Îr, %1$s – %2$s"
+#.
#. * Translators: %1$s is a month name (e.g. November), %2$d is the day
#. * of month, %3$s is the start hour, and %4$s is the end hour. This
#. * format string results in dates like "November 21, 19:00 — 22:00".
+#.
#: src/gui/gcal-event-popover.c:286
#, c-format
msgid "%1$s %2$d, %3$s – %4$s"
msgstr "Al/Ai %2$d di %1$s, %3$s – %4$s"
+#.
#. * Translators: %1$s is a month name (e.g. November), %2$d is the day
#. * of month, %3$d is the year, %4$s is the start hour, and %5$s is the
#. * end hour. This format string results in dates like:
#. *
#. * "November 21, 2021, 19:00 — 22:00".
+#.
#: src/gui/gcal-event-popover.c:301
#, c-format
msgid "%1$s %2$d, %3$d, %4$s – %5$s"
@@ -888,6 +896,7 @@
#. Translators:
#. * this is the format string for representing a date consisting of a month
#. * name and a date of month.
+#.
#: src/gui/gcal-quick-add-popover.c:301
#, c-format
msgid "from %1$s %2$s"
@@ -911,13 +920,13 @@
#. Translators:
#. * this is the format string for representing a date consisting of a month
#. * name and a date of month.
+#.
#: src/gui/gcal-quick-add-popover.c:338
#, c-format
msgid "to %1$s %2$s"
msgstr "al/ai %2$s di %1$s"
-#. Translators: %1$s is the start date (e.g. "from Today") and %2$s is the end
-#. date (e.g. "to Tomorrow")
+#. Translators: %1$s is the start date (e.g. "from Today") and %2$s is the end date (e.g. "to Tomorrow")
#: src/gui/gcal-quick-add-popover.c:345
#, c-format
msgid "New Event %1$s %2$s"
@@ -1049,15 +1058,15 @@
msgid "Automatic Location"
msgstr "Posizion automatiche"
-#: src/gui/gcal-window.c:701
+#: src/gui/gcal-window.c:714
msgid "Another event deleted"
msgstr "Un altri event eliminât"
-#: src/gui/gcal-window.c:701
+#: src/gui/gcal-window.c:714
msgid "Event deleted"
msgstr "Event eliminât"
-#: src/gui/gcal-window.c:703
+#: src/gui/gcal-window.c:716
msgid "_Undo"
msgstr "_Disfe"
@@ -1065,27 +1074,27 @@
msgid "Main Menu"
msgstr "Menù principâl"
-#: src/gui/gcal-window.ui:155 src/gui/gcal-window.ui:188
+#: src/gui/gcal-window.ui:156 src/gui/gcal-window.ui:189
msgid "_Today"
msgstr "_Vuê"
-#: src/gui/gcal-window.ui:222
+#: src/gui/gcal-window.ui:223
msgid "_Week"
msgstr "_Setemane"
-#: src/gui/gcal-window.ui:237
+#: src/gui/gcal-window.ui:238
msgid "_Month"
msgstr "_Mês"
-#: src/gui/gcal-window.ui:278
+#: src/gui/gcal-window.ui:279
msgid "_Online Accounts…"
msgstr "Account _online…"
-#: src/gui/gcal-window.ui:290
+#: src/gui/gcal-window.ui:291
msgid "_Keyboard Shortcuts"
msgstr "_Scurtis tastiere"
-#: src/gui/gcal-window.ui:294
+#: src/gui/gcal-window.ui:295
msgid "_About Calendar"
msgstr "_Informazions su Calendari"
@@ -1223,11 +1232,11 @@
msgid "Description"
msgstr "Descrizion"
-#: src/gui/views/gcal-agenda-view.c:373
+#: src/gui/views/gcal-agenda-view.c:366
msgid "On-going"
msgstr "In cors"
-#: src/gui/views/gcal-agenda-view.ui:36
+#: src/gui/views/gcal-agenda-view.ui:19
msgid "No events"
msgstr "Nissun event"
@@ -1235,22 +1244,22 @@
msgid "New Event…"
msgstr "Gnûf event…"
-#: src/gui/views/gcal-week-grid.c:581
+#: src/gui/views/gcal-week-grid.c:576
msgid "00 AM"
msgstr "00 AM"
-#: src/gui/views/gcal-week-grid.c:584
+#: src/gui/views/gcal-week-grid.c:579
msgid "00:00"
msgstr "00:00"
-#: src/gui/views/gcal-week-header.c:478
+#: src/gui/views/gcal-week-header.c:472
#, c-format
msgid "Other event"
msgid_plural "Other %d events"
msgstr[0] "Altri event"
msgstr[1] "Altris %d events"
-#: src/gui/views/gcal-week-header.c:1006
+#: src/gui/views/gcal-week-header.c:1000
#, c-format
msgid "week %d"
msgstr "setemane %d"
@@ -1275,6 +1284,15 @@
msgid "_All events"
msgstr "_Ducj i events"
+#~ msgid "Window position"
+#~ msgstr "Posizion barcon"
+
+#~ msgid "Window position (x and y)."
+#~ msgstr "La posizion dal barcon (x e y)."
+
+#~ msgid "Open"
+#~ msgstr "Vierç"
+
#~ msgid "Year view"
#~ msgstr "Viodude anuâl"
@@ -1322,9 +1340,6 @@
#~ msgid "New Local Calendar…"
#~ msgstr "Gnûf calendari locâl…"
-#~ msgid "Enter your credentials"
-#~ msgstr "Inserìs lis tôs credenziâls"
-
#~ msgid "No results found"
#~ msgstr "Nissun risultât cjatât"
diff -Nru gnome-calendar-44.0/po/nl.po gnome-calendar-44.1/po/nl.po
--- gnome-calendar-44.0/po/nl.po 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/po/nl.po 2023-04-22 09:51:06.000000000 +0000
@@ -2,23 +2,23 @@
# Copyright (C) 2015 gnome-calendar's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-calendar package.
#
-# Nathan Follens , 2015-2022.
+# Nathan Follens , 2015-2023.
# Justin van Steijn , 2017.
# Hannie Dumoleyn , 2015, 2016, 2017, 2018, 2019.
msgid ""
msgstr ""
"Project-Id-Version: gnome-calendar gnome-3-16\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-calendar/issues\n"
-"POT-Creation-Date: 2022-09-16 18:47+0000\n"
-"PO-Revision-Date: 2022-11-02 00:31+0100\n"
+"POT-Creation-Date: 2023-03-16 14:29+0000\n"
+"PO-Revision-Date: 2023-03-26 14:36+0200\n"
"Last-Translator: Nathan Follens \n"
-"Language-Team: Dutch \n"
+"Language-Team: Dutch \n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 3.1.1\n"
+"X-Generator: Poedit 3.2.2\n"
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:7
#: data/org.gnome.Calendar.desktop.in.in:3 src/main.c:35
@@ -29,7 +29,7 @@
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:8
msgid "Calendar for GNOME"
-msgstr "Agenda voor Gnome"
+msgstr "Agenda voor GNOME"
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:11
msgid ""
@@ -37,9 +37,9 @@
"perfectly fit the GNOME desktop. By reusing the components which the GNOME "
"desktop is built on, Calendar nicely integrates with the GNOME ecosystem."
msgstr ""
-"Gnome Agenda is een eenvoudig en mooi agendaprogramma dat perfect aansluit "
-"bij de Gnome-werkomgeving. Door de onderdelen waarop de Gnome-werkomgeving "
-"is gebouwd opnieuw te gebruiken, integreert Agenda mooi binnen het Gnome-"
+"GNOME Agenda is een eenvoudig en mooi agendaprogramma dat perfect aansluit "
+"bij de GNOME-werkomgeving. Door de onderdelen waarop de GNOME-werkomgeving "
+"is gebouwd opnieuw te gebruiken, integreert Agenda mooi binnen het GNOME-"
"systeem."
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:16
@@ -93,26 +93,18 @@
msgstr "Venstergrootte (breedte en hoogte)."
#: data/org.gnome.calendar.gschema.xml.in:16
-msgid "Window position"
-msgstr "Vensterpositie"
-
-#: data/org.gnome.calendar.gschema.xml.in:17
-msgid "Window position (x and y)."
-msgstr "Vensterpositie (x en y)."
-
-#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Type of the active view"
msgstr "Het type van de actieve weergave"
-#: data/org.gnome.calendar.gschema.xml.in:22
+#: data/org.gnome.calendar.gschema.xml.in:17
msgid "Type of the active window view, default value is: monthly view"
msgstr "Type van de actieve vensterweergave, standaardwaarde is: maandweergave"
-#: data/org.gnome.calendar.gschema.xml.in:26
+#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Weather Service Configuration"
msgstr "Configuratie van weerdienst"
-#: data/org.gnome.calendar.gschema.xml.in:27
+#: data/org.gnome.calendar.gschema.xml.in:22
msgid ""
"Whether weather reports are shown, automatic locations are used and a "
"location-name"
@@ -189,51 +181,36 @@
msgid "Color"
msgstr "Kleur"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:134
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:140
msgid "Display calendar"
msgstr "Agenda weergeven"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:146
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:152
msgid "Add new events to this calendar by default"
msgstr "Nieuwe afspraken standaard aan deze agenda toevoegen"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:158
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:164
msgid "Remove Calendar"
msgstr "Agenda verwijderen"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:49
+#: src/gui/calendar-management/gcal-file-chooser-button.c:51
msgid "Select a file"
msgstr "Kies een bestand"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:94
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:248
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:281
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
-msgid "Cancel"
-msgstr "Annuleren"
-
-#: src/gui/calendar-management/gcal-file-chooser-button.c:96
-msgid "Open"
-msgstr "Openen"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.c:512
+#: src/gui/calendar-management/gcal-new-calendar-page.c:516
msgid "New Calendar"
msgstr "Nieuwe agenda"
-#: src/gui/calendar-management/gcal-new-calendar-page.c:690
-msgid "Calendar files"
-msgstr "Agendabestanden"
-
#: src/gui/calendar-management/gcal-new-calendar-page.ui:16
#: src/gui/calendar-management/gcal-new-calendar-page.ui:22
msgid "Calendar Name"
msgstr "Agendanaam"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:55
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:61
msgid "Import a Calendar"
msgstr "Agenda importeren"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:72
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:78
msgid ""
"Alternatively, enter the web address of an online calendar you want to "
"import, or open a supported calendar file."
@@ -241,16 +218,19 @@
"U kunt ook het webadres van een te importeren online-agenda invoeren, of een "
"ondersteund agendabestand openen."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:100
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:106
msgid "Open a File"
msgstr "Bestand openen"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:124
-#: src/gui/gcal-calendar-button.ui:23
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:109
+msgid "Calendar files"
+msgstr "Agendabestanden"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:142
msgid "Calendars"
msgstr "Agenda’s"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:148
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:166
msgid ""
"If the calendar belongs to one of your online accounts, you can add it "
"through the online account settings."
@@ -258,19 +238,29 @@
"Als de agenda deel uitmaakt van een van uw online-accounts, kunt u deze "
"toevoegen via de online-accountinstellingen."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:194
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:193
+msgid "Credentials"
+msgstr "Aanmeldgegevens"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:206
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:297
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
+msgid "Cancel"
+msgstr "Annuleren"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:214
+msgid "Connect"
+msgstr "Verbinden"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:243
msgid "User"
msgstr "Gebruiker"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:207
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:256
msgid "Password"
msgstr "Wachtwoord"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:255
-msgid "Connect"
-msgstr "Verbinden"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:285
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:301
#: src/gui/gcal-quick-add-popover.ui:98
msgid "Add"
msgstr "Toevoegen"
@@ -403,7 +393,7 @@
msgid "Notes"
msgstr "Opmerkingen"
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:158
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:159
msgid "Delete Event"
msgstr "Afspraak verwijderen"
@@ -461,7 +451,6 @@
#: src/gui/event-editor/gcal-schedule-section.c:246
#: src/gui/gcal-event-popover.c:199 src/gui/gcal-event-popover.c:313
-#: src/gui/gcal-window.ui:154 src/gui/gcal-window.ui:186
#: src/gui/views/gcal-agenda-view.c:182
msgid "Today"
msgstr "Vandaag"
@@ -579,7 +568,7 @@
#: src/gui/gcal-application.c:58
msgid "Quit GNOME Calendar"
-msgstr "Gnome Agenda afsluiten"
+msgstr "GNOME Agenda afsluiten"
#: src/gui/gcal-application.c:63
msgid "Display version number"
@@ -604,17 +593,17 @@
#: src/gui/gcal-application.c:180
msgid "The GNOME Project"
-msgstr "Het Gnome-project"
+msgstr "Het GNOME-project"
-#: src/gui/gcal-application.c:188
+#: src/gui/gcal-application.c:189
msgid "translator-credits"
msgstr ""
"Nathan Follens \n"
"Hannie Dumoleyn\n"
"Justin van Steijn\n"
-"Meer info over Gnome-NL http://nl.gnome.org"
+"Meer info over GNOME-NL https://nl.gnome.org"
-#: src/gui/gcal-application.c:193 src/gui/gcal-window.ui:277
+#: src/gui/gcal-application.c:194 src/gui/gcal-window.ui:283
msgid "Weather"
msgstr "Weer"
@@ -622,6 +611,10 @@
msgid "Manage your calendars"
msgstr "Uw agenda’s beheren"
+#: src/gui/gcal-calendar-button.ui:23
+msgid "_Calendars"
+msgstr "_Agenda’s"
+
#: src/gui/gcal-calendar-button.ui:41
msgctxt "tooltip"
msgid "Synchronizing remote calendars…"
@@ -796,7 +789,7 @@
msgstr "Bewerken…"
#. Translators: %s is the location of the event (e.g. "Downtown, 3rd Avenue")
-#: src/gui/gcal-event-widget.c:350
+#: src/gui/gcal-event-widget.c:351
#, c-format
msgid "At %s"
msgstr "Bij %s"
@@ -817,7 +810,11 @@
msgid "Zoom"
msgstr "Zoom"
-#: src/gui/gcal-meeting-row.c:78
+#: src/gui/gcal-meeting-row.c:69
+msgid "Microsoft Teams"
+msgstr "Microsoft Teams"
+
+#: src/gui/gcal-meeting-row.c:79
msgid "Unknown Service"
msgstr "Onbekende dienst"
@@ -1067,35 +1064,43 @@
msgid "Automatic Location"
msgstr "Automatische locatie"
-#: src/gui/gcal-window.c:699
+#: src/gui/gcal-window.c:714
msgid "Another event deleted"
msgstr "Nog een afspraak verwijderd"
-#: src/gui/gcal-window.c:699
+#: src/gui/gcal-window.c:714
msgid "Event deleted"
msgstr "Afspraak verwijderd"
-#: src/gui/gcal-window.c:701
+#: src/gui/gcal-window.c:716
msgid "_Undo"
msgstr "_Ongedaan maken"
-#: src/gui/gcal-window.ui:219
-msgid "Week"
-msgstr "Week"
-
-#: src/gui/gcal-window.ui:233
-msgid "Month"
-msgstr "Maand"
+#: src/gui/gcal-window.ui:117
+msgid "Main Menu"
+msgstr "Hoofdmenu"
+
+#: src/gui/gcal-window.ui:156 src/gui/gcal-window.ui:189
+msgid "_Today"
+msgstr "_Vandaag"
+
+#: src/gui/gcal-window.ui:223
+msgid "_Week"
+msgstr "_Week"
+
+#: src/gui/gcal-window.ui:238
+msgid "_Month"
+msgstr "_Maand"
-#: src/gui/gcal-window.ui:273
+#: src/gui/gcal-window.ui:279
msgid "_Online Accounts…"
msgstr "_Online-accounts…"
-#: src/gui/gcal-window.ui:285
+#: src/gui/gcal-window.ui:291
msgid "_Keyboard Shortcuts"
msgstr "_Sneltoetsen"
-#: src/gui/gcal-window.ui:289
+#: src/gui/gcal-window.ui:295
msgid "_About Calendar"
msgstr "Over _Agenda"
@@ -1185,7 +1190,7 @@
msgid "Import Files…"
msgstr "Bestanden importeren…"
-#: src/gui/importer/gcal-import-dialog.ui:20 src/utils/gcal-utils.c:1323
+#: src/gui/importer/gcal-import-dialog.ui:20 src/utils/gcal-utils.c:1320
msgid "_Cancel"
msgstr "_Annuleren"
@@ -1233,7 +1238,11 @@
msgid "Description"
msgstr "Omschrijving"
-#: src/gui/views/gcal-agenda-view.ui:36
+#: src/gui/views/gcal-agenda-view.c:366
+msgid "On-going"
+msgstr "Bezig"
+
+#: src/gui/views/gcal-agenda-view.ui:19
msgid "No events"
msgstr "Geen afspraken"
@@ -1241,27 +1250,27 @@
msgid "New Event…"
msgstr "Nieuwe afspraak…"
-#: src/gui/views/gcal-week-grid.c:580
+#: src/gui/views/gcal-week-grid.c:576
msgid "00 AM"
msgstr "0:00"
-#: src/gui/views/gcal-week-grid.c:583
+#: src/gui/views/gcal-week-grid.c:579
msgid "00:00"
msgstr "00:00"
-#: src/gui/views/gcal-week-header.c:478
+#: src/gui/views/gcal-week-header.c:472
#, c-format
msgid "Other event"
msgid_plural "Other %d events"
msgstr[0] "Andere afspraak"
msgstr[1] "Andere %d afspraken"
-#: src/gui/views/gcal-week-header.c:1006
+#: src/gui/views/gcal-week-header.c:1000
#, c-format
msgid "week %d"
msgstr "week %d"
-#: src/utils/gcal-utils.c:1320
+#: src/utils/gcal-utils.c:1317
msgid ""
"The event you are trying to modify is recurring. The changes you have "
"selected should be applied to:"
@@ -1269,18 +1278,27 @@
"De afspraak die u probeert te bewerken is terugkerend. De wijzigingen die u "
"heeft gemaakt worden toegepast op:"
-#: src/utils/gcal-utils.c:1325
+#: src/utils/gcal-utils.c:1322
msgid "_Only This Event"
msgstr "_Alleen deze afspraak"
-#: src/utils/gcal-utils.c:1332
+#: src/utils/gcal-utils.c:1329
msgid "_Subsequent events"
msgstr "Komende af_spraken"
-#: src/utils/gcal-utils.c:1334
+#: src/utils/gcal-utils.c:1332
msgid "_All events"
msgstr "_Alle afspraken"
+#~ msgid "Window position"
+#~ msgstr "Vensterpositie"
+
+#~ msgid "Window position (x and y)."
+#~ msgstr "Vensterpositie (x en y)."
+
+#~ msgid "Open"
+#~ msgstr "Openen"
+
#~ msgid "Year view"
#~ msgstr "Jaarweergave"
@@ -1354,9 +1372,6 @@
#~ msgid "Nextcloud"
#~ msgstr "Nextcloud"
-#~ msgid "Microsoft Exchange"
-#~ msgstr "Microsoft Exchange"
-
#~ msgid "Overview"
#~ msgstr "Overzicht"
@@ -1366,9 +1381,6 @@
#~ msgid "Calendar Address"
#~ msgstr "Agenda-adres"
-#~ msgid "Enter your credentials"
-#~ msgstr "Voer uw aanmeldgegevens in"
-
#~ msgid "Unnamed Calendar"
#~ msgstr "Naamloze agenda"
@@ -1390,9 +1402,6 @@
#~ msgid "Use the entry above to search for events."
#~ msgstr "Gebruik de invoer hierboven om te zoeken naar afspraken."
-#~ msgid "_Calendars"
-#~ msgstr "_Agenda’s"
-
#~ msgid "_About"
#~ msgstr "_Info"
diff -Nru gnome-calendar-44.0/po/pt.po gnome-calendar-44.1/po/pt.po
--- gnome-calendar-44.0/po/pt.po 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/po/pt.po 2023-04-22 09:51:06.000000000 +0000
@@ -12,8 +12,8 @@
msgstr ""
"Project-Id-Version: gnome-calendar master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-calendar/issues\n"
-"POT-Creation-Date: 2023-03-03 22:56+0000\n"
-"PO-Revision-Date: 2023-03-06 16:50+0000\n"
+"POT-Creation-Date: 2023-03-16 12:30+0000\n"
+"PO-Revision-Date: 2023-03-16 13:35+0000\n"
"Last-Translator: Hugo Carvalho \n"
"Language-Team: Português (https://l10n.gnome.org/teams/pt/)\n"
"Language: pt\n"
@@ -57,11 +57,11 @@
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:24
msgid "Week view"
-msgstr "Vista da semana"
+msgstr "Visualização da semana"
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:28
msgid "Month view"
-msgstr "Vista do mês"
+msgstr "Visualização do mês"
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:32
msgid "Event editor"
@@ -93,26 +93,19 @@
msgstr "Tamanho da janela (largura e altura)."
#: data/org.gnome.calendar.gschema.xml.in:16
-msgid "Window position"
-msgstr "Posição da janela"
-
-#: data/org.gnome.calendar.gschema.xml.in:17
-msgid "Window position (x and y)."
-msgstr "Posição da janela (x e y)."
-
-#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Type of the active view"
-msgstr "Tipo da visão ativa"
+msgstr "Tipo da visualização ativa"
-#: data/org.gnome.calendar.gschema.xml.in:22
+#: data/org.gnome.calendar.gschema.xml.in:17
msgid "Type of the active window view, default value is: monthly view"
-msgstr "Tipo da visão da janela ativa, sendo o padrão: visão mensal"
+msgstr ""
+"Tipo da visualização da janela ativa, sendo o padrão: visualização mensal"
-#: data/org.gnome.calendar.gschema.xml.in:26
+#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Weather Service Configuration"
msgstr "Configuração do serviço de meteorologia"
-#: data/org.gnome.calendar.gschema.xml.in:27
+#: data/org.gnome.calendar.gschema.xml.in:22
msgid ""
"Whether weather reports are shown, automatic locations are used and a "
"location-name"
@@ -120,6 +113,14 @@
"Determine se são mostrados relatórios meteorológicos, se são usadas "
"localizações automáticas, e o nome de uma localização"
+#: data/org.gnome.calendar.gschema.xml.in:26
+msgid "Zoom level of the week grid"
+msgstr "Nível de zoom da grelha da semana"
+
+#: data/org.gnome.calendar.gschema.xml.in:27
+msgid "The current zoom level of the week grid"
+msgstr "O atual nível de zoom da grelha da semana"
+
#. Translators: %1$s is the start date and %2$s is the end date.
#. Translators: %1$s is the start date, and %2$s. For example: June 21 - November 29, 2022
#: src/core/gcal-event.c:1906 src/gui/gcal-event-popover.c:395
@@ -189,51 +190,36 @@
msgid "Color"
msgstr "Cor"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:134
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:140
msgid "Display calendar"
msgstr "Mostrar calendário"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:146
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:152
msgid "Add new events to this calendar by default"
msgstr "Adicionar novos eventos a este calendário por predefinição"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:158
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:164
msgid "Remove Calendar"
msgstr "Remover calendário"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:49
+#: src/gui/calendar-management/gcal-file-chooser-button.c:51
msgid "Select a file"
msgstr "Selecionar um ficheiro"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:94
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:188
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:290
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
-msgid "Cancel"
-msgstr "Cancelar"
-
-#: src/gui/calendar-management/gcal-file-chooser-button.c:96
-msgid "Open"
-msgstr "Abrir"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.c:517
+#: src/gui/calendar-management/gcal-new-calendar-page.c:516
msgid "New Calendar"
msgstr "Novo calendário"
-#: src/gui/calendar-management/gcal-new-calendar-page.c:695
-msgid "Calendar files"
-msgstr "Ficheiros de calendário"
-
#: src/gui/calendar-management/gcal-new-calendar-page.ui:16
#: src/gui/calendar-management/gcal-new-calendar-page.ui:22
msgid "Calendar Name"
msgstr "Nome do calendário"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:55
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:61
msgid "Import a Calendar"
msgstr "Importar um calendário"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:72
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:78
msgid ""
"Alternatively, enter the web address of an online calendar you want to "
"import, or open a supported calendar file."
@@ -241,15 +227,19 @@
"Alternativamente, introduza o endereço web de um calendário que deseje "
"importar, ou abra um ficheiro de calendário suportado."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:100
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:106
msgid "Open a File"
msgstr "Abrir um ficheiro"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:124
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:109
+msgid "Calendar files"
+msgstr "Ficheiros de calendário"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:142
msgid "Calendars"
msgstr "Caléndários"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:148
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:166
msgid ""
"If the calendar belongs to one of your online accounts, you can add it "
"through the online account settings."
@@ -257,23 +247,29 @@
"Se o calendário pertence a uma das suas contas online, pode adicioná-lo "
"através das definições de contas online."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:175
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:193
msgid "Credentials"
msgstr "Credenciais"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:196
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:206
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:297
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
+msgid "Cancel"
+msgstr "Cancelar"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:214
msgid "Connect"
msgstr "Ligar"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:225
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:243
msgid "User"
msgstr "Utilizador"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:238
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:256
msgid "Password"
msgstr "Palavra-passe"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:294
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:301
#: src/gui/gcal-quick-add-popover.ui:98
msgid "Add"
msgstr "Adicionar"
@@ -629,16 +625,16 @@
msgid "_Calendars"
msgstr "_Caléndários"
-#: src/gui/gcal-calendar-button.ui:42
+#: src/gui/gcal-calendar-button.ui:41
msgctxt "tooltip"
msgid "Synchronizing remote calendars…"
msgstr "A sincronizar os calendários remotos…"
-#: src/gui/gcal-calendar-button.ui:72
+#: src/gui/gcal-calendar-button.ui:71
msgid "_Synchronize Calendars"
msgstr "_Sincronizar calendários"
-#: src/gui/gcal-calendar-button.ui:76
+#: src/gui/gcal-calendar-button.ui:75
msgid "Manage Calendars…"
msgstr "Gerir calendários…"
@@ -1078,15 +1074,15 @@
msgid "Automatic Location"
msgstr "Localização automática"
-#: src/gui/gcal-window.c:713
+#: src/gui/gcal-window.c:714
msgid "Another event deleted"
msgstr "Outro evento eliminado"
-#: src/gui/gcal-window.c:713
+#: src/gui/gcal-window.c:714
msgid "Event deleted"
msgstr "Evento eliminado"
-#: src/gui/gcal-window.c:715
+#: src/gui/gcal-window.c:716
msgid "_Undo"
msgstr "An_ular"
@@ -1171,12 +1167,12 @@
#: src/gui/gtk/help-overlay.ui:67
msgctxt "shortcut window"
msgid "Next view"
-msgstr "Próxima vista"
+msgstr "Visualização seguinte"
#: src/gui/gtk/help-overlay.ui:73
msgctxt "shortcut window"
msgid "Previous view"
-msgstr "Vista anterior"
+msgstr "Visualização anterior"
#: src/gui/gtk/help-overlay.ui:81
msgctxt "shortcut window"
@@ -1186,12 +1182,12 @@
#: src/gui/gtk/help-overlay.ui:84
msgctxt "shortcut window"
msgid "Week view"
-msgstr "Vista da semana"
+msgstr "Visualização da semana"
#: src/gui/gtk/help-overlay.ui:90
msgctxt "shortcut window"
msgid "Month view"
-msgstr "Vista do mês"
+msgstr "Visualização do mês"
#: src/gui/importer/gcal-import-dialog.c:396
#, c-format
@@ -1304,6 +1300,15 @@
msgid "_All events"
msgstr "_Todos os eventos"
+#~ msgid "Window position"
+#~ msgstr "Posição da janela"
+
+#~ msgid "Window position (x and y)."
+#~ msgstr "Posição da janela (x e y)."
+
+#~ msgid "Open"
+#~ msgstr "Abrir"
+
#~ msgid "Year view"
#~ msgstr "Vista de ano"
diff -Nru gnome-calendar-44.0/po/ru.po gnome-calendar-44.1/po/ru.po
--- gnome-calendar-44.0/po/ru.po 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/po/ru.po 2023-04-22 09:51:06.000000000 +0000
@@ -11,8 +11,8 @@
msgstr ""
"Project-Id-Version: gnome-calendar master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-calendar/issues\n"
-"POT-Creation-Date: 2023-03-03 22:56+0000\n"
-"PO-Revision-Date: 2023-03-04 12:47+0300\n"
+"POT-Creation-Date: 2023-03-16 12:30+0000\n"
+"PO-Revision-Date: 2023-03-16 16:12+0300\n"
"Last-Translator: Aleksandr Melman \n"
"Language-Team: Russian \n"
"Language: ru\n"
@@ -99,26 +99,18 @@
msgstr "Размер окна (ширина и высота)."
#: data/org.gnome.calendar.gschema.xml.in:16
-msgid "Window position"
-msgstr "Расположение окна"
-
-#: data/org.gnome.calendar.gschema.xml.in:17
-msgid "Window position (x and y)."
-msgstr "Расположение окна (x и y)."
-
-#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Type of the active view"
msgstr "Текущий режим просмотра"
-#: data/org.gnome.calendar.gschema.xml.in:22
+#: data/org.gnome.calendar.gschema.xml.in:17
msgid "Type of the active window view, default value is: monthly view"
msgstr "Текущий режим просмотра, по умолчанию используется месячный просмотр"
-#: data/org.gnome.calendar.gschema.xml.in:26
+#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Weather Service Configuration"
msgstr "Конфигурация службы погоды"
-#: data/org.gnome.calendar.gschema.xml.in:27
+#: data/org.gnome.calendar.gschema.xml.in:22
msgid ""
"Whether weather reports are shown, automatic locations are used and a "
"location-name"
@@ -126,6 +118,14 @@
"Отображаются ли отчеты о погоде, используются автоматические местоположения "
"и имя местопложения"
+#: data/org.gnome.calendar.gschema.xml.in:26
+msgid "Zoom level of the week grid"
+msgstr "Уровень масштабирования недельной сетки"
+
+#: data/org.gnome.calendar.gschema.xml.in:27
+msgid "The current zoom level of the week grid"
+msgstr "Текущий уровень масштабирования недельной сетки"
+
#. Translators: %1$s is the start date and %2$s is the end date.
#. Translators: %1$s is the start date, and %2$s. For example: June 21 - November 29, 2022
#: src/core/gcal-event.c:1906 src/gui/gcal-event-popover.c:395
@@ -195,51 +195,36 @@
msgid "Color"
msgstr "Цвет"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:134
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:140
msgid "Display calendar"
msgstr "Показать календарь"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:146
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:152
msgid "Add new events to this calendar by default"
msgstr "Добавлять новые события в этот календарь по умолчанию"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:158
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:164
msgid "Remove Calendar"
msgstr "Удалить календарь"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:49
+#: src/gui/calendar-management/gcal-file-chooser-button.c:51
msgid "Select a file"
msgstr "Выбрать файл"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:94
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:188
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:290
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
-msgid "Cancel"
-msgstr "Отмена"
-
-#: src/gui/calendar-management/gcal-file-chooser-button.c:96
-msgid "Open"
-msgstr "Открыть"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.c:517
+#: src/gui/calendar-management/gcal-new-calendar-page.c:516
msgid "New Calendar"
msgstr "Создать календарь"
-#: src/gui/calendar-management/gcal-new-calendar-page.c:695
-msgid "Calendar files"
-msgstr "Файлы календаря"
-
#: src/gui/calendar-management/gcal-new-calendar-page.ui:16
#: src/gui/calendar-management/gcal-new-calendar-page.ui:22
msgid "Calendar Name"
msgstr "Имя календаря"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:55
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:61
msgid "Import a Calendar"
msgstr "Импортировать календарь"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:72
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:78
msgid ""
"Alternatively, enter the web address of an online calendar you want to "
"import, or open a supported calendar file."
@@ -247,15 +232,19 @@
"Либо введите веб-адрес онлайн-календаря, который хотите импортировать, или "
"откройте поддерживаемый файл календаря."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:100
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:106
msgid "Open a File"
msgstr "Открыть файл"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:124
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:109
+msgid "Calendar files"
+msgstr "Файлы календаря"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:142
msgid "Calendars"
msgstr "Календари"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:148
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:166
msgid ""
"If the calendar belongs to one of your online accounts, you can add it "
"through the online account settings."
@@ -263,23 +252,29 @@
"Если календарь относится к одной из сетевых учётных записей, его можно "
"добавить через настройки сетевых учётных записей."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:175
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:193
msgid "Credentials"
msgstr "Учетные данные"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:196
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:206
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:297
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
+msgid "Cancel"
+msgstr "Отмена"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:214
msgid "Connect"
msgstr "Подключить"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:225
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:243
msgid "User"
msgstr "Пользователь"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:238
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:256
msgid "Password"
msgstr "Пароль"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:294
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:301
#: src/gui/gcal-quick-add-popover.ui:98
msgid "Add"
msgstr "Добавить"
@@ -647,16 +642,16 @@
msgid "_Calendars"
msgstr "_Календари"
-#: src/gui/gcal-calendar-button.ui:42
+#: src/gui/gcal-calendar-button.ui:41
msgctxt "tooltip"
msgid "Synchronizing remote calendars…"
msgstr "Синхронизировать удалённые календари…"
-#: src/gui/gcal-calendar-button.ui:72
+#: src/gui/gcal-calendar-button.ui:71
msgid "_Synchronize Calendars"
msgstr "_Синхронизировать календари"
-#: src/gui/gcal-calendar-button.ui:76
+#: src/gui/gcal-calendar-button.ui:75
msgid "Manage Calendars…"
msgstr "Управление календарями…"
@@ -1096,15 +1091,15 @@
msgid "Automatic Location"
msgstr "Автоматическое местоположение"
-#: src/gui/gcal-window.c:713
+#: src/gui/gcal-window.c:714
msgid "Another event deleted"
msgstr "Ещё одно событие удалено"
-#: src/gui/gcal-window.c:713
+#: src/gui/gcal-window.c:714
msgid "Event deleted"
msgstr "Событие удалено"
-#: src/gui/gcal-window.c:715
+#: src/gui/gcal-window.c:716
msgid "_Undo"
msgstr "_Вернуть"
@@ -1324,6 +1319,15 @@
msgid "_All events"
msgstr "_Все события"
+#~ msgid "Window position"
+#~ msgstr "Расположение окна"
+
+#~ msgid "Window position (x and y)."
+#~ msgstr "Расположение окна (x и y)."
+
+#~ msgid "Open"
+#~ msgstr "Открыть"
+
#~ msgid "Year view"
#~ msgstr "Просмотр года"
diff -Nru gnome-calendar-44.0/po/vi.po gnome-calendar-44.1/po/vi.po
--- gnome-calendar-44.0/po/vi.po 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/po/vi.po 2023-04-22 09:51:06.000000000 +0000
@@ -1,14 +1,14 @@
# Vietnamese translation for gnome-calendar.
# Copyright (C) 2021 gnome-calendar's COPYRIGHT HOLDER
# This file is distributed under the same license as the gnome-calendar package.
-# Ngọc Quân Trần , 2021.
+# Ngọc Quân Trần , 2021, 2023.
#
msgid ""
msgstr ""
-"Project-Id-Version: gnome-calendar master\n"
+"Project-Id-Version: gnome-calendar main\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-calendar/issues\n"
-"POT-Creation-Date: 2021-09-23 11:14+0000\n"
-"PO-Revision-Date: 2021-09-25 08:50+0700\n"
+"POT-Creation-Date: 2023-04-05 15:43+0000\n"
+"PO-Revision-Date: 2023-04-08 09:18+0700\n"
"Last-Translator: Trần Ngọc Quân \n"
"Language-Team: Vietnamese \n"
"Language: vi\n"
@@ -20,8 +20,8 @@
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:7
#: data/org.gnome.Calendar.desktop.in.in:3 src/main.c:35
-#: src/gui/gcal-application.c:206 src/gui/gcal-quick-add-popover.ui:187
-#: src/gui/gcal-window.ui:173
+#: src/gui/gcal-application.c:178 src/gui/gcal-quick-add-popover.ui:135
+#: src/gui/gcal-window.ui:4
msgid "Calendar"
msgstr "Lịch"
@@ -51,13 +51,17 @@
"thiếu gì. Bạn sẽ cảm thấy thoải mái khi sử dụng Lịch, giống như bạn đã sử "
"dụng nó trong nhiều năm!"
-#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:27
+#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:24
msgid "Week view"
msgstr "Xem tuần"
-#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:31
-msgid "Year view"
-msgstr "Xem năm"
+#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:28
+msgid "Month view"
+msgstr "Xem tháng"
+
+#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:32
+msgid "Event editor"
+msgstr "Chỉnh sửa sự kiện"
#: data/org.gnome.Calendar.desktop.in.in:4
msgid "Access and manage your calendars"
@@ -85,27 +89,19 @@
msgstr "Kích thước cửa sổ (rộng và cao)."
#: data/org.gnome.calendar.gschema.xml.in:16
-msgid "Window position"
-msgstr "Vị trí cửa sổ"
-
-#: data/org.gnome.calendar.gschema.xml.in:17
-msgid "Window position (x and y)."
-msgstr "Vị trí cửa sổ (x và y)."
-
-#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Type of the active view"
msgstr "Kiểu xem hoạt động"
-#: data/org.gnome.calendar.gschema.xml.in:22
+#: data/org.gnome.calendar.gschema.xml.in:17
msgid "Type of the active window view, default value is: monthly view"
msgstr ""
"Kiểu của xem cửa sổ hiện hoạt động, giá trị mặc định là: dạng xem hàng tháng"
-#: data/org.gnome.calendar.gschema.xml.in:26
+#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Weather Service Configuration"
msgstr "Cấu hình dịch vụ Thời tiết"
-#: data/org.gnome.calendar.gschema.xml.in:27
+#: data/org.gnome.calendar.gschema.xml.in:22
msgid ""
"Whether weather reports are shown, automatic locations are used and a "
"location-name"
@@ -113,17 +109,9 @@
"Có cho hiển thị báo cáo thời tiết, vị trí tự động được sử dụng và tên-địa-"
"phương"
-#: data/org.gnome.calendar.gschema.xml.in:31
-msgid "Follow system night light"
-msgstr "Theo ánh sáng đêm hệ thống"
-
-#: data/org.gnome.calendar.gschema.xml.in:32
-msgid "Use GNOME night light setting to activate night-mode."
-msgstr "Sử dụng cài đặt ánh sáng đêm GNOME để kích hoạt chế độ đêm."
-
#. Translators: %1$s is the start date and %2$s is the end date.
#. Translators: %1$s is the start date, and %2$s. For example: June 21 - November 29, 2022
-#: src/core/gcal-event.c:1899 src/gui/gcal-event-popover.c:381
+#: src/core/gcal-event.c:1906 src/gui/gcal-event-popover.c:395
#, c-format
msgid "%1$s — %2$s"
msgstr "%1$s — %2$s"
@@ -132,95 +120,94 @@
#. * Translators: %1$s is the start date, %2$s is the start time,
#. * %3$s is the end date, and %4$s is the end time.
#.
-#: src/core/gcal-event.c:1907
+#: src/core/gcal-event.c:1914
#, c-format
msgid "%1$s %2$s — %3$s %4$s"
msgstr "%1$s %2$s — %3$s %4$s"
#. Translators: %1$s is a date, %2$s is the start hour, and %3$s is the end hour
#. Translators: %1$s is the event name, %2$s is the start hour, and %3$s is the end hour
-#: src/core/gcal-event.c:1923 src/gui/gcal-quick-add-popover.c:475
+#: src/core/gcal-event.c:1930 src/gui/gcal-quick-add-popover.c:461
#, c-format
msgid "%1$s, %2$s – %3$s"
msgstr "%1$s, %2$s – %3$s"
-#: src/gui/calendar-management/gcal-calendar-management-dialog.ui:26
+#: src/gui/calendar-management/gcal-calendar-management-dialog.ui:4
msgid "Calendar Settings"
msgstr "Cài đặt Lịch"
-#: src/gui/calendar-management/gcal-calendars-page.c:359
+#: src/gui/calendar-management/gcal-calendars-page.c:354
msgid "Manage Calendars"
msgstr "Quản lý lịch"
#. Update notification label
-#: src/gui/calendar-management/gcal-calendars-page.c:389
+#: src/gui/calendar-management/gcal-calendars-page.c:384
#, c-format
msgid "Calendar %s removed"
msgstr "Lịch %s đã được xóa bỏ"
-#: src/gui/calendar-management/gcal-calendars-page.ui:31
-#: src/gui/gcal-window.c:771 src/gui/gcal-window.c:775
+#: src/gui/calendar-management/gcal-calendars-page.ui:24
msgid "Undo"
msgstr "Hoàn lại"
-#: src/gui/calendar-management/gcal-calendars-page.ui:91
+#: src/gui/calendar-management/gcal-calendars-page.ui:78
msgid "Add Calendar…"
msgstr "Thêm lịch…"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:18
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:19
msgid "Account"
msgstr "Tài khoản"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:43
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:46
msgid "Settings"
msgstr "Cài đặt"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:64
-#: src/gui/event-editor/gcal-summary-section.ui:42
-#: src/gui/gcal-event-popover.ui:104
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:57
+#: src/gui/event-editor/gcal-summary-section.ui:23
+#: src/gui/gcal-event-popover.ui:112
#: src/gui/importer/gcal-import-file-row.c:151
msgid "Location"
-msgstr "Địa chỉ"
+msgstr "Địa điểm"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:93
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:84
msgid "Calendar name"
msgstr "Tên lịch"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:121
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:65
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:109
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:33
msgid "Color"
msgstr "Màu"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:155
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:140
msgid "Display calendar"
msgstr "Hiển thị lịch"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:175
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:152
msgid "Add new events to this calendar by default"
msgstr "Thêm sự kiện mới vào lịch này theo mặc định"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:190
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:164
msgid "Remove Calendar"
msgstr "Xóa bỏ lịch"
-#: src/gui/calendar-management/gcal-new-calendar-page.c:513
+#: src/gui/calendar-management/gcal-file-chooser-button.c:51
+msgid "Select a file"
+msgstr "Chọn một tập tin"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.c:516
msgid "New Calendar"
msgstr "Lịch mới"
-#: src/gui/calendar-management/gcal-new-calendar-page.c:676
-msgid "Calendar files"
-msgstr "Các tập tin lịch"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:33
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:41
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:16
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:22
msgid "Calendar Name"
msgstr "Tên lịch"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:87
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:61
msgid "Import a Calendar"
-msgstr "Nhập lịch"
+msgstr "Nhập khẩu lịch"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:106
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:78
msgid ""
"Alternatively, enter the web address of an online calendar you want to "
"import, or open a supported calendar file."
@@ -228,15 +215,19 @@
"Ngoài ra, hãy nhập địa chỉ web của lịch trực tuyến mà bạn muốn nhập hoặc mở "
"tệp lịch được hỗ trợ."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:138
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:106
msgid "Open a File"
msgstr "Mở tập tin"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:159
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:109
+msgid "Calendar files"
+msgstr "Các tập tin lịch"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:142
msgid "Calendars"
msgstr "Lịch"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:205
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:166
msgid ""
"If the calendar belongs to one of your online accounts, you can add it "
"through the online account settings."
@@ -244,213 +235,218 @@
"Nếu lịch thuộc về một trong các tài khoản trực tuyến của bạn, bạn có thể "
"thêm nó thông qua cài đặt tài khoản trực tuyến."
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:241
-msgid "User"
-msgstr "Tài khoản"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:255
-msgid "Password"
-msgstr "Mật khẩu"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:303
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:342
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:17
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:193
+msgid "Credentials"
+msgstr "Giấy ủy nhiệm"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:206
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:297
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
msgid "Cancel"
msgstr "Thôi"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:312
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:214
msgid "Connect"
msgstr "Kết nối"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:349
-#: src/gui/gcal-quick-add-popover.ui:130
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:243
+msgid "User"
+msgstr "Tài khoản"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:256
+msgid "Password"
+msgstr "Mật khẩu"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:301
+#: src/gui/gcal-quick-add-popover.ui:98
msgid "Add"
msgstr "Thêm vào"
-#: src/gui/event-editor/gcal-alarm-row.c:85
+#: src/gui/event-editor/gcal-alarm-row.c:84
#, c-format
msgid "%1$u day, %2$u hour, and %3$u minute before"
msgid_plural "%1$u day, %2$u hour, and %3$u minutes before"
msgstr[0] "%1$u ngày, %2$u giờ và %3$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:89
+#: src/gui/event-editor/gcal-alarm-row.c:88
#, c-format
msgid "%1$u day, %2$u hours, and %3$u minute before"
msgid_plural "%1$u day, %2$u hours, and %3$u minutes before"
msgstr[0] "%1$u ngày, %2$u giờ và %3$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:95
+#: src/gui/event-editor/gcal-alarm-row.c:94
#, c-format
msgid "%1$u days, %2$u hour, and %3$u minute before"
msgid_plural "%1$u days, %2$u hour, and %3$u minutes before"
msgstr[0] "%1$u ngày, %2$u giờ và %3$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:99
+#: src/gui/event-editor/gcal-alarm-row.c:98
#, c-format
msgid "%1$u days, %2$u hours, and %3$u minute before"
msgid_plural "%1$u days, %2$u hours, and %3$u minutes before"
msgstr[0] "%1$u ngày, %2$u giờ và %3$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:114
+#: src/gui/event-editor/gcal-alarm-row.c:113
#, c-format
msgid "%1$u day and %2$u hour before"
msgid_plural "%1$u day and %2$u hours before"
msgstr[0] "%1$u ngày và %2$u giờ trước"
-#: src/gui/event-editor/gcal-alarm-row.c:118
+#: src/gui/event-editor/gcal-alarm-row.c:117
#, c-format
msgid "%1$u days and %2$u hour before"
msgid_plural "%1$u days and %2$u hours before"
msgstr[0] "%1$u ngày và %2$u giờ trước"
-#: src/gui/event-editor/gcal-alarm-row.c:134
+#: src/gui/event-editor/gcal-alarm-row.c:133
#, c-format
msgid "%1$u day and %2$u minute before"
msgid_plural "%1$u day and %2$u minutes before"
msgstr[0] "%1$u ngày và %2$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:138
+#: src/gui/event-editor/gcal-alarm-row.c:137
#, c-format
msgid "%1$u days and %2$u minute before"
msgid_plural "%1$u days and %2$u minutes before"
msgstr[0] "%1$u ngày và %2$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:148
+#: src/gui/event-editor/gcal-alarm-row.c:147
#, c-format
msgid "%1$u day before"
msgid_plural "%1$u days before"
msgstr[0] "%1$u ngày trước"
-#: src/gui/event-editor/gcal-alarm-row.c:166
+#: src/gui/event-editor/gcal-alarm-row.c:165
#, c-format
msgid "%1$u hour and %2$u minute before"
msgid_plural "%1$u hour and %2$u minutes before"
msgstr[0] "%1$u giờ %2$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:170
+#: src/gui/event-editor/gcal-alarm-row.c:169
#, c-format
msgid "%1$u hours and %2$u minute before"
msgid_plural "%1$u hours and %2$u minutes before"
msgstr[0] "%1$u giờ %2$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:180
+#: src/gui/event-editor/gcal-alarm-row.c:179
#, c-format
msgid "%1$u hour before"
msgid_plural "%1$u hours before"
msgstr[0] "%1$u giờ trước"
-#: src/gui/event-editor/gcal-alarm-row.c:192
+#: src/gui/event-editor/gcal-alarm-row.c:191
#, c-format
msgid "%1$u minute before"
msgid_plural "%1$u minutes before"
msgstr[0] "%1$u phút trước"
-#: src/gui/event-editor/gcal-alarm-row.c:199
+#: src/gui/event-editor/gcal-alarm-row.c:198
msgid "Event start time"
msgstr "Thời điểm bắt đầu sự kiện"
-#: src/gui/event-editor/gcal-alarm-row.ui:18
+#: src/gui/event-editor/gcal-alarm-row.ui:11
msgid "Toggles the sound of the alarm"
msgstr "Bật/tắt âm thanh cảnh báo"
-#: src/gui/event-editor/gcal-alarm-row.ui:35
+#: src/gui/event-editor/gcal-alarm-row.ui:21
msgid "Remove the alarm"
msgstr "Xóa bỏ báo thức"
-#: src/gui/event-editor/gcal-event-editor-dialog.c:201
+#: src/gui/event-editor/gcal-event-editor-dialog.c:196
msgid "Save"
msgstr "Lưu"
-#: src/gui/event-editor/gcal-event-editor-dialog.c:201
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:108
+#: src/gui/event-editor/gcal-event-editor-dialog.c:196
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:86
msgid "Done"
msgstr "Đã xong"
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:37
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:29
msgid "Click to select the calendar"
msgstr "Bấm để chọn lịch"
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:157
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:115
msgid "Schedule"
msgstr "Lịch biểu"
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:178
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:127
msgid "Reminders"
msgstr "Nhắc nhở"
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:201
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:139
msgid "Notes"
msgstr "Ghi chú"
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:226
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:159
msgid "Delete Event"
msgstr "Xóa dữ kiện"
-#: src/gui/event-editor/gcal-reminders-section.ui:28
+#: src/gui/event-editor/gcal-reminders-section.ui:26
msgid "Add a Reminder…"
msgstr "Thêm nhắc nhở…"
-#: src/gui/event-editor/gcal-reminders-section.ui:55
+#: src/gui/event-editor/gcal-reminders-section.ui:52
msgid "5 minutes"
msgstr "5 phút"
-#: src/gui/event-editor/gcal-reminders-section.ui:64
+#: src/gui/event-editor/gcal-reminders-section.ui:58
msgid "10 minutes"
msgstr "10 phút"
-#: src/gui/event-editor/gcal-reminders-section.ui:73
+#: src/gui/event-editor/gcal-reminders-section.ui:64
msgid "15 minutes"
msgstr "15 phút"
-#: src/gui/event-editor/gcal-reminders-section.ui:82
+#: src/gui/event-editor/gcal-reminders-section.ui:70
msgid "30 minutes"
msgstr "30 phút"
-#: src/gui/event-editor/gcal-reminders-section.ui:91
+#: src/gui/event-editor/gcal-reminders-section.ui:76
msgid "1 hour"
msgstr "1 giờ"
-#: src/gui/event-editor/gcal-reminders-section.ui:99
+#: src/gui/event-editor/gcal-reminders-section.ui:82
msgid "1 day"
msgstr "1 ngày"
-#: src/gui/event-editor/gcal-reminders-section.ui:108
+#: src/gui/event-editor/gcal-reminders-section.ui:88
msgid "2 days"
msgstr "2 ngày"
-#: src/gui/event-editor/gcal-reminders-section.ui:117
+#: src/gui/event-editor/gcal-reminders-section.ui:94
msgid "3 days"
msgstr "3 ngày"
-#: src/gui/event-editor/gcal-reminders-section.ui:126
+#: src/gui/event-editor/gcal-reminders-section.ui:100
msgid "1 week"
msgstr "1 tuần"
#. Translators: %A is the weekday name (e.g. Sunday, Monday, etc)
-#: src/gui/event-editor/gcal-schedule-section.c:241
+#: src/gui/event-editor/gcal-schedule-section.c:238
#, c-format
msgid "Last %A"
msgstr "%A cuối cùng"
-#: src/gui/event-editor/gcal-schedule-section.c:245
-#: src/gui/gcal-event-popover.c:208 src/gui/gcal-event-popover.c:322
+#: src/gui/event-editor/gcal-schedule-section.c:242
+#: src/gui/gcal-event-popover.c:207 src/gui/gcal-event-popover.c:321
+#: src/gui/views/gcal-agenda-view.c:186
msgid "Yesterday"
msgstr "Hôm qua"
-#: src/gui/event-editor/gcal-schedule-section.c:249
-#: src/gui/gcal-event-popover.c:200 src/gui/gcal-event-popover.c:314
-#: src/gui/gcal-window.ui:190 src/gui/views/gcal-year-view.c:282
-#: src/gui/views/gcal-year-view.c:560 src/gui/views/gcal-year-view.ui:88
+#: src/gui/event-editor/gcal-schedule-section.c:246
+#: src/gui/gcal-event-popover.c:199 src/gui/gcal-event-popover.c:313
+#: src/gui/views/gcal-agenda-view.c:182
msgid "Today"
msgstr "Hôm nay"
-#: src/gui/event-editor/gcal-schedule-section.c:253
-#: src/gui/gcal-event-popover.c:204 src/gui/gcal-event-popover.c:318
+#: src/gui/event-editor/gcal-schedule-section.c:250
+#: src/gui/gcal-event-popover.c:203 src/gui/gcal-event-popover.c:317
+#: src/gui/views/gcal-agenda-view.c:184
msgid "Tomorrow"
msgstr "Ngày mai"
#. Translators: %A is the weekday name (e.g. Sunday, Monday, etc)
-#: src/gui/event-editor/gcal-schedule-section.c:263
+#: src/gui/event-editor/gcal-schedule-section.c:255
#, c-format
msgid "This %A"
msgstr "%A này"
@@ -459,83 +455,83 @@
#. * Translators: %1$s is the formatted date (e.g. Today, Sunday, or even 2019-10-11) and %2$s is the
#. * formatted time (e.g. 03:14 PM, or 21:29)
#.
-#: src/gui/event-editor/gcal-schedule-section.c:293
+#: src/gui/event-editor/gcal-schedule-section.c:285
#, c-format
msgid "%1$s, %2$s"
msgstr "%2$s, %1$s"
-#: src/gui/event-editor/gcal-schedule-section.ui:20
+#: src/gui/event-editor/gcal-schedule-section.ui:17
msgid "All Day"
msgstr "Cả ngày"
-#: src/gui/event-editor/gcal-schedule-section.ui:40
+#: src/gui/event-editor/gcal-schedule-section.ui:34
#: src/gui/importer/gcal-import-file-row.c:152
msgid "Starts"
msgstr "Bắt đầu"
-#: src/gui/event-editor/gcal-schedule-section.ui:90
+#: src/gui/event-editor/gcal-schedule-section.ui:77
#: src/gui/importer/gcal-import-file-row.c:153
msgid "Ends"
msgstr "Kết thúc"
-#: src/gui/event-editor/gcal-schedule-section.ui:140
+#: src/gui/event-editor/gcal-schedule-section.ui:120
msgid "Repeat"
msgstr "Lặp lại"
-#: src/gui/event-editor/gcal-schedule-section.ui:150
+#: src/gui/event-editor/gcal-schedule-section.ui:128
msgid "No Repeat"
msgstr "Không lặp lại"
-#: src/gui/event-editor/gcal-schedule-section.ui:151
+#: src/gui/event-editor/gcal-schedule-section.ui:129
msgid "Daily"
msgstr "Mỗi ngày"
-#: src/gui/event-editor/gcal-schedule-section.ui:152
+#: src/gui/event-editor/gcal-schedule-section.ui:130
msgid "Monday – Friday"
msgstr "Thứ hai – sáu"
-#: src/gui/event-editor/gcal-schedule-section.ui:153
+#: src/gui/event-editor/gcal-schedule-section.ui:131
msgid "Weekly"
msgstr "Hàng tuần"
-#: src/gui/event-editor/gcal-schedule-section.ui:154
+#: src/gui/event-editor/gcal-schedule-section.ui:132
msgid "Monthly"
msgstr "Hàng tháng"
-#: src/gui/event-editor/gcal-schedule-section.ui:155
+#: src/gui/event-editor/gcal-schedule-section.ui:133
msgid "Yearly"
msgstr "Hàng năm"
-#: src/gui/event-editor/gcal-schedule-section.ui:168
+#: src/gui/event-editor/gcal-schedule-section.ui:146
msgid "End Repeat"
msgstr "Kết thúc lặp lại"
-#: src/gui/event-editor/gcal-schedule-section.ui:178
+#: src/gui/event-editor/gcal-schedule-section.ui:154
msgid "Forever"
msgstr "Vô hạn"
-#: src/gui/event-editor/gcal-schedule-section.ui:179
+#: src/gui/event-editor/gcal-schedule-section.ui:155
msgid "No. of occurrences"
msgstr "Số lần xảy ra"
-#: src/gui/event-editor/gcal-schedule-section.ui:180
+#: src/gui/event-editor/gcal-schedule-section.ui:156
msgid "Until Date"
msgstr "Đến ngày"
-#: src/gui/event-editor/gcal-schedule-section.ui:193
+#: src/gui/event-editor/gcal-schedule-section.ui:169
msgid "Number of Occurrences"
msgstr "Số lần xảy ra"
-#: src/gui/event-editor/gcal-schedule-section.ui:213
+#: src/gui/event-editor/gcal-schedule-section.ui:188
msgid "End Repeat Date"
msgstr "Ngày kết thúc lặp"
-#: src/gui/event-editor/gcal-summary-section.c:79
-#: src/gui/gcal-quick-add-popover.c:692
+#: src/gui/event-editor/gcal-summary-section.c:78
+#: src/gui/gcal-quick-add-popover.c:676
msgid "Unnamed event"
msgstr "Sự kiện 'Không tên'"
-#: src/gui/event-editor/gcal-summary-section.ui:19
+#: src/gui/event-editor/gcal-summary-section.ui:16
#: src/gui/importer/gcal-import-file-row.c:150
msgid "Title"
msgstr "Tựa đề"
@@ -544,117 +540,133 @@
msgid ":"
msgstr ":"
-#: src/gui/event-editor/gcal-time-selector.ui:47
-#: src/gui/views/gcal-week-view.c:440
+#: src/gui/event-editor/gcal-time-selector.ui:46
+#: src/gui/views/gcal-week-hour-bar.c:57
msgid "AM"
msgstr "SA"
-#: src/gui/event-editor/gcal-time-selector.ui:48
-#: src/gui/views/gcal-week-view.c:440
+#: src/gui/event-editor/gcal-time-selector.ui:47
+#: src/gui/views/gcal-week-hour-bar.c:57
msgid "PM"
msgstr "CH"
-#: src/gui/gcal-application.c:59
+#: src/gui/gcal-application.c:58
msgid "Quit GNOME Calendar"
msgstr "Thoát khỏi Lịch Gnome"
-#: src/gui/gcal-application.c:64
+#: src/gui/gcal-application.c:63
msgid "Display version number"
msgstr "Hiển thị số hiệu phiên bản"
-#: src/gui/gcal-application.c:69
+#: src/gui/gcal-application.c:68
msgid "Enable debug messages"
msgstr "Bật thông tin gỡ lỗi"
-#: src/gui/gcal-application.c:74
+#: src/gui/gcal-application.c:73
msgid "Open calendar on the passed date"
msgstr "Mở lịch trong ngày đã qua"
-#: src/gui/gcal-application.c:79
+#: src/gui/gcal-application.c:78
msgid "Open calendar showing the passed event"
msgstr "Mở lịch hiển thị các sự kiện đã điễn ra"
-#: src/gui/gcal-application.c:163
+#: src/gui/gcal-application.c:144
#, c-format
msgid "Copyright © 2012–%d The Calendar authors"
msgstr "Tác quyền © 2012–%d Các tác giả Lịch"
-#: src/gui/gcal-application.c:217
+#: src/gui/gcal-application.c:180
+msgid "The GNOME Project"
+msgstr "Dự án GNOME"
+
+#: src/gui/gcal-application.c:189
msgid "translator-credits"
msgstr "Nhóm dịch GNOME "
-#: src/gui/gcal-calendar-popover.ui:43
-msgid "_Synchronize Calendars"
-msgstr "Đồng _bộ Lịch"
+#: src/gui/gcal-application.c:194 src/gui/gcal-window.ui:283
+msgid "Weather"
+msgstr "Thời tiết"
-#: src/gui/gcal-calendar-popover.ui:51
-msgid "Manage Calendars…"
-msgstr "Quản lý lịch…"
+#: src/gui/gcal-calendar-button.ui:6
+msgid "Manage your calendars"
+msgstr "Quản lý lịch của mình"
-#: src/gui/gcal-calendar-popover.ui:75
+#: src/gui/gcal-calendar-button.ui:23
+msgid "_Calendars"
+msgstr "Lị_ch"
+
+#: src/gui/gcal-calendar-button.ui:41
msgctxt "tooltip"
msgid "Synchronizing remote calendars…"
msgstr "Đồng bộ với lịch trên mạng…"
-#: src/gui/gcal-event-popover.c:123 src/gui/gcal-quick-add-popover.c:269
+#: src/gui/gcal-calendar-button.ui:71
+msgid "_Synchronize Calendars"
+msgstr "Đồng _bộ Lịch"
+
+#: src/gui/gcal-calendar-button.ui:75
+msgid "Manage Calendars…"
+msgstr "Quản lý lịch…"
+
+#: src/gui/gcal-event-popover.c:122 src/gui/gcal-quick-add-popover.c:255
msgid "January"
msgstr "Tháng giêng"
-#: src/gui/gcal-event-popover.c:124 src/gui/gcal-quick-add-popover.c:270
+#: src/gui/gcal-event-popover.c:123 src/gui/gcal-quick-add-popover.c:256
msgid "February"
msgstr "Tháng hai"
-#: src/gui/gcal-event-popover.c:125 src/gui/gcal-quick-add-popover.c:271
+#: src/gui/gcal-event-popover.c:124 src/gui/gcal-quick-add-popover.c:257
msgid "March"
msgstr "Tháng ba"
-#: src/gui/gcal-event-popover.c:126 src/gui/gcal-quick-add-popover.c:272
+#: src/gui/gcal-event-popover.c:125 src/gui/gcal-quick-add-popover.c:258
msgid "April"
msgstr "Tháng tư"
-#: src/gui/gcal-event-popover.c:127 src/gui/gcal-quick-add-popover.c:273
+#: src/gui/gcal-event-popover.c:126 src/gui/gcal-quick-add-popover.c:259
msgid "May"
msgstr "Tháng năm"
-#: src/gui/gcal-event-popover.c:128 src/gui/gcal-quick-add-popover.c:274
+#: src/gui/gcal-event-popover.c:127 src/gui/gcal-quick-add-popover.c:260
msgid "June"
msgstr "Tháng sáu"
-#: src/gui/gcal-event-popover.c:129 src/gui/gcal-quick-add-popover.c:275
+#: src/gui/gcal-event-popover.c:128 src/gui/gcal-quick-add-popover.c:261
msgid "July"
msgstr "Tháng bảy"
-#: src/gui/gcal-event-popover.c:130 src/gui/gcal-quick-add-popover.c:276
+#: src/gui/gcal-event-popover.c:129 src/gui/gcal-quick-add-popover.c:262
msgid "August"
msgstr "Tháng tám"
-#: src/gui/gcal-event-popover.c:131 src/gui/gcal-quick-add-popover.c:277
+#: src/gui/gcal-event-popover.c:130 src/gui/gcal-quick-add-popover.c:263
msgid "September"
msgstr "Tháng chín"
-#: src/gui/gcal-event-popover.c:132 src/gui/gcal-quick-add-popover.c:278
+#: src/gui/gcal-event-popover.c:131 src/gui/gcal-quick-add-popover.c:264
msgid "October"
msgstr "Tháng mười"
-#: src/gui/gcal-event-popover.c:133 src/gui/gcal-quick-add-popover.c:279
+#: src/gui/gcal-event-popover.c:132 src/gui/gcal-quick-add-popover.c:265
msgid "November"
msgstr "Tháng mười một"
-#: src/gui/gcal-event-popover.c:134 src/gui/gcal-quick-add-popover.c:280
+#: src/gui/gcal-event-popover.c:133 src/gui/gcal-quick-add-popover.c:266
msgid "December"
msgstr "Tháng mười hai"
-#: src/gui/gcal-event-popover.c:159
+#: src/gui/gcal-event-popover.c:158
#, c-format
msgid "Today %s"
msgstr "%s hôm nay"
-#: src/gui/gcal-event-popover.c:163
+#: src/gui/gcal-event-popover.c:162
#, c-format
msgid "Tomorrow %s"
msgstr "%s ngày mai"
-#: src/gui/gcal-event-popover.c:167
+#: src/gui/gcal-event-popover.c:166
#, c-format
msgid "Yesterday %s"
msgstr "%s hôm qua"
@@ -664,7 +676,7 @@
#. * of month, and %3$ is the hour. This format string results in dates
#. * like "November 21, 22:00".
#.
-#: src/gui/gcal-event-popover.c:176
+#: src/gui/gcal-event-popover.c:175
#, c-format
msgid "%1$s %2$d, %3$s"
msgstr "%3$s, %2$d %1$s"
@@ -674,7 +686,7 @@
#. * of month, %3$d is the year, and %4$s is the hour. This format string
#. * results in dates like "November 21, 2020, 22:00".
#.
-#: src/gui/gcal-event-popover.c:188
+#: src/gui/gcal-event-popover.c:187
#, c-format
msgid "%1$s %2$d, %3$d, %4$s"
msgstr "%4$s, %2$d %1$s, %3$d"
@@ -684,7 +696,7 @@
#. * the day of month. This format string results in dates like
#. * "November 21".
#.
-#: src/gui/gcal-event-popover.c:217 src/gui/gcal-event-popover.c:331
+#: src/gui/gcal-event-popover.c:216 src/gui/gcal-event-popover.c:330
#, c-format
msgid "%1$s %2$d"
msgstr "%2$d %1$s"
@@ -694,7 +706,7 @@
#. * of month, and %3$d is the year. This format string results in dates
#. * like "November 21, 2020".
#.
-#: src/gui/gcal-event-popover.c:228 src/gui/gcal-event-popover.c:342
+#: src/gui/gcal-event-popover.c:227 src/gui/gcal-event-popover.c:341
#, c-format
msgid "%1$s %2$d, %3$d"
msgstr "%2$d %1$s, %3$d"
@@ -703,7 +715,7 @@
#. * Translators: %1$s is the start hour, and %2$s is the end hour, for
#. * example: "Today, 19:00 — 22:00"
#.
-#: src/gui/gcal-event-popover.c:262
+#: src/gui/gcal-event-popover.c:261
#, c-format
msgid "Today, %1$s — %2$s"
msgstr "Hôm nay, %1$s — %2$s"
@@ -712,7 +724,7 @@
#. * Translators: %1$s is the start hour, and %2$s is the end hour, for
#. * example: "Tomorrow, 19:00 — 22:00"
#.
-#: src/gui/gcal-event-popover.c:270
+#: src/gui/gcal-event-popover.c:269
#, c-format
msgid "Tomorrow, %1$s – %2$s"
msgstr "Ngày mai, %1$s – %2$s"
@@ -721,7 +733,7 @@
#. * Translators: %1$s is the start hour, and %2$s is the end hour, for
#. * example: "Tomorrow, 19:00 — 22:00"
#.
-#: src/gui/gcal-event-popover.c:278
+#: src/gui/gcal-event-popover.c:277
#, c-format
msgid "Yesterday, %1$s – %2$s"
msgstr "Hôm qua, %1$s – %2$s"
@@ -731,7 +743,7 @@
#. * of month, %3$s is the start hour, and %4$s is the end hour. This
#. * format string results in dates like "November 21, 19:00 — 22:00".
#.
-#: src/gui/gcal-event-popover.c:287
+#: src/gui/gcal-event-popover.c:286
#, c-format
msgid "%1$s %2$d, %3$s – %4$s"
msgstr "%2$d %1$s, %3$s – %4$s"
@@ -743,122 +755,126 @@
#. *
#. * "November 21, 2021, 19:00 — 22:00".
#.
-#: src/gui/gcal-event-popover.c:302
+#: src/gui/gcal-event-popover.c:301
#, c-format
msgid "%1$s %2$d, %3$d, %4$s – %5$s"
msgstr "%2$d %1$s, %3$d, %4$s – %5$s"
-#: src/gui/gcal-event-popover.ui:70
+#: src/gui/gcal-event-popover.ui:72
msgid "No event information"
msgstr "Không có thông tin sự kiện"
-#: src/gui/gcal-event-popover.ui:160
+#: src/gui/gcal-event-popover.ui:170
msgid "Edit…"
msgstr "Sửa…"
#. Translators: %s is the location of the event (e.g. "Downtown, 3rd Avenue")
-#: src/gui/gcal-event-widget.c:437
+#: src/gui/gcal-event-widget.c:351
#, c-format
msgid "At %s"
msgstr "Ở %s"
-#: src/gui/gcal-meeting-row.c:68
+#: src/gui/gcal-meeting-row.c:67
msgid "Google Meet"
msgstr "Google Meet"
-#: src/gui/gcal-meeting-row.c:69
+#: src/gui/gcal-meeting-row.c:68
msgid "Jitsi"
msgstr "Jitsi"
-#: src/gui/gcal-meeting-row.c:70
+#: src/gui/gcal-meeting-row.c:69
msgid "Whereby"
msgstr "Whereby"
-#: src/gui/gcal-meeting-row.c:71
+#: src/gui/gcal-meeting-row.c:70
msgid "Zoom"
msgstr "Zoom"
+#: src/gui/gcal-meeting-row.c:71
+msgid "Microsoft Teams"
+msgstr "Microsoft Teams"
+
#: src/gui/gcal-meeting-row.c:81
msgid "Unknown Service"
-msgstr "Không rõ dịch vụ"
+msgstr "Dịch vụ chưa biết"
#. Translators: "Join" as in "Join meeting"
-#: src/gui/gcal-meeting-row.ui:62
+#: src/gui/gcal-meeting-row.ui:13
msgid "Join"
msgstr "Tham gia"
-#: src/gui/gcal-quick-add-popover.c:117
+#: src/gui/gcal-quick-add-popover.c:118
#, c-format
msgid "%s (this calendar is read-only)"
msgstr "%s (lịch này chỉ cho đọc)"
-#: src/gui/gcal-quick-add-popover.c:247
+#: src/gui/gcal-quick-add-popover.c:233
msgid "from next Monday"
msgstr "từ thứ hai kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:248
+#: src/gui/gcal-quick-add-popover.c:234
msgid "from next Tuesday"
msgstr "từ thứ ba kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:249
+#: src/gui/gcal-quick-add-popover.c:235
msgid "from next Wednesday"
msgstr "từ thứ tư kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:250
+#: src/gui/gcal-quick-add-popover.c:236
msgid "from next Thursday"
msgstr "từ thứ năm kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:251
+#: src/gui/gcal-quick-add-popover.c:237
msgid "from next Friday"
msgstr "từ thứ sáu kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:252
+#: src/gui/gcal-quick-add-popover.c:238
msgid "from next Saturday"
msgstr "từ thứ bảy kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:253
+#: src/gui/gcal-quick-add-popover.c:239
msgid "from next Sunday"
msgstr "từ chủ nhật kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:258
+#: src/gui/gcal-quick-add-popover.c:244
msgid "to next Monday"
msgstr "đến thứ hai kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:259
+#: src/gui/gcal-quick-add-popover.c:245
msgid "to next Tuesday"
msgstr "đến thứ ba kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:260
+#: src/gui/gcal-quick-add-popover.c:246
msgid "to next Wednesday"
msgstr "đến thứ tư kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:261
+#: src/gui/gcal-quick-add-popover.c:247
msgid "to next Thursday"
msgstr "đến thứ năm kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:262
+#: src/gui/gcal-quick-add-popover.c:248
msgid "to next Friday"
msgstr "đến thứ sáu kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:263
+#: src/gui/gcal-quick-add-popover.c:249
msgid "to next Saturday"
msgstr "đến thứ bảy kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:264
+#: src/gui/gcal-quick-add-popover.c:250
msgid "to next Sunday"
msgstr "đến chủ nhật kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:289
+#: src/gui/gcal-quick-add-popover.c:275
#, c-format
msgid "from Today"
msgstr "từ hôm nay"
-#: src/gui/gcal-quick-add-popover.c:293
+#: src/gui/gcal-quick-add-popover.c:279
#, c-format
msgid "from Tomorrow"
msgstr "từ ngày mai"
-#: src/gui/gcal-quick-add-popover.c:297
+#: src/gui/gcal-quick-add-popover.c:283
#, c-format
msgid "from Yesterday"
msgstr "từ hôm qua"
@@ -867,22 +883,22 @@
#. * this is the format string for representing a date consisting of a month
#. * name and a date of month.
#.
-#: src/gui/gcal-quick-add-popover.c:315
+#: src/gui/gcal-quick-add-popover.c:301
#, c-format
msgid "from %1$s %2$s"
msgstr "từ %1$s %2$s"
-#: src/gui/gcal-quick-add-popover.c:326
+#: src/gui/gcal-quick-add-popover.c:312
#, c-format
msgid "to Today"
msgstr "đến hôm nay"
-#: src/gui/gcal-quick-add-popover.c:330
+#: src/gui/gcal-quick-add-popover.c:316
#, c-format
msgid "to Tomorrow"
msgstr "đến ngày mai"
-#: src/gui/gcal-quick-add-popover.c:334
+#: src/gui/gcal-quick-add-popover.c:320
#, c-format
msgid "to Yesterday"
msgstr "đến hôm qua"
@@ -891,282 +907,277 @@
#. * this is the format string for representing a date consisting of a month
#. * name and a date of month.
#.
-#: src/gui/gcal-quick-add-popover.c:352
+#: src/gui/gcal-quick-add-popover.c:338
#, c-format
msgid "to %1$s %2$s"
msgstr "đến %1$s %2$s"
#. Translators: %1$s is the start date (e.g. "from Today") and %2$s is the end date (e.g. "to Tomorrow")
-#: src/gui/gcal-quick-add-popover.c:359
+#: src/gui/gcal-quick-add-popover.c:345
#, c-format
msgid "New Event %1$s %2$s"
msgstr "Sự kiện mới %1$s %2$s"
-#: src/gui/gcal-quick-add-popover.c:376
+#: src/gui/gcal-quick-add-popover.c:362
#, c-format
msgid "New Event Today"
msgstr "Sự kiện mới hôm nay"
-#: src/gui/gcal-quick-add-popover.c:380
+#: src/gui/gcal-quick-add-popover.c:366
#, c-format
msgid "New Event Tomorrow"
msgstr "Sự kiện mới ngày mai"
-#: src/gui/gcal-quick-add-popover.c:384
+#: src/gui/gcal-quick-add-popover.c:370
#, c-format
msgid "New Event Yesterday"
msgstr "Sự kiện mới hôm qua"
-#: src/gui/gcal-quick-add-popover.c:390
+#: src/gui/gcal-quick-add-popover.c:376
msgid "New Event next Monday"
msgstr "Sự kiện mới thứ hai kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:391
+#: src/gui/gcal-quick-add-popover.c:377
msgid "New Event next Tuesday"
msgstr "Sự kiện mới thứ ba kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:392
+#: src/gui/gcal-quick-add-popover.c:378
msgid "New Event next Wednesday"
msgstr "Sự kiện mới thứ tư kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:393
+#: src/gui/gcal-quick-add-popover.c:379
msgid "New Event next Thursday"
msgstr "Sự kiện mới thứ năm kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:394
+#: src/gui/gcal-quick-add-popover.c:380
msgid "New Event next Friday"
msgstr "Sự kiện mới thứ sáu kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:395
+#: src/gui/gcal-quick-add-popover.c:381
msgid "New Event next Saturday"
msgstr "Sự kiện mới thứ bảy kế tiếp"
-#: src/gui/gcal-quick-add-popover.c:396
+#: src/gui/gcal-quick-add-popover.c:382
msgid "New Event next Sunday"
msgstr "Sự kiện mới chủ nhật kế tiếp"
#. Translators: %d is the numeric day of month
-#: src/gui/gcal-quick-add-popover.c:408
+#: src/gui/gcal-quick-add-popover.c:394
#, c-format
msgid "New Event on January %d"
msgstr "Sự kiện mới vào %d tháng giêng"
-#: src/gui/gcal-quick-add-popover.c:409
+#: src/gui/gcal-quick-add-popover.c:395
#, c-format
msgid "New Event on February %d"
msgstr "Sự kiện mới vào %d tháng hai"
-#: src/gui/gcal-quick-add-popover.c:410
+#: src/gui/gcal-quick-add-popover.c:396
#, c-format
msgid "New Event on March %d"
msgstr "Sự kiện mới vào %d tháng ba"
-#: src/gui/gcal-quick-add-popover.c:411
+#: src/gui/gcal-quick-add-popover.c:397
#, c-format
msgid "New Event on April %d"
msgstr "Sự kiện mới vào %d tháng tư"
-#: src/gui/gcal-quick-add-popover.c:412
+#: src/gui/gcal-quick-add-popover.c:398
#, c-format
msgid "New Event on May %d"
msgstr "Sự kiện mới vào %d tháng năm"
-#: src/gui/gcal-quick-add-popover.c:413
+#: src/gui/gcal-quick-add-popover.c:399
#, c-format
msgid "New Event on June %d"
msgstr "Sự kiện mới vào %d tháng sáu"
-#: src/gui/gcal-quick-add-popover.c:414
+#: src/gui/gcal-quick-add-popover.c:400
#, c-format
msgid "New Event on July %d"
msgstr "Sự kiện mới vào %d tháng bảy"
-#: src/gui/gcal-quick-add-popover.c:415
+#: src/gui/gcal-quick-add-popover.c:401
#, c-format
msgid "New Event on August %d"
msgstr "Sự kiện mới vào %d tháng tám"
-#: src/gui/gcal-quick-add-popover.c:416
+#: src/gui/gcal-quick-add-popover.c:402
#, c-format
msgid "New Event on September %d"
msgstr "Sự kiện mới vào %d tháng chín"
-#: src/gui/gcal-quick-add-popover.c:417
+#: src/gui/gcal-quick-add-popover.c:403
#, c-format
msgid "New Event on October %d"
msgstr "Sự kiện mới vào %d tháng mười"
-#: src/gui/gcal-quick-add-popover.c:418
+#: src/gui/gcal-quick-add-popover.c:404
#, c-format
msgid "New Event on November %d"
msgstr "Sự kiện mới vào %d tháng mười một"
-#: src/gui/gcal-quick-add-popover.c:419
+#: src/gui/gcal-quick-add-popover.c:405
#, c-format
msgid "New Event on December %d"
msgstr "Sự kiện mới vào %d tháng mười hai"
-#: src/gui/gcal-quick-add-popover.ui:117
+#: src/gui/gcal-quick-add-popover.ui:87
msgid "Edit Details…"
msgstr "Sửa chi tiết…"
-#: src/gui/gcal-weather-settings.ui:12 src/gui/gcal-window.ui:331
-msgid "_Weather"
-msgstr "_Thời tiết"
+#: src/gui/gcal-toolbar-end.ui:9
+msgctxt "tooltip"
+msgid "Search for events"
+msgstr "Tìm kiếm sự kiện"
+
+#: src/gui/gcal-toolbar-end.ui:21
+msgctxt "tooltip"
+msgid "Add a new event"
+msgstr "Thêm sự kiện mới"
-#: src/gui/gcal-weather-settings.ui:30
+#: src/gui/gcal-weather-settings.ui:17
msgid "Show Weather"
msgstr "Hiện thời tiết"
-#: src/gui/gcal-weather-settings.ui:53
+#: src/gui/gcal-weather-settings.ui:34
msgid "Automatic Location"
msgstr "Tự tìm địa phương"
-#: src/gui/gcal-window.c:771
+#: src/gui/gcal-window.c:714
msgid "Another event deleted"
msgstr "Sự kiện khác bị xóa"
-#: src/gui/gcal-window.c:775
+#: src/gui/gcal-window.c:714
msgid "Event deleted"
msgstr "Sự kiện bị xóa"
-#: src/gui/gcal-window.ui:47
-msgid "Week"
-msgstr "Tuần"
-
-#: src/gui/gcal-window.ui:63
-msgid "Month"
-msgstr "Tháng"
-
-#: src/gui/gcal-window.ui:78
-msgid "Year"
-msgstr "Năm"
+#: src/gui/gcal-window.c:716
+msgid "_Undo"
+msgstr "_Hủy thao tác"
+
+#: src/gui/gcal-window.ui:117
+msgid "Main Menu"
+msgstr "Trình đơn chính"
+
+#: src/gui/gcal-window.ui:156 src/gui/gcal-window.ui:189
+msgid "_Today"
+msgstr "Hôm _nay"
+
+#: src/gui/gcal-window.ui:223
+msgid "_Week"
+msgstr "T_uần"
+
+#: src/gui/gcal-window.ui:238
+msgid "_Month"
+msgstr "Thán_g"
-#: src/gui/gcal-window.ui:179
-msgctxt "tooltip"
-msgid "Add a new event"
-msgstr "Thêm sự kiện mới"
-
-#: src/gui/gcal-window.ui:269
-msgid "Manage your calendars"
-msgstr "Quản lý lịch của mình"
-
-#: src/gui/gcal-window.ui:280
-msgctxt "tooltip"
-msgid "Search for events"
-msgstr "Tìm kiếm sự kiện"
-
-#: src/gui/gcal-window.ui:322
+#: src/gui/gcal-window.ui:279
msgid "_Online Accounts…"
msgstr "Tài kh_oản trực tuyến…"
-#: src/gui/gcal-window.ui:346
+#: src/gui/gcal-window.ui:291
msgid "_Keyboard Shortcuts"
msgstr "_Phím tắt bàn phím"
-#: src/gui/gcal-window.ui:355
+#: src/gui/gcal-window.ui:295
msgid "_About Calendar"
msgstr "_Giới thiệu Lịch"
-#: src/gui/gtk/help-overlay.ui:13
+#: src/gui/gtk/help-overlay.ui:11
msgctxt "shortcut window"
msgid "General"
msgstr "Chung"
-#: src/gui/gtk/help-overlay.ui:17
+#: src/gui/gtk/help-overlay.ui:14
msgctxt "shortcut window"
msgid "New event"
msgstr "Sự kiện mới"
-#: src/gui/gtk/help-overlay.ui:24
+#: src/gui/gtk/help-overlay.ui:20
msgctxt "shortcut window"
msgid "Close window"
msgstr "Đóng cửa sổ"
-#: src/gui/gtk/help-overlay.ui:31
+#: src/gui/gtk/help-overlay.ui:26
msgctxt "shortcut window"
msgid "Search"
msgstr "Tìm kiếm"
-#: src/gui/gtk/help-overlay.ui:38
+#: src/gui/gtk/help-overlay.ui:32
msgctxt "shortcut window"
msgid "Show help"
msgstr "Hiện trợ giúp"
-#: src/gui/gtk/help-overlay.ui:45
+#: src/gui/gtk/help-overlay.ui:38
msgctxt "shortcut window"
msgid "Shortcuts"
msgstr "Phím tắt"
-#: src/gui/gtk/help-overlay.ui:54
+#: src/gui/gtk/help-overlay.ui:46
msgctxt "shortcut window"
msgid "Navigation"
msgstr "Điều hướng"
-#: src/gui/gtk/help-overlay.ui:58
+#: src/gui/gtk/help-overlay.ui:49
msgctxt "shortcut window"
msgid "Go back"
msgstr "Quay lại"
-#: src/gui/gtk/help-overlay.ui:65
+#: src/gui/gtk/help-overlay.ui:55
msgctxt "shortcut window"
msgid "Go forward"
msgstr "Đi tiếp"
-#: src/gui/gtk/help-overlay.ui:72
+#: src/gui/gtk/help-overlay.ui:61
msgctxt "shortcut window"
msgid "Show today"
msgstr "Hiện hôm nay"
-#: src/gui/gtk/help-overlay.ui:79
+#: src/gui/gtk/help-overlay.ui:67
msgctxt "shortcut window"
msgid "Next view"
msgstr "Xem kế tiếp"
-#: src/gui/gtk/help-overlay.ui:86
+#: src/gui/gtk/help-overlay.ui:73
msgctxt "shortcut window"
msgid "Previous view"
msgstr "Xem kế trước"
-#: src/gui/gtk/help-overlay.ui:95
+#: src/gui/gtk/help-overlay.ui:81
msgctxt "shortcut window"
msgid "View"
msgstr "Xem"
-#: src/gui/gtk/help-overlay.ui:99
+#: src/gui/gtk/help-overlay.ui:84
msgctxt "shortcut window"
msgid "Week view"
msgstr "Xem tuần"
-#: src/gui/gtk/help-overlay.ui:106
+#: src/gui/gtk/help-overlay.ui:90
msgctxt "shortcut window"
msgid "Month view"
msgstr "Xem tháng"
-#: src/gui/gtk/help-overlay.ui:113
-msgctxt "shortcut window"
-msgid "Year view"
-msgstr "Xem năm"
-
-#: src/gui/importer/gcal-import-dialog.c:345
+#: src/gui/importer/gcal-import-dialog.c:396
#, c-format
msgid "Import %d event"
msgid_plural "Import %d events"
msgstr[0] "Nhập %d sự kiện"
-#: src/gui/importer/gcal-import-dialog.ui:24
+#: src/gui/importer/gcal-import-dialog.ui:4
msgid "Import Files…"
msgstr "Nhập các tập tin…"
-#: src/gui/importer/gcal-import-dialog.ui:31 src/utils/gcal-utils.c:961
+#: src/gui/importer/gcal-import-dialog.ui:20 src/utils/gcal-utils.c:1320
msgid "_Cancel"
msgstr "_Thôi"
-#: src/gui/importer/gcal-import-dialog.ui:41
+#: src/gui/importer/gcal-import-dialog.ui:29
msgid "_Import"
msgstr "_Nhập vào"
-#: src/gui/importer/gcal-import-dialog.ui:91
+#: src/gui/importer/gcal-import-dialog.ui:50
msgid "C_alendar"
msgstr "_Lịch"
@@ -1184,11 +1195,11 @@
#: src/gui/importer/gcal-importer.c:43
msgid "File is malformed, invalid, or corrupted"
-msgstr "Tệp bị dị tật, không hợp lệ hoặc bị hỏng"
+msgstr "Tập tin sai định dạng, không hợp lệ hoặc bị hỏng"
#: src/gui/importer/gcal-importer.c:46
msgid "Failed to parse the calendar contents"
-msgstr "Gặp lỗi khi phân tích cú pháp nội dung lịch"
+msgstr "Gặp lỗi khi phân tích cú pháp nội dung của lịch"
#: src/gui/importer/gcal-importer.c:49
msgid "Failed to read file"
@@ -1200,58 +1211,44 @@
#: src/gui/importer/gcal-importer.c:94
msgid "File is not an iCalendar (.ics) file"
-msgstr "Tệp không phải là tệp iCalendar (.ics)"
+msgstr "Tâp tin không phải là tệp iCalendar (.ics)"
#: src/gui/importer/gcal-import-file-row.c:154
msgid "Description"
msgstr "Mô tả"
-#: src/gui/views/gcal-month-popover.ui:91
+#: src/gui/views/gcal-agenda-view.c:366
+msgid "On-going"
+msgstr "Đang diễn ra"
+
+#: src/gui/views/gcal-agenda-view.ui:19
+msgid "No events"
+msgstr "Không có sự kiện nào"
+
+#: src/gui/views/gcal-month-popover.ui:59
msgid "New Event…"
msgstr "Sự kiện mới…"
-#: src/gui/views/gcal-week-grid.c:681 src/gui/views/gcal-week-view.c:293
+#: src/gui/views/gcal-week-grid.c:576
msgid "00 AM"
msgstr "00 AM"
-#: src/gui/views/gcal-week-grid.c:684 src/gui/views/gcal-week-view.c:296
+#: src/gui/views/gcal-week-grid.c:579
msgid "00:00"
msgstr "00:00"
-#: src/gui/views/gcal-week-header.c:465
+#: src/gui/views/gcal-week-header.c:472
#, c-format
msgid "Other event"
msgid_plural "Other %d events"
msgstr[0] "%d sự kiện khác"
-#: src/gui/views/gcal-week-header.c:1004
+#: src/gui/views/gcal-week-header.c:1000
#, c-format
msgid "week %d"
msgstr "tuần %d"
-#. Translators: This is a date format in the sidebar of the year
-#. * view when the selection starts at the specified day and the
-#. * end is unspecified.
-#: src/gui/views/gcal-year-view.c:291
-msgid "%B %d…"
-msgstr "%d %B…"
-
-#. Translators: This is a date format in the sidebar of the year
-#. * view when there is only one specified day selected.
-#. Translators: This is a date format in the sidebar of the year view.
-#: src/gui/views/gcal-year-view.c:297 src/gui/views/gcal-year-view.c:563
-msgid "%B %d"
-msgstr "%d %B"
-
-#: src/gui/views/gcal-year-view.ui:133
-msgid "No events"
-msgstr "Không có sự kiện nào"
-
-#: src/gui/views/gcal-year-view.ui:155
-msgid "Add Event…"
-msgstr "Thêm sự kiện…"
-
-#: src/utils/gcal-utils.c:958
+#: src/utils/gcal-utils.c:1317
msgid ""
"The event you are trying to modify is recurring. The changes you have "
"selected should be applied to:"
@@ -1259,14 +1256,45 @@
"Sự kiện bạn đang cố gắng sửa đổi sẽ lặp lại. Những thay đổi bạn đã chọn nên "
"được áp dụng cho:"
-#: src/utils/gcal-utils.c:963
+#: src/utils/gcal-utils.c:1322
msgid "_Only This Event"
msgstr "_Chỉ sự kiện này"
-#: src/utils/gcal-utils.c:970
+#: src/utils/gcal-utils.c:1329
msgid "_Subsequent events"
msgstr "_Sự kiện xảy ra sau"
-#: src/utils/gcal-utils.c:972
+#: src/utils/gcal-utils.c:1332
msgid "_All events"
msgstr "_Mọi sự kiện"
+
+#~ msgid "Year view"
+#~ msgstr "Xem năm"
+
+#~ msgid "Window position"
+#~ msgstr "Vị trí cửa sổ"
+
+#~ msgid "Window position (x and y)."
+#~ msgstr "Vị trí cửa sổ (x và y)."
+
+#~ msgid "Follow system night light"
+#~ msgstr "Theo ánh sáng đêm hệ thống"
+
+#~ msgid "Use GNOME night light setting to activate night-mode."
+#~ msgstr "Sử dụng cài đặt ánh sáng đêm GNOME để kích hoạt chế độ đêm."
+
+#~ msgid "Year"
+#~ msgstr "Năm"
+
+#~ msgctxt "shortcut window"
+#~ msgid "Year view"
+#~ msgstr "Xem năm"
+
+#~ msgid "%B %d…"
+#~ msgstr "%d %B…"
+
+#~ msgid "%B %d"
+#~ msgstr "%d %B"
+
+#~ msgid "Add Event…"
+#~ msgstr "Thêm sự kiện…"
diff -Nru gnome-calendar-44.0/po/zh_CN.po gnome-calendar-44.1/po/zh_CN.po
--- gnome-calendar-44.0/po/zh_CN.po 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/po/zh_CN.po 2023-04-22 09:51:06.000000000 +0000
@@ -14,17 +14,17 @@
msgstr ""
"Project-Id-Version: gnome-calendar master\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/gnome-calendar/issues\n"
-"POT-Creation-Date: 2022-08-20 21:05+0000\n"
-"PO-Revision-Date: 2022-08-21 14:29+0800\n"
+"POT-Creation-Date: 2023-03-16 14:29+0000\n"
+"PO-Revision-Date: 2023-03-22 18:21+0800\n"
"Last-Translator: lumingzh \n"
"Language-Team: Chinese - China \n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
"X-Launchpad-Export-Date: 2016-03-22 14:52+0000\n"
-"X-Generator: Gtranslator 42.0\n"
+"X-Generator: Poedit 3.2.2\n"
#: data/appdata/org.gnome.Calendar.appdata.xml.in.in:7
#: data/org.gnome.Calendar.desktop.in.in:3 src/main.c:35
@@ -93,26 +93,18 @@
msgstr "窗口大小(宽度和高度)。"
#: data/org.gnome.calendar.gschema.xml.in:16
-msgid "Window position"
-msgstr "窗口位置"
-
-#: data/org.gnome.calendar.gschema.xml.in:17
-msgid "Window position (x and y)."
-msgstr "窗口位置(水平和垂直)。"
-
-#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Type of the active view"
msgstr "活动视图类型"
-#: data/org.gnome.calendar.gschema.xml.in:22
+#: data/org.gnome.calendar.gschema.xml.in:17
msgid "Type of the active window view, default value is: monthly view"
msgstr "活动窗口视图类型,默认值为:月份视图"
-#: data/org.gnome.calendar.gschema.xml.in:26
+#: data/org.gnome.calendar.gschema.xml.in:21
msgid "Weather Service Configuration"
msgstr "天气服务配置"
-#: data/org.gnome.calendar.gschema.xml.in:27
+#: data/org.gnome.calendar.gschema.xml.in:22
msgid ""
"Whether weather reports are shown, automatic locations are used and a "
"location-name"
@@ -187,85 +179,83 @@
msgid "Color"
msgstr "颜色"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:134
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:140
msgid "Display calendar"
msgstr "显示日历"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:146
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:152
msgid "Add new events to this calendar by default"
msgstr "默认情况下将新事件添加到该日历中"
-#: src/gui/calendar-management/gcal-edit-calendar-page.ui:158
+#: src/gui/calendar-management/gcal-edit-calendar-page.ui:164
msgid "Remove Calendar"
msgstr "移除日历"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:49
+#: src/gui/calendar-management/gcal-file-chooser-button.c:51
msgid "Select a file"
msgstr "选择文件"
-#: src/gui/calendar-management/gcal-file-chooser-button.c:94
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:248
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:281
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
-msgid "Cancel"
-msgstr "取消"
-
-#: src/gui/calendar-management/gcal-file-chooser-button.c:96
-msgid "Open"
-msgstr "打开"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.c:512
+#: src/gui/calendar-management/gcal-new-calendar-page.c:516
msgid "New Calendar"
msgstr "新建日历"
-#: src/gui/calendar-management/gcal-new-calendar-page.c:690
-msgid "Calendar files"
-msgstr "日历文件"
-
#: src/gui/calendar-management/gcal-new-calendar-page.ui:16
#: src/gui/calendar-management/gcal-new-calendar-page.ui:22
msgid "Calendar Name"
msgstr "日历名称"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:55
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:61
msgid "Import a Calendar"
msgstr "导入日历"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:72
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:78
msgid ""
"Alternatively, enter the web address of an online calendar you want to "
"import, or open a supported calendar file."
msgstr "此外,也可以输入您想导入的在线日历网址,或者打开支持的日历文件。"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:100
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:106
msgid "Open a File"
msgstr "打开文件"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:124
-#: src/gui/gcal-calendar-button.ui:23
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:109
+msgid "Calendar files"
+msgstr "日历文件"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:142
msgid "Calendars"
msgstr "日历"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:148
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:166
msgid ""
"If the calendar belongs to one of your online accounts, you can add it "
"through the online account settings."
msgstr ""
"如果日历属于您的在线帐户,可以通过在线帐号设置来添加。"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:194
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:193
+msgid "Credentials"
+msgstr "凭据"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:206
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:297
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:15
+msgid "Cancel"
+msgstr "取消"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:214
+msgid "Connect"
+msgstr "连接"
+
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:243
msgid "User"
msgstr "用户"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:207
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:256
msgid "Password"
msgstr "密码"
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:255
-msgid "Connect"
-msgstr "连接"
-
-#: src/gui/calendar-management/gcal-new-calendar-page.ui:285
+#: src/gui/calendar-management/gcal-new-calendar-page.ui:301
#: src/gui/gcal-quick-add-popover.ui:98
msgid "Add"
msgstr "添加"
@@ -385,7 +375,7 @@
msgid "Notes"
msgstr "备注"
-#: src/gui/event-editor/gcal-event-editor-dialog.ui:158
+#: src/gui/event-editor/gcal-event-editor-dialog.ui:159
msgid "Delete Event"
msgstr "删除事件"
@@ -437,17 +427,19 @@
#: src/gui/event-editor/gcal-schedule-section.c:242
#: src/gui/gcal-event-popover.c:207 src/gui/gcal-event-popover.c:321
+#: src/gui/views/gcal-agenda-view.c:186
msgid "Yesterday"
msgstr "昨天"
#: src/gui/event-editor/gcal-schedule-section.c:246
#: src/gui/gcal-event-popover.c:199 src/gui/gcal-event-popover.c:313
-#: src/gui/gcal-window.ui:154 src/gui/gcal-window.ui:186
+#: src/gui/views/gcal-agenda-view.c:182
msgid "Today"
msgstr "今天"
#: src/gui/event-editor/gcal-schedule-section.c:250
#: src/gui/gcal-event-popover.c:203 src/gui/gcal-event-popover.c:317
+#: src/gui/views/gcal-agenda-view.c:184
msgid "Tomorrow"
msgstr "明天"
@@ -585,7 +577,7 @@
msgid "The GNOME Project"
msgstr "GNOME 项目"
-#: src/gui/gcal-application.c:188
+#: src/gui/gcal-application.c:189
msgid "translator-credits"
msgstr ""
"tuhaihe <1132321739qq@gmail.com>, 2013, 2020\n"
@@ -595,7 +587,7 @@
"Mingcong Bai , 2018\n"
"Dinzhong Chen , 2017, 2019"
-#: src/gui/gcal-application.c:193 src/gui/gcal-window.ui:277
+#: src/gui/gcal-application.c:194 src/gui/gcal-window.ui:283
msgid "Weather"
msgstr "天气"
@@ -603,6 +595,10 @@
msgid "Manage your calendars"
msgstr "管理您的日历"
+#: src/gui/gcal-calendar-button.ui:23
+msgid "_Calendars"
+msgstr "日历(_C)"
+
#: src/gui/gcal-calendar-button.ui:41
msgctxt "tooltip"
msgid "Synchronizing remote calendars…"
@@ -777,7 +773,7 @@
msgstr "编辑…"
#. Translators: %s is the location of the event (e.g. "Downtown, 3rd Avenue")
-#: src/gui/gcal-event-widget.c:350
+#: src/gui/gcal-event-widget.c:351
#, c-format
msgid "At %s"
msgstr "位于 %s"
@@ -798,7 +794,11 @@
msgid "Zoom"
msgstr "Zoom"
-#: src/gui/gcal-meeting-row.c:78
+#: src/gui/gcal-meeting-row.c:69
+msgid "Microsoft Teams"
+msgstr "Microsoft Teams"
+
+#: src/gui/gcal-meeting-row.c:79
msgid "Unknown Service"
msgstr "未知服务"
@@ -1048,35 +1048,43 @@
msgid "Automatic Location"
msgstr "自动定位"
-#: src/gui/gcal-window.c:699
+#: src/gui/gcal-window.c:714
msgid "Another event deleted"
msgstr "另一个事件已删除"
-#: src/gui/gcal-window.c:699
+#: src/gui/gcal-window.c:714
msgid "Event deleted"
msgstr "事件已删除"
-#: src/gui/gcal-window.c:701
+#: src/gui/gcal-window.c:716
msgid "_Undo"
msgstr "撤消(_U)"
-#: src/gui/gcal-window.ui:219
-msgid "Week"
-msgstr "周"
-
-#: src/gui/gcal-window.ui:233
-msgid "Month"
-msgstr "月"
+#: src/gui/gcal-window.ui:117
+msgid "Main Menu"
+msgstr "主菜单"
+
+#: src/gui/gcal-window.ui:156 src/gui/gcal-window.ui:189
+msgid "_Today"
+msgstr "今天(_T)"
+
+#: src/gui/gcal-window.ui:223
+msgid "_Week"
+msgstr "周(_W)"
+
+#: src/gui/gcal-window.ui:238
+msgid "_Month"
+msgstr "月(_M)"
-#: src/gui/gcal-window.ui:273
+#: src/gui/gcal-window.ui:279
msgid "_Online Accounts…"
msgstr "在线帐号(_O)…"
-#: src/gui/gcal-window.ui:285
+#: src/gui/gcal-window.ui:291
msgid "_Keyboard Shortcuts"
msgstr "键盘快捷键(_K)"
-#: src/gui/gcal-window.ui:289
+#: src/gui/gcal-window.ui:295
msgid "_About Calendar"
msgstr "关于日历(_A)"
@@ -1165,7 +1173,7 @@
msgid "Import Files…"
msgstr "导入文件…"
-#: src/gui/importer/gcal-import-dialog.ui:20 src/utils/gcal-utils.c:1323
+#: src/gui/importer/gcal-import-dialog.ui:20 src/utils/gcal-utils.c:1320
msgid "_Cancel"
msgstr "取消(_C)"
@@ -1213,47 +1221,64 @@
msgid "Description"
msgstr "描述"
+#: src/gui/views/gcal-agenda-view.c:366
+msgid "On-going"
+msgstr "进行中"
+
+#: src/gui/views/gcal-agenda-view.ui:19
+msgid "No events"
+msgstr "无事件"
+
#: src/gui/views/gcal-month-popover.ui:59
msgid "New Event…"
msgstr "新建事件…"
-#: src/gui/views/gcal-week-grid.c:580
+#: src/gui/views/gcal-week-grid.c:576
msgid "00 AM"
msgstr "上午 00"
-#: src/gui/views/gcal-week-grid.c:583
+#: src/gui/views/gcal-week-grid.c:579
msgid "00:00"
msgstr "00:00"
-#: src/gui/views/gcal-week-header.c:478
+#: src/gui/views/gcal-week-header.c:472
#, c-format
msgid "Other event"
msgid_plural "Other %d events"
msgstr[0] "其他 %d 个事件"
-#: src/gui/views/gcal-week-header.c:1006
+#: src/gui/views/gcal-week-header.c:1000
#, c-format
msgid "week %d"
msgstr "第 %d 周"
-#: src/utils/gcal-utils.c:1320
+#: src/utils/gcal-utils.c:1317
msgid ""
"The event you are trying to modify is recurring. The changes you have "
"selected should be applied to:"
msgstr "您正在修改的事件是重复事件。您所作的修改会应用到:"
-#: src/utils/gcal-utils.c:1325
+#: src/utils/gcal-utils.c:1322
msgid "_Only This Event"
msgstr "仅此事件(_O)"
-#: src/utils/gcal-utils.c:1332
+#: src/utils/gcal-utils.c:1329
msgid "_Subsequent events"
msgstr "后续事件(_S)"
-#: src/utils/gcal-utils.c:1334
+#: src/utils/gcal-utils.c:1332
msgid "_All events"
msgstr "所有事件(_A)"
+#~ msgid "Window position"
+#~ msgstr "窗口位置"
+
+#~ msgid "Window position (x and y)."
+#~ msgstr "窗口位置(水平和垂直)。"
+
+#~ msgid "Open"
+#~ msgstr "打开"
+
#~ msgid "Year view"
#~ msgstr "年视图"
@@ -1276,9 +1301,6 @@
#~ msgid "%B %d"
#~ msgstr "%-m月%-d日"
-#~ msgid "No events"
-#~ msgstr "无事件"
-
#~ msgid "Add Event…"
#~ msgstr "添加事件…"
@@ -1322,9 +1344,6 @@
#~ msgid "org.gnome.Calendar"
#~ msgstr "org.gnome.Calendar"
-#~ msgid "_Calendars"
-#~ msgstr "日历(_C)"
-
#~ msgid "_About"
#~ msgstr "关于(_A)"
@@ -1340,9 +1359,6 @@
#~ msgid "Nextcloud"
#~ msgstr "Nextcloud"
-#~ msgid "Microsoft Exchange"
-#~ msgstr "微软 Exchange"
-
#~ msgid "Overview"
#~ msgstr "概览"
@@ -1352,9 +1368,6 @@
#~ msgid "Calendar Address"
#~ msgstr "日历地址"
-#~ msgid "Enter your credentials"
-#~ msgstr "输入您的凭据"
-
#~ msgid "All day"
#~ msgstr "全天"
diff -Nru gnome-calendar-44.0/src/core/gcal-calendar-monitor.c gnome-calendar-44.1/src/core/gcal-calendar-monitor.c
--- gnome-calendar-44.0/src/core/gcal-calendar-monitor.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/core/gcal-calendar-monitor.c 2023-04-22 09:51:06.000000000 +0000
@@ -1022,8 +1022,12 @@
g_hash_table_iter_init (&iter, self->shared.events);
while (g_hash_table_iter_next (&iter, NULL, (gpointer*) &event))
{
+ g_object_ref (event);
+
g_hash_table_iter_remove (&iter);
g_signal_emit (self, signals[EVENT_REMOVED], 0, event);
+
+ g_object_unref (event);
}
}
diff -Nru gnome-calendar-44.0/src/gui/calendar-management/gcal-edit-calendar-page.c gnome-calendar-44.1/src/gui/calendar-management/gcal-edit-calendar-page.c
--- gnome-calendar-44.0/src/gui/calendar-management/gcal-edit-calendar-page.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/calendar-management/gcal-edit-calendar-page.c 2023-04-22 09:51:06.000000000 +0000
@@ -34,7 +34,7 @@
GtkLabel *account_label;
GtkWidget *account_dim_label;
GtkWidget *back_button;
- GtkColorChooser *calendar_color_button;
+ GtkColorDialogButton *calendar_color_button;
GtkCheckButton *calendar_visible_check;
GtkWidget *calendar_url_button;
GtkCheckButton *default_check;
@@ -186,7 +186,7 @@
gtk_label_set_label (self->account_label, name);
}
- gtk_color_chooser_set_rgba (self->calendar_color_button, gcal_calendar_get_color (calendar));
+ gtk_color_dialog_button_set_rgba (self->calendar_color_button, gcal_calendar_get_color (calendar));
gtk_editable_set_text (GTK_EDITABLE (self->name_entry), gcal_calendar_get_name (calendar));
gtk_check_button_set_active (self->calendar_visible_check, gcal_calendar_get_visible (calendar));
@@ -199,17 +199,17 @@
update_calendar (GcalEditCalendarPage *self)
{
GcalManager *manager;
- GdkRGBA color;
+ const GdkRGBA *color;
GCAL_ENTRY;
g_assert (self->calendar != NULL);
manager = gcal_context_get_manager (self->context);
- gtk_color_chooser_get_rgba (self->calendar_color_button, &color);
+ color = gtk_color_dialog_button_get_rgba (self->calendar_color_button);
gcal_calendar_set_name (self->calendar, gtk_editable_get_text (GTK_EDITABLE (self->name_entry)));
- gcal_calendar_set_color (self->calendar, &color);
+ gcal_calendar_set_color (self->calendar, color);
if (gtk_check_button_get_active (self->default_check))
gcal_manager_set_default_calendar (manager, self->calendar);
diff -Nru gnome-calendar-44.0/src/gui/calendar-management/gcal-edit-calendar-page.ui gnome-calendar-44.1/src/gui/calendar-management/gcal-edit-calendar-page.ui
--- gnome-calendar-44.0/src/gui/calendar-management/gcal-edit-calendar-page.ui 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/calendar-management/gcal-edit-calendar-page.ui 2023-04-22 09:51:06.000000000 +0000
@@ -119,8 +119,14 @@
-
diff -Nru gnome-calendar-44.0/src/gui/gcal-search-hit-row.c gnome-calendar-44.1/src/gui/gcal-search-hit-row.c
--- gnome-calendar-44.0/src/gui/gcal-search-hit-row.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/gcal-search-hit-row.c 1970-01-01 00:00:00.000000000 +0000
@@ -1,193 +0,0 @@
-/* gcal-search-hit-row.c
- *
- * Copyright 2022 Georges Basile Stavracas Neto
- *
- * 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, either version 3 of the License, or
- * (at your option) any later version.
- *
- * 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 .
- *
- * SPDX-License-Identifier: GPL-3.0-or-later
- */
-
-#include "gcal-search-hit-row.h"
-
-struct _GcalSearchHitRow
-{
- GtkListBoxRow parent_instance;
-
- GtkImage *image;
- GtkWidget *separator;
- GtkLabel *subtitle;
- GtkLabel *title;
-
- GcalSearchHit *search_hit;
-};
-
-G_DEFINE_FINAL_TYPE (GcalSearchHitRow, gcal_search_hit_row, GTK_TYPE_LIST_BOX_ROW)
-
-enum
-{
- PROP_0,
- PROP_SEARCH_HIT,
- N_PROPS
-};
-
-static GParamSpec *properties [N_PROPS];
-
-
-/*
- * Auxiliary methods
- */
-
-static void
-update_search_hit (GcalSearchHitRow *self)
-{
- g_autofree gchar *escaped_title = NULL;
- const gchar *subtitle;
-
- gtk_image_set_from_paintable (self->image, gcal_search_hit_get_primary_icon (self->search_hit));
-
- escaped_title = g_markup_escape_text (gcal_search_hit_get_title (self->search_hit), -1);
- gtk_label_set_label (self->title, escaped_title);
-
- subtitle = gcal_search_hit_get_subtitle (self->search_hit);
- if (subtitle)
- {
- g_autofree gchar *escaped_subtitle = NULL;
-
- escaped_subtitle = g_markup_escape_text (subtitle, -1);
- escaped_subtitle = g_strstrip (escaped_subtitle);
- gtk_label_set_label (self->subtitle, escaped_subtitle);
-
- gtk_widget_set_visible (self->separator, escaped_subtitle && *escaped_subtitle != '\0');
- }
- else
- {
- gtk_widget_set_visible (self->separator, FALSE);
- }
-}
-
-
-/*
- * Callbacks
- */
-
-static void
-on_search_hit_changed_cb (GcalSearchHit *search_hit,
- GParamSpec *pspec,
- GcalSearchHitRow *self)
-{
- update_search_hit (self);
-}
-
-/*
- * GObject overrides
- */
-
-static void
-gcal_search_hit_row_finalize (GObject *object)
-{
- GcalSearchHitRow *self = (GcalSearchHitRow *)object;
-
- g_clear_object (&self->search_hit);
-
- G_OBJECT_CLASS (gcal_search_hit_row_parent_class)->finalize (object);
-}
-
-static void
-gcal_search_hit_row_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
-{
- GcalSearchHitRow *self = GCAL_SEARCH_HIT_ROW (object);
-
- switch (prop_id)
- {
- case PROP_SEARCH_HIT:
- g_value_set_object (value, self->search_hit);
- break;
-
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- }
-}
-
-static void
-gcal_search_hit_row_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
-{
- GcalSearchHitRow *self = GCAL_SEARCH_HIT_ROW (object);
-
- switch (prop_id)
- {
- case PROP_SEARCH_HIT:
- g_assert (self->search_hit == NULL);
- self->search_hit = g_value_dup_object (value);
- g_signal_connect_object (self->search_hit, "notify", G_CALLBACK (on_search_hit_changed_cb), self, 0);
- update_search_hit (self);
- break;
-
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- }
-}
-
-static void
-gcal_search_hit_row_class_init (GcalSearchHitRowClass *klass)
-{
- GObjectClass *object_class = G_OBJECT_CLASS (klass);
- GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
-
- object_class->finalize = gcal_search_hit_row_finalize;
- object_class->get_property = gcal_search_hit_row_get_property;
- object_class->set_property = gcal_search_hit_row_set_property;
-
- properties[PROP_SEARCH_HIT] = g_param_spec_object ("search-hit",
- NULL,
- NULL,
- GCAL_TYPE_SEARCH_HIT,
- G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS);
-
- g_object_class_install_properties (object_class, N_PROPS, properties);
-
- gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/calendar/ui/gui/gcal-search-hit-row.ui");
-
- gtk_widget_class_bind_template_child (widget_class, GcalSearchHitRow, image);
- gtk_widget_class_bind_template_child (widget_class, GcalSearchHitRow, separator);
- gtk_widget_class_bind_template_child (widget_class, GcalSearchHitRow, subtitle);
- gtk_widget_class_bind_template_child (widget_class, GcalSearchHitRow, title);
-}
-
-static void
-gcal_search_hit_row_init (GcalSearchHitRow *self)
-{
- gtk_widget_init_template (GTK_WIDGET (self));
-}
-
-GtkWidget *
-gcal_search_hit_row_new (GcalSearchHit *search_hit)
-{
- return g_object_new (GCAL_TYPE_SEARCH_HIT_ROW,
- "search-hit", search_hit,
- NULL);
-}
-
-GcalSearchHit *
-gcal_search_hit_row_get_search_hit (GcalSearchHitRow *self)
-{
- g_return_val_if_fail (GCAL_IS_SEARCH_HIT_ROW (self), NULL);
-
- return self->search_hit;
-}
diff -Nru gnome-calendar-44.0/src/gui/gcal-search-hit-row.h gnome-calendar-44.1/src/gui/gcal-search-hit-row.h
--- gnome-calendar-44.0/src/gui/gcal-search-hit-row.h 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/gcal-search-hit-row.h 1970-01-01 00:00:00.000000000 +0000
@@ -1,36 +0,0 @@
-/* gcal-search-hit-row.h
- *
- * Copyright 2022 Georges Basile Stavracas Neto
- *
- * 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, either version 3 of the License, or
- * (at your option) any later version.
- *
- * 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 .
- *
- * SPDX-License-Identifier: GPL-3.0-or-later
- */
-
-#pragma once
-
-#include
-
-#include "gcal-search-hit.h"
-
-G_BEGIN_DECLS
-
-#define GCAL_TYPE_SEARCH_HIT_ROW (gcal_search_hit_row_get_type())
-G_DECLARE_FINAL_TYPE (GcalSearchHitRow, gcal_search_hit_row, GCAL, SEARCH_HIT_ROW, GtkListBoxRow)
-
-GtkWidget * gcal_search_hit_row_new (GcalSearchHit *search_hit);
-
-GcalSearchHit * gcal_search_hit_row_get_search_hit (GcalSearchHitRow *self);
-
-G_END_DECLS
diff -Nru gnome-calendar-44.0/src/gui/gcal-search-hit-row.ui gnome-calendar-44.1/src/gui/gcal-search-hit-row.ui
--- gnome-calendar-44.0/src/gui/gcal-search-hit-row.ui 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/gcal-search-hit-row.ui 1970-01-01 00:00:00.000000000 +0000
@@ -1,53 +0,0 @@
-
-
-
-
-
-
-
-
-
- center
- False
- normal
-
-
-
-
-
-
- True
- end
- 0.0
- 40
-
-
-
-
-
- —
-
-
-
-
-
-
- True
- True
- end
- 0.0
-
-
-
-
-
-
-
-
-
diff -Nru gnome-calendar-44.0/src/gui/gui.gresource.xml gnome-calendar-44.1/src/gui/gui.gresource.xml
--- gnome-calendar-44.0/src/gui/gui.gresource.xml 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/gui.gresource.xml 2023-04-22 09:51:06.000000000 +0000
@@ -7,7 +7,6 @@
gcal-meeting-row.ui
gcal-quick-add-popover.ui
gcal-search-button.ui
- gcal-search-hit-row.ui
gcal-toolbar-end.ui
gcal-weather-settings.ui
gcal-window.ui
diff -Nru gnome-calendar-44.0/src/gui/meson.build gnome-calendar-44.1/src/gui/meson.build
--- gnome-calendar-44.0/src/gui/meson.build 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/meson.build 2023-04-22 09:51:06.000000000 +0000
@@ -23,7 +23,6 @@
'gcal-overflow-bin-layout.c',
'gcal-quick-add-popover.c',
'gcal-search-button.c',
- 'gcal-search-hit-row.c',
'gcal-toolbar-end.c',
'gcal-weather-settings.c',
'gcal-window.c',
diff -Nru gnome-calendar-44.0/src/gui/views/gcal-month-view.c gnome-calendar-44.1/src/gui/views/gcal-month-view.c
--- gnome-calendar-44.0/src/gui/views/gcal-month-view.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/views/gcal-month-view.c 2023-04-22 09:51:06.000000000 +0000
@@ -389,8 +389,6 @@
for (i = first_cell; i <= last_cell; i++)
{
- GtkStyleContext *context;
- GtkBorder margin;
gboolean visible_at_range;
gboolean different_row;
gboolean will_overflow;
@@ -401,17 +399,12 @@
real_height = size_left[i];
/* Calculate the minimum event height */
- context = gtk_widget_get_style_context (GTK_WIDGET (event_widget));
-
- gtk_style_context_get_margin (context, &margin);
gtk_widget_measure (GTK_WIDGET (event_widget),
GTK_ORIENTATION_VERTICAL,
-1,
&minimum_height,
NULL, NULL, NULL);
- minimum_height += margin.top + margin.bottom;
-
/* Count this event at this cell */
different_row = i / 7 != (i - 1) / 7;
remaining_events = events_at_day[i] - allocated_events_at_day[i];
@@ -551,23 +544,6 @@
}
}
-static gdouble
-get_real_event_widget_height (GtkWidget *widget)
-{
- gint min_height;
-
- gtk_widget_measure (GTK_WIDGET (widget),
- GTK_ORIENTATION_VERTICAL,
- -1,
- &min_height,
- NULL, NULL, NULL);
-
- min_height += gtk_widget_get_margin_top (widget);
- min_height += gtk_widget_get_margin_bottom (widget);
-
- return min_height;
-}
-
static inline gboolean
month_view_contains_event (GcalRange *month_range,
GcalEvent *event)
@@ -588,7 +564,6 @@
{
g_autoptr (GcalRange) month_range = NULL;
GtkAllocation event_allocation;
- GtkBorder margin;
GList *l;
gboolean is_rtl;
gint header_height;
@@ -712,12 +687,8 @@
gcal_event_widget_set_date_start (GCAL_EVENT_WIDGET (child_widget), dt_start);
gcal_event_widget_set_date_end (GCAL_EVENT_WIDGET (child_widget), dt_end);
- /* Position and allocate the child widget */
- gtk_style_context_get_margin (gtk_widget_get_style_context (child_widget), &margin);
-
-
- pos_x = first_cell_allocation.x + margin.left;
- pos_y = first_cell_allocation.y + margin.top + header_height;
+ pos_x = first_cell_allocation.x;
+ pos_y = first_cell_allocation.y + header_height;
width = last_cell_allocation.x + last_cell_allocation.width - first_cell_allocation.x;
remove_cell_border_and_padding (month_cell, &pos_x, &pos_y, &width);
@@ -726,21 +697,22 @@
* We can only get the minimum height after making all these calculations,
* otherwise GTK complains about allocating without calling get_preferred_height.
*/
- minimum_height = get_real_event_widget_height (child_widget);
+ gtk_widget_measure (GTK_WIDGET (child_widget),
+ GTK_ORIENTATION_VERTICAL,
+ -1,
+ &minimum_height,
+ NULL, NULL, NULL);
event_allocation.x = pos_x;
event_allocation.y = pos_y + vertical_cell_space[cell] - size_left[cell];
- event_allocation.width = width - (margin.left + margin.right);
+ event_allocation.width = width;
event_allocation.height = minimum_height;
gtk_widget_size_allocate (child_widget, &event_allocation, baseline);
/* update size_left */
for (j = 0; j < length; j++)
- {
- size_left[cell + j] -= minimum_height;
- size_left[cell + j] -= margin.top + margin.bottom;
- }
+ size_left[cell + j] -= minimum_height;
}
}
}
@@ -757,7 +729,6 @@
GHashTableIter iter;
GtkAllocation event_allocation;
GtkAllocation cell_allocation;
- GtkBorder margin;
gpointer key, value;
gint header_height;
@@ -785,7 +756,6 @@
for (aux = l; aux; aux = g_list_next (aux))
{
GcalEvent *event;
- GtkStyleContext *child_context;
GtkWidget *child_widget;
gdouble real_height;
gdouble pos_y;
@@ -803,10 +773,11 @@
if (!month_view_contains_event (month_range, event))
continue;
- child_context = gtk_widget_get_style_context (child_widget);
-
- gtk_style_context_get_margin (child_context, &margin);
- minimum_height = get_real_event_widget_height (child_widget) + margin.top + margin.bottom;
+ gtk_widget_measure (GTK_WIDGET (child_widget),
+ GTK_ORIENTATION_VERTICAL,
+ -1,
+ &minimum_height,
+ NULL, NULL, NULL);
/* Check for overflow */
remaining_events = events_at_day[cell] - allocated_events_at_day[cell];
@@ -836,21 +807,21 @@
gtk_widget_set_child_visible (child_widget, TRUE);
- pos_x = cell_allocation.x + margin.left;
- pos_y = cell_allocation.y + margin.top + header_height;
+ pos_x = cell_allocation.x;
+ pos_y = cell_allocation.y + header_height;
width = cell_allocation.width;
remove_cell_border_and_padding (month_cell, &pos_x, &pos_y, &width);
event_allocation.x = pos_x;
event_allocation.y = pos_y + vertical_cell_space[cell] - size_left[cell];
- event_allocation.width = width - (margin.left + margin.right);
+ event_allocation.width = width;
event_allocation.height = minimum_height;
gtk_widget_set_child_visible (child_widget, TRUE);
gtk_widget_size_allocate (child_widget, &event_allocation, baseline);
- size_left[cell] -= minimum_height + margin.top + margin.bottom;
+ size_left[cell] -= minimum_height;
}
}
}
diff -Nru gnome-calendar-44.0/src/gui/views/gcal-week-header.c gnome-calendar-44.1/src/gui/views/gcal-week-header.c
--- gnome-calendar-44.0/src/gui/views/gcal-week-header.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/views/gcal-week-header.c 2023-04-22 09:51:06.000000000 +0000
@@ -1175,7 +1175,6 @@
GDateTime *start_date;
GDateTime *end_date;
GTimeSpan difference;
- gboolean turn_all_day;
GCAL_ENTRY;
@@ -1188,9 +1187,7 @@
end_date = gcal_event_get_date_end (changed_event);
week_start = gcal_date_time_get_start_of_week (self->active_date);
- turn_all_day = !gcal_event_is_multiday (changed_event) || gcal_event_get_all_day (changed_event);
-
- if (!turn_all_day)
+ if (!gcal_event_get_all_day (changed_event))
{
/*
* The only case where we don't touch the timezone is for
@@ -1214,9 +1211,9 @@
dnd_date = g_date_time_add_days (tmp_dt, cell);
/* End date */
- difference = turn_all_day ? 24 : g_date_time_difference (end_date, start_date) / G_TIME_SPAN_HOUR;
+ difference = g_date_time_difference (end_date, start_date) / G_TIME_SPAN_MINUTE;
- new_end = g_date_time_add_hours (dnd_date, difference);
+ new_end = g_date_time_add_minutes (dnd_date, difference);
gcal_event_set_date_end (changed_event, new_end);
/*
@@ -1225,9 +1222,6 @@
*/
gcal_event_set_date_start (changed_event, dnd_date);
- if (turn_all_day)
- gcal_event_set_all_day (changed_event, TRUE);
-
/* Commit the changes */
gcal_manager_update_event (gcal_context_get_manager (self->context), changed_event, mod_type);
}
diff -Nru gnome-calendar-44.0/src/gui/views/gcal-week-view.c gnome-calendar-44.1/src/gui/views/gcal-week-view.c
--- gnome-calendar-44.0/src/gui/views/gcal-week-view.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/views/gcal-week-view.c 2023-04-22 09:51:06.000000000 +0000
@@ -54,14 +54,17 @@
gint clicked_cell;
gdouble gesture_zoom_center;
- gint gesture_zoom_initial_height;
gboolean pointer_position_valid;
gdouble pointer_position_y;
- gdouble scroll_scale;
+
+ gdouble initial_zoom_level;
+ gdouble zoom_level;
};
-static void schedule_position_scroll (GcalWeekView *self);
+static void stack_visible_child_changed_cb (AdwViewStack *stack,
+ GParamSpec *pspec,
+ GcalWeekView *self);
static void gcal_view_interface_init (GcalViewInterface *iface);
@@ -81,19 +84,86 @@
G_IMPLEMENT_INTERFACE (GCAL_TYPE_TIMELINE_SUBSCRIBER,
gcal_timeline_subscriber_interface_init));
-/* 60px * ⅓ * 48 rows + 1px * 47 lines = 1007px */
-#define HEIGHT_MIN 1007
/* 60px * 1 * 48 rows + 1px * 47 lines = 2927px */
#define HEIGHT_DEFAULT 2927
-/* 60px * 3 * 48 rows + 1px * 47 lines = 8687px */
-#define HEIGHT_MAX 8687
-/* Callbacks */
+#define MIN_ZOOM_LEVEL 0.334
+#define MAX_ZOOM_LEVEL 3.0
+
+/* Auxiliary methods */
+static gboolean
+update_grid_scroll_position (GcalWeekView *self)
+{
+ g_autoptr(GDateTime) week_start = NULL;
+ g_autoptr(GDateTime) week_end = NULL;
+ g_autoptr(GDateTime) now = NULL;
+ GtkAdjustment *vadjustment;
+ gdouble minutes, real_value;
+ gdouble max, page, page_increment, value;
+ gboolean dummy;
+
+ /* While the scrolled window is not mapped, we keep waiting */
+ if (!gtk_widget_get_realized (self->scrolled_window) ||
+ !gtk_widget_get_mapped (self->scrolled_window))
+ {
+ if (self->stack_page_changed_id == 0)
+ {
+ GtkWidget *stack = gtk_widget_get_ancestor (GTK_WIDGET (self), ADW_TYPE_VIEW_STACK);
+
+ self->stack_page_changed_id = g_signal_connect_object (stack,
+ "notify::visible-child",
+ G_CALLBACK (stack_visible_child_changed_cb),
+ self,
+ 0);
+ }
+
+ self->scroll_grid_timeout_id = 0;
+
+ GCAL_RETURN (G_SOURCE_REMOVE);
+ }
+
+ now = g_date_time_new_now_local ();
+ week_start = gcal_date_time_get_start_of_week (self->date);
+ week_end = gcal_date_time_get_end_of_week (self->date);
+
+ /* Don't animate when not today */
+ if (gcal_date_time_compare_date (now, week_start) < 0 || gcal_date_time_compare_date (now, week_end) >= 0)
+ GCAL_GOTO (out);
+
+ vadjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (self->scrolled_window));
+ minutes = g_date_time_get_hour (now) * 60 + g_date_time_get_minute (now);
+ page = gtk_adjustment_get_page_size (vadjustment);
+ max = gtk_adjustment_get_upper (vadjustment);
+
+ real_value = max / MINUTES_PER_DAY * minutes - (page / 2.0);
+ page_increment = gtk_adjustment_get_page_increment (vadjustment);
+ value = gtk_adjustment_get_value (vadjustment);
+
+ gtk_adjustment_set_page_increment (vadjustment, real_value - value);
+
+ g_signal_emit_by_name (self->scrolled_window,
+ "scroll-child",
+ GTK_SCROLL_PAGE_FORWARD,
+ FALSE,
+ &dummy);
+
+ gtk_adjustment_set_page_increment (vadjustment, page_increment);
+
+out:
+ self->scroll_grid_timeout_id = 0;
+ GCAL_RETURN (G_SOURCE_REMOVE);
+}
+
static void
-on_event_activated (GcalWeekView *self,
- GtkWidget *widget)
+schedule_position_scroll (GcalWeekView *self)
{
- gcal_view_event_activated (GCAL_VIEW (self), GCAL_EVENT_WIDGET (widget));
+ /* Nothing is scheduled, we should do it now */
+ if (self->scroll_grid_timeout_id > 0)
+ g_source_remove (self->scroll_grid_timeout_id);
+
+ self->scroll_grid_timeout_id = g_timeout_add (200,
+ (GSourceFunc) update_grid_scroll_position,
+ self);
}
static void
@@ -109,7 +179,8 @@
height = gtk_adjustment_get_upper (vadjustment) - gtk_adjustment_get_lower (vadjustment);
self->gesture_zoom_center = center / height;
- self->gesture_zoom_initial_height = gtk_widget_get_allocated_height (self->content);
+
+ self->initial_zoom_level = self->zoom_level;
}
static void
@@ -120,10 +191,13 @@
GtkAdjustment *vadjustment;
gdouble height;
+ self->zoom_level = CLAMP (self->initial_zoom_level + (scale - 1.0),
+ MIN_ZOOM_LEVEL,
+ MAX_ZOOM_LEVEL);
+
vadjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (self->scrolled_window));
- height = self->gesture_zoom_initial_height * scale;
- height = CLAMP (height, HEIGHT_MIN, HEIGHT_MAX);
+ height = HEIGHT_DEFAULT * self->zoom_level;
gtk_widget_set_size_request (self->content, -1, height);
gtk_adjustment_set_lower (vadjustment, 0);
@@ -132,40 +206,72 @@
}
static void
-on_motion_controller_enter_cb (GcalWeekView *self,
+save_zoom_level (GcalWeekView *self)
+{
+ GSettings *settings;
+
+ g_assert (self->context != NULL);
+
+ settings = gcal_context_get_settings (self->context);
+ g_settings_set_double (settings, "week-view-zoom-level", self->zoom_level);
+}
+
+static void
+restore_zoom_level (GcalWeekView *self)
+{
+ GSettings *settings;
+
+ g_assert (self->context != NULL);
+
+ settings = gcal_context_get_settings (self->context);
+ self->zoom_level = g_settings_get_double (settings, "week-view-zoom-level");
+
+ begin_zoom (self, 0);
+ apply_zoom (self, 0, 1.0);
+}
+
+
+/* Callbacks */
+static void
+on_event_activated (GcalWeekView *self,
+ GtkWidget *widget)
+{
+ gcal_view_event_activated (GCAL_VIEW (self), GCAL_EVENT_WIDGET (widget));
+}
+
+static void
+on_motion_controller_enter_cb (GtkEventControllerMotion *controller,
gdouble x,
gdouble y,
- GtkEventControllerMotion *controller)
+ GcalWeekView *self)
{
self->pointer_position_valid = TRUE;
self->pointer_position_y = y;
}
static void
-on_motion_controller_motion_cb (GcalWeekView *self,
- gdouble x,
- gdouble y,
- GtkEventControllerMotion *controller)
+on_motion_controller_motion_cb (GtkEventControllerMotion *controller,
+ gdouble x,
+ gdouble y,
+ GcalWeekView *self)
{
self->pointer_position_valid = TRUE;
self->pointer_position_y = y;
}
static void
-on_motion_controller_leave_cb (GcalWeekView *self,
- GtkEventControllerMotion *controller)
+on_motion_controller_leave_cb (GtkEventControllerMotion *controller,
+ GcalWeekView *self)
{
self->pointer_position_valid = FALSE;
}
static void
-on_scroll_controller_scroll_begin_cb (GcalWeekView *self,
- GtkEventControllerScroll *controller)
+on_scroll_controller_scroll_begin_cb (GtkEventControllerScroll *controller,
+ GcalWeekView *self)
{
gdouble view_center_y;
- self->scroll_scale = 1.0;
-
if (self->pointer_position_valid)
view_center_y = self->pointer_position_y;
else
@@ -175,33 +281,67 @@
}
static gboolean
-on_scroll_controller_scroll_cb (GcalWeekView *self,
+on_scroll_controller_scroll_cb (GtkEventControllerScroll *controller,
gdouble dx,
gdouble dy,
- GtkEventControllerScroll *controller)
+ GcalWeekView *self)
{
- gdouble scale, view_center_y;
+ GdkEvent *event;
+ gboolean discrete;
+ gdouble view_center_y;
+ gdouble scale;
if (!(gtk_event_controller_get_current_event_state (GTK_EVENT_CONTROLLER (controller)) & GDK_CONTROL_MASK))
return FALSE;
- scale = dy / 100.0 + self->scroll_scale;
+ event = gtk_event_controller_get_current_event (GTK_EVENT_CONTROLLER (controller));
+
+ switch (gdk_scroll_event_get_direction (event))
+ {
+ case GDK_SCROLL_SMOOTH:
+ scale = dy / 100.0 + 1.0;
+ discrete = FALSE;
+ break;
+
+ case GDK_SCROLL_UP:
+ case GDK_SCROLL_DOWN:
+ scale = dy / 10.0 + 1.0;
+ discrete = TRUE;
+ break;
+
+ case GDK_SCROLL_LEFT:
+ case GDK_SCROLL_RIGHT:
+ default:
+ g_assert_not_reached ();
+ }
if (self->pointer_position_valid)
view_center_y = self->pointer_position_y;
else
view_center_y = gtk_widget_get_allocated_height (self->scrolled_window) / 2.0;
- begin_zoom (self, view_center_y);
+ if (discrete)
+ begin_zoom (self, view_center_y);
+
apply_zoom (self, view_center_y, scale);
+ if (discrete)
+ save_zoom_level (self);
+
return TRUE;
}
static void
-on_zoom_gesture_scale_changed_cb (GcalWeekView *self,
+on_scroll_controller_scroll_end_cb (GtkEventControllerScroll *controller,
+ GcalWeekView *self)
+{
+ save_zoom_level (self);
+}
+
+static void
+on_zoom_gesture_scale_changed_cb (GtkGestureZoom *gesture,
gdouble scale,
- GtkGestureZoom *gesture)
+ GcalWeekView *self)
{
gdouble view_center_x, view_center_y;
@@ -211,9 +351,9 @@
}
static void
-on_zoom_gesture_begin_cb (GcalWeekView *self,
+on_zoom_gesture_begin_cb (GtkGesture *gesture,
GdkEventSequence *sequence,
- GtkGesture *gesture)
+ GcalWeekView *self)
{
gdouble view_center_x, view_center_y;
@@ -223,6 +363,14 @@
}
static void
+on_zoom_gesture_end_cb (GtkGesture *gesture,
+ GdkEventSequence *sequence,
+ GcalWeekView *self)
+{
+ save_zoom_level (self);
+}
+
+static void
stack_visible_child_changed_cb (AdwViewStack *stack,
GParamSpec *pspec,
GcalWeekView *self)
@@ -235,81 +383,6 @@
g_clear_signal_handler (&self->stack_page_changed_id, stack);
}
-/* Auxiliary methods */
-static gboolean
-update_grid_scroll_position (GcalWeekView *self)
-{
- g_autoptr(GDateTime) week_start = NULL;
- g_autoptr(GDateTime) week_end = NULL;
- g_autoptr(GDateTime) now = NULL;
- GtkAdjustment *vadjustment;
- gdouble minutes, real_value;
- gdouble max, page, page_increment, value;
- gboolean dummy;
-
- /* While the scrolled window is not mapped, we keep waiting */
- if (!gtk_widget_get_realized (self->scrolled_window) ||
- !gtk_widget_get_mapped (self->scrolled_window))
- {
- if (self->stack_page_changed_id == 0)
- {
- GtkWidget *stack = gtk_widget_get_ancestor (GTK_WIDGET (self), ADW_TYPE_VIEW_STACK);
-
- self->stack_page_changed_id = g_signal_connect_object (stack,
- "notify::visible-child",
- G_CALLBACK (stack_visible_child_changed_cb),
- self,
- 0);
- }
-
- self->scroll_grid_timeout_id = 0;
-
- GCAL_RETURN (G_SOURCE_REMOVE);
- }
-
- now = g_date_time_new_now_local ();
- week_start = gcal_date_time_get_start_of_week (self->date);
- week_end = gcal_date_time_get_end_of_week (self->date);
-
- /* Don't animate when not today */
- if (gcal_date_time_compare_date (now, week_start) < 0 || gcal_date_time_compare_date (now, week_end) >= 0)
- GCAL_GOTO (out);
-
- vadjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (self->scrolled_window));
- minutes = g_date_time_get_hour (now) * 60 + g_date_time_get_minute (now);
- page = gtk_adjustment_get_page_size (vadjustment);
- max = gtk_adjustment_get_upper (vadjustment);
-
- real_value = max / MINUTES_PER_DAY * minutes - (page / 2.0);
- page_increment = gtk_adjustment_get_page_increment (vadjustment);
- value = gtk_adjustment_get_value (vadjustment);
-
- gtk_adjustment_set_page_increment (vadjustment, real_value - value);
-
- g_signal_emit_by_name (self->scrolled_window,
- "scroll-child",
- GTK_SCROLL_PAGE_FORWARD,
- FALSE,
- &dummy);
-
- gtk_adjustment_set_page_increment (vadjustment, page_increment);
-
-out:
- self->scroll_grid_timeout_id = 0;
- GCAL_RETURN (G_SOURCE_REMOVE);
-}
-
-static void
-schedule_position_scroll (GcalWeekView *self)
-{
- /* Nothing is scheduled, we should do it now */
- if (self->scroll_grid_timeout_id > 0)
- g_source_remove (self->scroll_grid_timeout_id);
-
- self->scroll_grid_timeout_id = g_timeout_add (200,
- (GSourceFunc) update_grid_scroll_position,
- self);
-}
/* GcalView implementation */
static GDateTime*
@@ -511,6 +584,7 @@
gcal_week_grid_set_context (GCAL_WEEK_GRID (self->week_grid), self->context);
gcal_week_header_set_context (GCAL_WEEK_HEADER (self->header), self->context);
gcal_week_hour_bar_set_context (self->hours_bar, self->context);
+ restore_zoom_level (self);
break;
default:
@@ -577,8 +651,10 @@
gtk_widget_class_bind_template_callback (widget_class, on_motion_controller_leave_cb);
gtk_widget_class_bind_template_callback (widget_class, on_scroll_controller_scroll_begin_cb);
gtk_widget_class_bind_template_callback (widget_class, on_scroll_controller_scroll_cb);
+ gtk_widget_class_bind_template_callback (widget_class, on_scroll_controller_scroll_end_cb);
gtk_widget_class_bind_template_callback (widget_class, on_zoom_gesture_scale_changed_cb);
gtk_widget_class_bind_template_callback (widget_class, on_zoom_gesture_begin_cb);
+ gtk_widget_class_bind_template_callback (widget_class, on_zoom_gesture_end_cb);
gtk_widget_class_set_css_name (widget_class, "calendar-view");
}
@@ -590,6 +666,8 @@
gtk_widget_init_template (GTK_WIDGET (self));
+ self->zoom_level = 1.0;
+
gtk_widget_set_size_request (self->content, -1, HEIGHT_DEFAULT);
size_group = gcal_week_header_get_sidebar_size_group (GCAL_WEEK_HEADER (self->header));
diff -Nru gnome-calendar-44.0/src/gui/views/gcal-week-view.ui gnome-calendar-44.1/src/gui/views/gcal-week-view.ui
--- gnome-calendar-44.0/src/gui/views/gcal-week-view.ui 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/gui/views/gcal-week-view.ui 2023-04-22 09:51:06.000000000 +0000
@@ -18,8 +18,9 @@
-
-
+
+
+
@@ -28,8 +29,9 @@
capture
vertical|kinetic
-
-
+
+
+
@@ -37,9 +39,9 @@
capture
-
-
-
+
+
+
diff -Nru gnome-calendar-44.0/src/search/gcal-search-engine.c gnome-calendar-44.1/src/search/gcal-search-engine.c
--- gnome-calendar-44.0/src/search/gcal-search-engine.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/search/gcal-search-engine.c 2023-04-22 09:51:06.000000000 +0000
@@ -22,20 +22,12 @@
#include "gcal-context.h"
#include "gcal-date-time-utils.h"
+#include "gcal-debug.h"
#include "gcal-search-engine.h"
#include "gcal-search-model.h"
#include "gcal-timeline.h"
#include "gcal-timeline-subscriber.h"
-typedef struct
-{
- GcalSearchEngine *engine;
- gchar *query;
- gint max_results;
- GDateTime *range_start;
- GDateTime *range_end;
-} SearchData;
-
struct _GcalSearchEngine
{
GObject parent;
@@ -58,59 +50,10 @@
/*
- * Auxiliary methods
- */
-
-static void
-search_data_free (gpointer data)
-{
- SearchData *search_data = data;
-
- if (!data)
- return;
-
- gcal_clear_date_time (&search_data->range_start);
- gcal_clear_date_time (&search_data->range_end);
- g_clear_pointer (&search_data->query, g_free);
- g_clear_object (&search_data->engine);
- g_slice_free (SearchData, data);
-}
-
-
-/*
* Callbacks
*/
static void
-search_func (GTask *task,
- gpointer source_object,
- gpointer task_data,
- GCancellable *cancellable)
-{
- g_autoptr (GcalSearchModel) model = NULL;
- GcalSearchEngine *self;
- SearchData *data;
-
- self = GCAL_SEARCH_ENGINE (source_object);
- data = (SearchData*) task_data;
-
- model = gcal_search_model_new (cancellable,
- data->max_results,
- data->range_start,
- data->range_end);
-
- gcal_timeline_set_filter (self->timeline, data->query);
- gcal_timeline_add_subscriber (self->timeline, GCAL_TIMELINE_SUBSCRIBER (model));
-
- gcal_search_model_wait_for_hits (model, cancellable);
-
- if (g_cancellable_is_cancelled (cancellable))
- g_task_return_new_error (task, G_IO_ERROR, G_IO_ERROR_CANCELLED, "Cancelled");
- else
- g_task_return_pointer (task, g_steal_pointer (&model), g_object_unref);
-}
-
-static void
on_manager_calendar_added_cb (GcalManager *manager,
GcalCalendar *calendar,
GcalSearchEngine *self)
@@ -130,6 +73,31 @@
gcal_timeline_remove_calendar (self->timeline, calendar);
}
+static void
+search_model_hits_cb (GObject *source,
+ GAsyncResult *result,
+ gpointer data)
+{
+ g_autoptr (GError) error = NULL;
+ g_autoptr (GTask) task = data;
+ GcalSearchModel *search_model;
+
+ GCAL_ENTRY;
+
+ search_model = GCAL_SEARCH_MODEL (source);
+ gcal_search_model_wait_for_hits_finish (search_model, result, &error);
+
+ if (error)
+ {
+ g_task_return_error (task, g_steal_pointer (&error));
+ GCAL_RETURN ();
+ }
+
+ g_task_return_pointer (task, g_object_ref (search_model), NULL);
+
+ GCAL_EXIT;
+}
+
/*
* GObject overrides
@@ -246,9 +214,11 @@
GAsyncReadyCallback callback,
gpointer user_data)
{
+ g_autoptr (GcalSearchModel) model = NULL;
+ g_autoptr (GDateTime) range_start = NULL;
+ g_autoptr (GDateTime) range_end = NULL;
g_autoptr (GDateTime) now = NULL;
g_autoptr (GTask) task = NULL;
- SearchData *data = NULL;
GTimeZone *timezone;
g_return_if_fail (GCAL_IS_SEARCH_ENGINE (self));
@@ -256,20 +226,18 @@
timezone = gcal_context_get_timezone (self->context);
now = g_date_time_new_now (timezone);
+ range_start = g_date_time_add_weeks (now, -1);
+ range_end = g_date_time_add_weeks (now, 3);
+ model = gcal_search_model_new (cancellable, max_results, range_start, range_end);
- data = g_slice_new0 (SearchData);
- data->engine = g_object_ref (self);
- data->query = g_strdup (search_query);
- data->max_results = max_results;
- data->range_start = g_date_time_add_weeks (now, -1);
- data->range_end = g_date_time_add_weeks (now, 3);
+ gcal_timeline_set_filter (self->timeline, search_query);
+ gcal_timeline_add_subscriber (self->timeline, GCAL_TIMELINE_SUBSCRIBER (model));
task = g_task_new (self, cancellable, callback, user_data);
g_task_set_source_tag (task, gcal_search_engine_search);
g_task_set_priority (task, G_PRIORITY_LOW);
- g_task_set_task_data (task, data, (GDestroyNotify) search_data_free);
- g_task_run_in_thread (task, search_func);
+ gcal_search_model_wait_for_hits (model, cancellable, search_model_hits_cb, g_object_ref (task));
}
GListModel*
diff -Nru gnome-calendar-44.0/src/search/gcal-search-hit-event.c gnome-calendar-44.1/src/search/gcal-search-hit-event.c
--- gnome-calendar-44.0/src/search/gcal-search-hit-event.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/search/gcal-search-hit-event.c 2023-04-22 09:51:06.000000000 +0000
@@ -105,9 +105,12 @@
gcal_search_hit_event_compare (GcalSearchHit *a,
GcalSearchHit *b)
{
+ GcalCalendar *calendar_a;
+ GcalCalendar *calendar_b;
GcalEvent *event_a;
GcalEvent *event_b;
time_t now_utc;
+ gint result;
g_assert (GCAL_IS_SEARCH_HIT_EVENT (a));
g_assert (GCAL_IS_SEARCH_HIT_EVENT (b));
@@ -116,7 +119,14 @@
event_b = GCAL_SEARCH_HIT_EVENT (b)->event;
now_utc = time (NULL);
- return -gcal_event_compare_with_current (event_a, event_b, now_utc);
+ result = -gcal_event_compare_with_current (event_a, event_b, now_utc);
+ if (result != 0)
+ return result;
+
+ calendar_a = gcal_event_get_calendar (event_a);
+ calendar_b = gcal_event_get_calendar (event_b);
+
+ return g_strcmp0 (gcal_calendar_get_name (calendar_b), gcal_calendar_get_name (calendar_a));
}
diff -Nru gnome-calendar-44.0/src/search/gcal-search-model.c gnome-calendar-44.1/src/search/gcal-search-model.c
--- gnome-calendar-44.0/src/search/gcal-search-model.c 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/search/gcal-search-model.c 2023-04-22 09:51:06.000000000 +0000
@@ -42,6 +42,9 @@
GDateTime *range_end;
GListModel *model;
+
+ GTimer *timer;
+ guint idle_id;
};
static void gcal_timeline_subscriber_interface_init (GcalTimelineSubscriberInterface *iface);
@@ -58,14 +61,31 @@
* Callbacks
*/
-static void
-on_model_items_changed_cb (GListModel *model,
- guint position,
- guint removed,
- guint added,
- GcalSearchModel *self)
+static gboolean
+check_for_search_hits_cb (gpointer user_data)
{
- g_list_model_items_changed (G_LIST_MODEL (self), position, removed, added);
+ GcalSearchModel *self;
+ GTask *task;
+
+ task = G_TASK (user_data);
+ self = GCAL_SEARCH_MODEL (g_task_get_source_object (task));
+
+ if (g_task_return_error_if_cancelled (task))
+ goto stop_idle;
+
+ if (g_timer_elapsed (self->timer, NULL) >= WAIT_FOR_RESULTS_MS ||
+ g_list_model_get_n_items (self->model) >= MIN_RESULTS)
+ {
+ g_task_return_boolean (task, TRUE);
+ goto stop_idle;
+ }
+
+ return G_SOURCE_CONTINUE;
+
+stop_idle:
+ g_clear_pointer (&self->timer, g_timer_destroy);
+ self->idle_id = 0;
+ return G_SOURCE_REMOVE;
}
@@ -118,29 +138,33 @@
{
g_autoptr (GcalSearchHitEvent) search_hit = NULL;
GcalSearchModel *self;
- guint position = -1;
+ gboolean found;
+ guint position;
self = GCAL_SEARCH_MODEL (subscriber);
- if (g_list_model_get_n_items (self->model) > self->max_results)
- return;
-
GCAL_TRACE_MSG ("Adding search hit '%s'", gcal_event_get_summary (event));
search_hit = gcal_search_hit_event_new (event);
- g_list_store_find_with_equal_func (G_LIST_STORE (self->model),
- search_hit,
- search_hits_equals_cb,
- &position);
+ found = g_list_store_find_with_equal_func (G_LIST_STORE (self->model),
+ search_hit,
+ search_hits_equals_cb,
+ NULL);
- if (position != -1)
+ if (found)
return;
- g_list_store_insert_sorted (G_LIST_STORE (self->model),
- search_hit,
- compare_search_hits_cb,
- self);
+ position = g_list_store_insert_sorted (G_LIST_STORE (self->model),
+ search_hit,
+ compare_search_hits_cb,
+ self);
+ if (position < self->max_results)
+ {
+ if (g_list_model_get_n_items (self->model) > self->max_results)
+ g_list_model_items_changed (G_LIST_MODEL (self), self->max_results, 1, 0);
+ g_list_model_items_changed (G_LIST_MODEL (self), position, 0, 1);
+ }
}
static void
@@ -179,7 +203,7 @@
gcal_search_model_get_n_items (GListModel *model)
{
GcalSearchModel *self = (GcalSearchModel *)model;
- return g_list_model_get_n_items (self->model);
+ return CLAMP (g_list_model_get_n_items (self->model), 0, self->max_results);
}
static gpointer
@@ -208,6 +232,9 @@
{
GcalSearchModel *self = (GcalSearchModel *)object;
+ g_assert (self->timer == NULL);
+ g_assert (self->idle_id == 0);
+
g_cancellable_cancel (self->cancellable);
gcal_clear_date_time (&self->range_start);
@@ -230,7 +257,6 @@
gcal_search_model_init (GcalSearchModel *self)
{
self->model = (GListModel*) g_list_store_new (GCAL_TYPE_SEARCH_HIT);
- g_signal_connect_object (self->model, "items-changed", G_CALLBACK (on_model_items_changed_cb), self, 0);
}
GcalSearchModel *
@@ -251,29 +277,38 @@
}
void
-gcal_search_model_wait_for_hits (GcalSearchModel *self,
- GCancellable *cancellable)
+gcal_search_model_wait_for_hits (GcalSearchModel *self,
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data)
{
- g_autoptr (GMainContext) thread_context = NULL;
- g_autoptr (GTimer) timer = NULL;
+ g_autoptr (GTask) task = NULL;
GCAL_ENTRY;
- g_return_if_fail (GCAL_IS_SEARCH_MODEL (self));
-
- thread_context = g_main_context_ref_thread_default ();
- timer = g_timer_new ();
+ g_assert (self->timer == NULL);
+ g_assert (self->idle_id == 0);
- g_timer_start (timer);
+ task = g_task_new (self, cancellable, callback, user_data);
+ g_task_set_source_tag (task, gcal_search_model_wait_for_hits);
+ g_task_set_priority (task, G_PRIORITY_LOW);
+
+ self->timer = g_timer_new ();
+ self->idle_id = g_idle_add_full (G_PRIORITY_LOW,
+ check_for_search_hits_cb,
+ g_object_ref (task),
+ g_object_unref);
- while (g_list_model_get_n_items (self->model) < MIN_RESULTS &&
- g_timer_elapsed (timer, NULL) < WAIT_FOR_RESULTS_MS)
- {
- if (g_cancellable_is_cancelled (cancellable))
- break;
+ GCAL_EXIT;
+}
- g_main_context_iteration (thread_context, FALSE);
- }
+gboolean
+gcal_search_model_wait_for_hits_finish (GcalSearchModel *self,
+ GAsyncResult *result,
+ GError **error)
+{
+ g_return_val_if_fail (GCAL_IS_SEARCH_MODEL (self), FALSE);
+ g_return_val_if_fail (g_task_is_valid (result, self), FALSE);
- GCAL_EXIT;
+ return g_task_propagate_boolean (G_TASK (result), error);
}
diff -Nru gnome-calendar-44.0/src/search/gcal-search-model.h gnome-calendar-44.1/src/search/gcal-search-model.h
--- gnome-calendar-44.0/src/search/gcal-search-model.h 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/search/gcal-search-model.h 2023-04-22 09:51:06.000000000 +0000
@@ -33,6 +33,12 @@
GDateTime *range_end);
void gcal_search_model_wait_for_hits (GcalSearchModel *self,
- GCancellable *cancellable);
+ GCancellable *cancellable,
+ GAsyncReadyCallback callback,
+ gpointer user_data);
+
+gboolean gcal_search_model_wait_for_hits_finish (GcalSearchModel *self,
+ GAsyncResult *result,
+ GError **error);
G_END_DECLS
diff -Nru gnome-calendar-44.0/src/theme/style.css gnome-calendar-44.1/src/theme/style.css
--- gnome-calendar-44.0/src/theme/style.css 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/theme/style.css 2023-04-22 09:51:06.000000000 +0000
@@ -392,6 +392,10 @@
border: none;
}
+searchbutton > popover listview > row:selected {
+ background-color: alpha(@accent_bg_color, 0.11);
+}
+
/*
* Month selector
*/
diff -Nru gnome-calendar-44.0/src/theme/style-dark.css gnome-calendar-44.1/src/theme/style-dark.css
--- gnome-calendar-44.0/src/theme/style-dark.css 2023-03-16 12:19:56.000000000 +0000
+++ gnome-calendar-44.1/src/theme/style-dark.css 2023-04-22 09:51:06.000000000 +0000
@@ -6,3 +6,11 @@
color: @light_1;
outline-color: rgba(0, 0, 0, 0.3);
}
+
+/*
+ * Search
+ */
+
+searchbutton > popover listview > row:selected {
+ background-color: alpha(@accent_bg_color, 0.2);
+}