File evolution-year-view-week-number.patch of Package evolution

From 4af3f6833b252f713fe19a531008d6451064701b Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha@redhat.com>
Date: Wed, 4 Feb 2026 08:35:22 +0100
Subject: [PATCH] I#3238 - Calendar: Year view shows incorrect week number

Closes https://gitlab.gnome.org/GNOME/evolution/-/issues/3238
---
 src/e-util/e-month-widget.c | 16 +++-------------
 1 file changed, 3 insertions(+), 13 deletions(-)

diff --git a/src/e-util/e-month-widget.c b/src/e-util/e-month-widget.c
index ed8ecf6b8f..12d765c2e1 100644
--- a/src/e-util/e-month-widget.c
+++ b/src/e-util/e-month-widget.c
@@ -161,32 +161,22 @@ e_month_widget_update (EMonthWidget *self)
 	GDate *date, tmp_date;
 	GtkWidget *widget;
 	gchar buffer[128];
-	guint week_of_year, week_of_last_year = 0;
 	guint ii, jj, month_day, max_month_days;
 
 	if (!digit_format)
 		digit_format = get_digit_format ();
 
 	date = g_date_new_dmy (1, self->priv->month, self->priv->year);
-
-	if (self->priv->week_start_day == G_DATE_SUNDAY) {
-		week_of_year = g_date_get_sunday_week_of_year (date);
-		if (!week_of_year)
-			week_of_last_year = g_date_get_sunday_weeks_in_year (self->priv->year - 1);
-	} else {
-		week_of_year = g_date_get_monday_week_of_year (date);
-		if (!week_of_year)
-			week_of_last_year = g_date_get_monday_weeks_in_year (self->priv->year - 1);
-	}
+	tmp_date = *date;
 
 	/* Update week numbers */
 	for (ii = 0; ii < MAX_WEEKS; ii++) {
-		g_snprintf (buffer, sizeof (buffer), digit_format, !week_of_year ? week_of_last_year : week_of_year);
+		g_snprintf (buffer, sizeof (buffer), digit_format, g_date_get_iso8601_week_of_year (&tmp_date));
 
 		widget = gtk_grid_get_child_at (self->priv->grid, 0, ii + 1);
 		gtk_label_set_text (GTK_LABEL (widget), buffer);
 
-		week_of_year++;
+		g_date_add_days (&tmp_date, 7);
 	}
 
 	/* Update day names */
-- 
2.52.0

openSUSE Build Service is sponsored by