public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: raveit65 <raveit65.sun@gmail.com>
To: git-commits@fedoraproject.org
Subject: [rpms/mate-screensaver] rawhide: update to 1.28.1
Date: Wed, 10 Jun 2026 17:32:42 GMT [thread overview]
Message-ID: <178111276279.1.2729953240922639795.rpms-mate-screensaver-1e9651f8e183@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/mate-screensaver
Branch : rawhide
Commit : 1e9651f8e1832f2b36536758febc3fbab9ae57b6
Author : raveit65 <raveit65.sun@gmail.com>
Date : 2026-06-10T19:31:41+02:00
Stats : +3/-683 in 9 file(s)
URL : https://src.fedoraproject.org/rpms/mate-screensaver/c/1e9651f8e1832f2b36536758febc3fbab9ae57b6?branch=rawhide
Log:
update to 1.28.1
---
diff --git a/.gitignore b/.gitignore
index be8b0f1..11891fa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -45,3 +45,4 @@
/mate-screensaver-1.26.1.tar.xz
/mate-screensaver-1.26.2.tar.xz
/mate-screensaver-1.28.0.tar.xz
+/mate-screensaver-1.28.1.tar.xz
diff --git a/mate-screensaver.spec b/mate-screensaver.spec
index db07cbf..e6c4ece 100644
--- a/mate-screensaver.spec
+++ b/mate-screensaver.spec
@@ -1,7 +1,7 @@
%global branch 1.28
Name: mate-screensaver
-Version: %{branch}.0
+Version: %{branch}.1
Release: %autorelease
Summary: MATE Screensaver
# Automatically converted from old format: GPLv2+ and LGPLv2+ - review is highly recommended.
@@ -9,13 +9,6 @@ License: GPL-2.0-or-later AND LicenseRef-Callaway-LGPLv2+
URL: http://pub.mate-desktop.org
Source0: http://pub.mate-desktop.org/releases/%{branch}/%{name}-%{version}.tar.xz
-Patch1: mate-screensaver_0001-add-the-number-of-minutes-for-GUI-settings-to-lock-t.patch
-Patch2: mate-screensaver_0002-mate-screensaver-preferences-Add-mnemonic-for-backgr.patch
-Patch3: mate-screensaver_0003-mate-screensaver-preferences-Cleanup-UI-file-after-l.patch
-Patch4: mate-screensaver_0004-mate-screensaver-preferences-Add-missing-mnemonic.patch
-Patch5: mate-screensaver_0005-mate-screensaver-preferences-Add-tooltip-for-lock-de.patch
-Patch6: mate-screensaver_0006-mate-screensaver-preferences-Improve-and-cleanup-tim.patch
-
Requires: redhat-menus
Requires: system-logos
Requires: gnome-keyring-pam
diff --git a/mate-screensaver_0001-add-the-number-of-minutes-for-GUI-settings-to-lock-t.patch b/mate-screensaver_0001-add-the-number-of-minutes-for-GUI-settings-to-lock-t.patch
deleted file mode 100644
index e9cf19c..0000000
--- a/mate-screensaver_0001-add-the-number-of-minutes-for-GUI-settings-to-lock-t.patch
+++ /dev/null
@@ -1,304 +0,0 @@
-From 7d0057888746e40c1af9989c41a192353ded0cab Mon Sep 17 00:00:00 2001
-From: mouse <15132211195@163.com>
-Date: Thu, 16 May 2024 16:28:29 +0800
-Subject: [PATCH 1/6] add the number of minutes for GUI settings to lock the
- screen after activating the screen saver (#293)
-
----
- data/mate-screensaver-preferences.ui | 88 +++++++++++++++++++---------
- src/mate-screensaver-preferences.c | 73 ++++++++++++++++++++---
- 2 files changed, 125 insertions(+), 36 deletions(-)
-
-diff --git a/data/mate-screensaver-preferences.ui b/data/mate-screensaver-preferences.ui
-index 0311064..c49b04c 100644
---- a/data/mate-screensaver-preferences.ui
-+++ b/data/mate-screensaver-preferences.ui
-@@ -14,6 +14,13 @@
- <property name="step_increment">1</property>
- <property name="page_increment">10</property>
- </object>
-+ <object class="GtkAdjustment" id="adjustment2">
-+ <property name="lower">0</property>
-+ <property name="upper">120</property>
-+ <property name="value">10</property>
-+ <property name="step_increment">1</property>
-+ <property name="page_increment">10</property>
-+ </object>
- <object class="GtkWindow" id="fullscreen_preview_window">
- <property name="can_focus">True</property>
- <property name="has_focus">True</property>
-@@ -387,27 +394,30 @@
- <property name="spacing">6</property>
- <child>
- <object class="GtkBox" id="activate_delay_hbox">
-- <property name="visible">True</property>
-- <property name="can_focus">False</property>
-- <property name="spacing">12</property>
-- <child>
-- <object class="GtkLabel" id="activate_delay_label">
-- <property name="visible">True</property>
-- <property name="can_focus">False</property>
-- <property name="label" translatable="yes">Regard the computer as _idle after:</property>
-- <property name="use_underline">True</property>
-- </object>
-- <packing>
-- <property name="expand">False</property>
-- <property name="fill">False</property>
-- <property name="position">0</property>
-- </packing>
-- </child>
-+- <property name="visible">True</property>
-+- <property name="can_focus">False</property>
-+- <property name="spacing">12</property>
- <child>
-- <object class="GtkBox" id="hbox4">
-+ <object class="GtkGrid" id="time_grid">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-- <property name="spacing">6</property>
-+ <property name="hexpand">True</property>
-+ <property name="column-homogeneous">True</property>
-+ <property name="column_spacing">6</property>
-+ <child>
-+ <object class="GtkLabel" id="activate_delay_label">
-+ <property name="visible">True</property>
-+ <property name="can_focus">False</property>
-+ <property name="label" translatable="yes">Regard the computer as _idle after:</property>
-+ <property name="use_underline">True</property>
-+ </object>
-+ <packing>
-+ <property name="left_attach">0</property>
-+ <property name="top_attach">0</property>
-+ <property name="width">1</property>
-+ <property name="height">1</property>
-+ </packing>
-+ </child>
- <child>
- <object class="GtkScale" id="activate_delay_hscale">
- <property name="visible">True</property>
-@@ -416,24 +426,48 @@
- <property name="digits">0</property>
- </object>
- <packing>
-- <property name="expand">True</property>
-- <property name="fill">True</property>
-- <property name="position">0</property>
-+ <property name="left_attach">1</property>
-+ <property name="top_attach">0</property>
-+ <property name="width">3</property>
-+ <property name="height">1</property>
-+ </packing>
-+ </child>
-+ <child>
-+ <object class="GtkLabel" id="lock_delay_label">
-+ <property name="visible">True</property>
-+ <property name="can_focus">False</property>
-+ <property name="label" translatable="yes">Time before locking:</property>
-+ <property name="use_underline">True</property>
-+ </object>
-+ <packing>
-+ <property name="left_attach">0</property>
-+ <property name="top_attach">1</property>
-+ <property name="width">1</property>
-+ <property name="height">1</property>
-+ </packing>
-+ </child>
-+ <child>
-+ <object class="GtkScale" id="lock_delay_hscale">
-+ <property name="visible">True</property>
-+ <property name="can_focus">True</property>
-+ <property name="adjustment">adjustment2</property>
-+ <property name="digits">0</property>
-+ </object>
-+ <packing>
-+ <property name="left_attach">1</property>
-+ <property name="top_attach">1</property>
-+ <property name="width">3</property>
-+ <property name="height">1</property>
- </packing>
- </child>
- </object>
- <packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
-- <property name="position">1</property>
-+ <property name="position">0</property>
- </packing>
- </child>
- </object>
-- <packing>
-- <property name="expand">False</property>
-- <property name="fill">True</property>
-- <property name="position">0</property>
-- </packing>
- </child>
- <child>
- <object class="GtkCheckButton" id="enable_checkbox">
-diff --git a/src/mate-screensaver-preferences.c b/src/mate-screensaver-preferences.c
-index 105380c..d20c364 100644
---- a/src/mate-screensaver-preferences.c
-+++ b/src/mate-screensaver-preferences.c
-@@ -118,6 +118,31 @@ config_set_activate_delay (gint32 timeout)
- g_settings_set_int (session_settings, KEY_IDLE_DELAY, timeout);
- }
-
-+static gdouble
-+config_get_lock_delay (gboolean *is_writable)
-+{
-+ gint delay;
-+
-+ if (is_writable)
-+ {
-+ *is_writable = g_settings_is_writable (screensaver_settings,
-+ KEY_LOCK_DELAY);
-+ }
-+
-+ if ((delay = g_settings_get_int (screensaver_settings, KEY_LOCK_DELAY)) < 1)
-+ {
-+ return 0.0;
-+ }
-+
-+ return (gdouble) delay;
-+}
-+
-+static void
-+config_set_lock_delay (gint32 timeout)
-+{
-+ g_settings_set_int (screensaver_settings, KEY_LOCK_DELAY, timeout);
-+}
-+
- static int
- config_get_mode (gboolean *is_writable)
- {
-@@ -576,6 +601,16 @@ activate_delay_value_changed_cb (GtkRange *range,
- config_set_activate_delay ((gint32)value);
- }
-
-+static void
-+lock_delay_value_changed_cb (GtkRange *range,
-+ gpointer user_data)
-+{
-+ gdouble value;
-+
-+ value = gtk_range_get_value (range);
-+ config_set_lock_delay ((gint32)value);
-+}
-+
- static int
- compare_theme_names (char *name_a,
- char *name_b,
-@@ -1028,7 +1063,6 @@ time_to_string_text (long time)
- size_t max_len;
-
- string = g_strdup_printf (_("%s"), mins);
--
- if (min == 1)
- max_len = (size_t) (len_minutes + inc_len + 3);
- else if (min < 10)
-@@ -1067,8 +1101,9 @@ static char *
- format_value_callback_time (GtkScale *scale,
- gdouble value)
- {
-+ /*You need to make up for 27 characters in length, otherwise the display will split into different lines*/
- if (value == 0)
-- return g_strdup_printf (_("Never"));
-+ return g_strdup_printf (_("Never "));
-
- return time_to_string_text ((long) (value * 60.0));
- }
-@@ -1152,11 +1187,11 @@ ui_set_enabled (gboolean enabled)
- }
-
- static void
--ui_set_delay (gdouble delay)
-+ui_set_delay (const char *name, gdouble delay)
- {
- GtkWidget *widget;
-
-- widget = GTK_WIDGET (gtk_builder_get_object (builder, "activate_delay_hscale"));
-+ widget = GTK_WIDGET (gtk_builder_get_object (builder, name));
- gtk_range_set_value (GTK_RANGE (widget), delay);
- }
-
-@@ -1199,8 +1234,14 @@ key_changed_cb (GSettings *settings, const gchar *key, gpointer data)
- int delay;
-
- delay = g_settings_get_int (settings, key);
-- ui_set_delay ((gdouble) delay);
-+ ui_set_delay ("activate_delay_hscale", (gdouble) delay);
-+ }
-+ else if (strcmp (key, KEY_LOCK_DELAY) == 0)
-+ {
-+ int delay;
-
-+ delay = g_settings_get_int (settings, key);
-+ ui_set_delay ("lock_delay_hscale", (gdouble) delay);
- }
- else
- {
-@@ -1596,7 +1637,7 @@ init_capplet (void)
- GtkWidget *treeview;
- GtkWidget *list_scroller;
- GtkWidget *activate_delay_hscale;
-- GtkWidget *activate_delay_hbox;
-+ GtkWidget *lock_delay_hscale;
- GtkWidget *label;
- GtkWidget *enabled_checkbox;
- GtkWidget *lock_checkbox;
-@@ -1645,7 +1686,7 @@ init_capplet (void)
- treeview = GTK_WIDGET (gtk_builder_get_object (builder, "savers_treeview"));
- list_scroller = GTK_WIDGET (gtk_builder_get_object (builder, "themes_scrolled_window"));
- activate_delay_hscale = GTK_WIDGET (gtk_builder_get_object (builder, "activate_delay_hscale"));
-- activate_delay_hbox = GTK_WIDGET (gtk_builder_get_object (builder, "activate_delay_hbox"));
-+ lock_delay_hscale = GTK_WIDGET (gtk_builder_get_object (builder, "lock_delay_hscale"));
- enabled_checkbox = GTK_WIDGET (gtk_builder_get_object (builder, "enable_checkbox"));
- lock_checkbox = GTK_WIDGET (gtk_builder_get_object (builder, "lock_checkbox"));
- root_warning_label = GTK_WIDGET (gtk_builder_get_object (builder, "root_warning_label"));
-@@ -1660,6 +1701,8 @@ init_capplet (void)
-
- label = GTK_WIDGET (gtk_builder_get_object (builder, "activate_delay_label"));
- gtk_label_set_mnemonic_widget (GTK_LABEL (label), activate_delay_hscale);
-+ label = GTK_WIDGET (gtk_builder_get_object (builder, "lock_delay_label"));
-+ gtk_label_set_mnemonic_widget (GTK_LABEL (label), lock_delay_hscale);
- label = GTK_WIDGET (gtk_builder_get_object (builder, "savers_label"));
- gtk_label_set_mnemonic_widget (GTK_LABEL (label), treeview);
-
-@@ -1691,14 +1734,23 @@ init_capplet (void)
- NULL);
-
- activate_delay = config_get_activate_delay (&is_writable);
-- ui_set_delay (activate_delay);
-+ ui_set_delay ("activate_delay_hscale", activate_delay);
- if (! is_writable)
- {
-- gtk_widget_set_sensitive (activate_delay_hbox, FALSE);
-+ gtk_widget_set_sensitive (activate_delay_hscale, FALSE);
- }
- g_signal_connect (activate_delay_hscale, "format-value",
- G_CALLBACK (format_value_callback_time), NULL);
-
-+ activate_delay = config_get_lock_delay (&is_writable);
-+ ui_set_delay ("lock_delay_hscale", activate_delay);
-+ if (! is_writable)
-+ {
-+ gtk_widget_set_sensitive (lock_delay_hscale, FALSE);
-+ }
-+ g_signal_connect (lock_delay_hscale, "format-value",
-+ G_CALLBACK (format_value_callback_time), NULL);
-+
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (lock_checkbox), config_get_lock (&is_writable));
- if (! is_writable)
- {
-@@ -1770,6 +1822,9 @@ init_capplet (void)
- g_signal_connect (activate_delay_hscale, "value-changed",
- G_CALLBACK (activate_delay_value_changed_cb), NULL);
-
-+ g_signal_connect (lock_delay_hscale, "value-changed",
-+ G_CALLBACK (lock_delay_value_changed_cb), NULL);
-+
- g_signal_connect (dialog, "response",
- G_CALLBACK (response_cb), NULL);
-
---
-2.49.0
-
diff --git a/mate-screensaver_0002-mate-screensaver-preferences-Add-mnemonic-for-backgr.patch b/mate-screensaver_0002-mate-screensaver-preferences-Add-mnemonic-for-backgr.patch
deleted file mode 100644
index f8f3968..0000000
--- a/mate-screensaver_0002-mate-screensaver-preferences-Add-mnemonic-for-backgr.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 243d9338b49269bde2cd655c213b44a2b89495b5 Mon Sep 17 00:00:00 2001
-From: Colomban Wendling <cwendling@hypra.fr>
-Date: Wed, 15 May 2024 22:03:38 +0200
-Subject: [PATCH 2/6] mate-screensaver-preferences: Add mnemonic for
- background-picture
-
----
- data/mate-screensaver-preferences.ui | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/data/mate-screensaver-preferences.ui b/data/mate-screensaver-preferences.ui
-index c49b04c..7ae6f51 100644
---- a/data/mate-screensaver-preferences.ui
-+++ b/data/mate-screensaver-preferences.ui
-@@ -508,7 +508,9 @@
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-- <property name="label" translatable="yes">Background picture for lock screen:</property>
-+ <property name="label" translatable="yes">_Background picture for lock screen:</property>
-+ <property name="use-underline">True</property>
-+ <property name="mnemonic-widget">picture_filename</property>
- </object>
- <packing>
- <property name="expand">False</property>
---
-2.49.0
-
diff --git a/mate-screensaver_0003-mate-screensaver-preferences-Cleanup-UI-file-after-l.patch b/mate-screensaver_0003-mate-screensaver-preferences-Cleanup-UI-file-after-l.patch
deleted file mode 100644
index 9adafa7..0000000
--- a/mate-screensaver_0003-mate-screensaver-preferences-Cleanup-UI-file-after-l.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From 4aaa2300e7960c17a989296945b042ab4bdd42c2 Mon Sep 17 00:00:00 2001
-From: Colomban Wendling <cwendling@hypra.fr>
-Date: Wed, 15 May 2024 15:52:39 +0200
-Subject: [PATCH 3/6] mate-screensaver-preferences: Cleanup UI file after
- lock-delay changes
-
----
- data/mate-screensaver-preferences.ui | 17 +++++++++++------
- 1 file changed, 11 insertions(+), 6 deletions(-)
-
-diff --git a/data/mate-screensaver-preferences.ui b/data/mate-screensaver-preferences.ui
-index 7ae6f51..62a4baf 100644
---- a/data/mate-screensaver-preferences.ui
-+++ b/data/mate-screensaver-preferences.ui
-@@ -394,20 +394,21 @@
- <property name="spacing">6</property>
- <child>
- <object class="GtkBox" id="activate_delay_hbox">
--- <property name="visible">True</property>
--- <property name="can_focus">False</property>
--- <property name="spacing">12</property>
-+ <property name="visible">True</property>
-+ <property name="can_focus">False</property>
-+ <property name="spacing">12</property>
- <child>
- <object class="GtkGrid" id="time_grid">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="hexpand">True</property>
-- <property name="column-homogeneous">True</property>
- <property name="column_spacing">6</property>
- <child>
- <object class="GtkLabel" id="activate_delay_label">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-+ <property name="halign">start</property>
-+ <property name="hexpand">False</property>
- <property name="label" translatable="yes">Regard the computer as _idle after:</property>
- <property name="use_underline">True</property>
- </object>
-@@ -422,13 +423,14 @@
- <object class="GtkScale" id="activate_delay_hscale">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-+ <property name="hexpand">True</property>
- <property name="adjustment">adjustment1</property>
- <property name="digits">0</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="top_attach">0</property>
-- <property name="width">3</property>
-+ <property name="width">1</property>
- <property name="height">1</property>
- </packing>
- </child>
-@@ -436,6 +438,8 @@
- <object class="GtkLabel" id="lock_delay_label">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
-+ <property name="halign">start</property>
-+ <property name="hexpand">False</property>
- <property name="label" translatable="yes">Time before locking:</property>
- <property name="use_underline">True</property>
- </object>
-@@ -450,13 +454,14 @@
- <object class="GtkScale" id="lock_delay_hscale">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
-+ <property name="hexpand">True</property>
- <property name="adjustment">adjustment2</property>
- <property name="digits">0</property>
- </object>
- <packing>
- <property name="left_attach">1</property>
- <property name="top_attach">1</property>
-- <property name="width">3</property>
-+ <property name="width">1</property>
- <property name="height">1</property>
- </packing>
- </child>
---
-2.49.0
-
diff --git a/mate-screensaver_0004-mate-screensaver-preferences-Add-missing-mnemonic.patch b/mate-screensaver_0004-mate-screensaver-preferences-Add-missing-mnemonic.patch
deleted file mode 100644
index a9a7607..0000000
--- a/mate-screensaver_0004-mate-screensaver-preferences-Add-missing-mnemonic.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 925348c120b0d33854886610cbb4154770905210 Mon Sep 17 00:00:00 2001
-From: Colomban Wendling <cwendling@hypra.fr>
-Date: Wed, 15 May 2024 21:57:27 +0200
-Subject: [PATCH 4/6] mate-screensaver-preferences: Add missing mnemonic
-
----
- data/mate-screensaver-preferences.ui | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/data/mate-screensaver-preferences.ui b/data/mate-screensaver-preferences.ui
-index 62a4baf..a6918a8 100644
---- a/data/mate-screensaver-preferences.ui
-+++ b/data/mate-screensaver-preferences.ui
-@@ -440,7 +440,7 @@
- <property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="hexpand">False</property>
-- <property name="label" translatable="yes">Time before locking:</property>
-+ <property name="label" translatable="yes">Time before l_ocking:</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
---
-2.49.0
-
diff --git a/mate-screensaver_0005-mate-screensaver-preferences-Add-tooltip-for-lock-de.patch b/mate-screensaver_0005-mate-screensaver-preferences-Add-tooltip-for-lock-de.patch
deleted file mode 100644
index 0a558aa..0000000
--- a/mate-screensaver_0005-mate-screensaver-preferences-Add-tooltip-for-lock-de.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 72827148e15294308c20c06d3a5b9654d8b24a7f Mon Sep 17 00:00:00 2001
-From: Colomban Wendling <cwendling@hypra.fr>
-Date: Wed, 15 May 2024 22:03:06 +0200
-Subject: [PATCH 5/6] mate-screensaver-preferences: Add tooltip for lock-delay
-
----
- data/mate-screensaver-preferences.ui | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/data/mate-screensaver-preferences.ui b/data/mate-screensaver-preferences.ui
-index a6918a8..e5ef573 100644
---- a/data/mate-screensaver-preferences.ui
-+++ b/data/mate-screensaver-preferences.ui
-@@ -441,6 +441,7 @@
- <property name="halign">start</property>
- <property name="hexpand">False</property>
- <property name="label" translatable="yes">Time before l_ocking:</property>
-+ <property name="tooltip-text" translatable="yes">Delay before locking the screen after the screensaver activated</property>
- <property name="use_underline">True</property>
- </object>
- <packing>
---
-2.49.0
-
diff --git a/mate-screensaver_0006-mate-screensaver-preferences-Improve-and-cleanup-tim.patch b/mate-screensaver_0006-mate-screensaver-preferences-Improve-and-cleanup-tim.patch
deleted file mode 100644
index ea319dd..0000000
--- a/mate-screensaver_0006-mate-screensaver-preferences-Improve-and-cleanup-tim.patch
+++ /dev/null
@@ -1,209 +0,0 @@
-From a3def4737c267b649194fd8c2f37cc8fa0f2bc0d Mon Sep 17 00:00:00 2001
-From: Colomban Wendling <cwendling@hypra.fr>
-Date: Tue, 21 May 2024 10:51:37 +0200
-Subject: [PATCH 6/6] mate-screensaver-preferences: Improve and cleanup time
- scale formatting (#295)
-
-Formatting the value of a GtkScale is actually pretty tricky, because
-the lower and upper values representations are used to compute the size
-required do draw *all* values. This means the representations for the
-lower and upper bounds have to be at least as big as any other possible
-value, failing that leads to wrapping and overflowing of the value
-representation.
-
-This was previously partially done in `time_to_string_text()`, but not
-only wasn't it comprehensive (it only did so for whole minutes < 59),
-but it also meant that if one of the bounds wasn't a whole minute it
-didn't have the desired effect.
-
-Fix this by extracting the code for padding the string outside of the
-time formatting, and pad the resulting format string whatever it is.
-
-Also improve the padding to try and be less visible, by padding to the
-side where we don't want the value to align (e.g. pad on the right if
-we want the value left-aligned).
-
-This is still basically a sad hack, but there doesn't seem to be a
-better way to do this when neither the lower nor upper bound is
-necessarily the largest value.
----
- src/mate-screensaver-preferences.c | 138 +++++++++++++----------------
- 1 file changed, 62 insertions(+), 76 deletions(-)
-
-diff --git a/src/mate-screensaver-preferences.c b/src/mate-screensaver-preferences.c
-index d20c364..1bcdcaf 100644
---- a/src/mate-screensaver-preferences.c
-+++ b/src/mate-screensaver-preferences.c
-@@ -969,13 +969,7 @@ static char *
- time_to_string_text (long time)
- {
- char *secs, *mins, *hours, *string;
-- char *chk_hour_str, *chk_minute_str, *chk_hour_minute_str;
-- char *chk_ascii_str;
- int sec, min, hour;
-- size_t chk_ascii_len;
-- int len_minutes;
-- int n, inc_len;
-- int diff;
-
- sec = time % 60;
- time = time - sec;
-@@ -992,52 +986,6 @@ time_to_string_text (long time)
- secs = g_strdup_printf (ngettext ("%d second",
- "%d seconds", sec), sec);
-
-- /* inc_len = it's the lenght of the string "1 hour 59 minutes" */
-- chk_hour_str = g_strdup_printf (ngettext ("%d hour",
-- "%d hours", 1), 1);
-- chk_minute_str = g_strdup_printf (ngettext ("%d minute",
-- "%d minutes", 59), 59);
-- chk_hour_minute_str = g_strdup_printf (_("%s %s"),
-- chk_hour_str, chk_minute_str);
-- inc_len = strlen (chk_hour_minute_str) - 1;
-- g_free (chk_hour_str);
-- g_free (chk_minute_str);
-- g_free (chk_hour_minute_str);
--
-- len_minutes = 0;
-- for (n = 2; n < 60; n++)
-- {
-- char *minute_str = g_strdup_printf (ngettext ("%d minute",
-- "%d minutes", n), n);
-- char *ascii_str = g_str_to_ascii (minute_str, NULL);
-- size_t ascii_str_len = strlen (ascii_str);
-- size_t extra_length = (n < 10) ? 2 : 3;
--
-- diff = (int) (ascii_str_len - extra_length);
-- if (diff > len_minutes)
-- len_minutes = diff;
--
-- g_free (minute_str);
-- g_free (ascii_str);
-- }
--
-- /* check the lenght of the string "1 minute" */
-- chk_minute_str = g_strdup_printf (ngettext ("%d minute",
-- "%d minutes", 1), 1);
-- chk_ascii_str = g_str_to_ascii (chk_minute_str, NULL);
-- chk_ascii_len = strlen (chk_ascii_str);
-- diff = (int) (chk_ascii_len - 2);
--
-- if (diff > len_minutes)
-- len_minutes = diff;
--
-- g_free (chk_minute_str);
-- g_free (chk_ascii_str);
--
-- /* len_minutes = MAX (1, len_minutes) */
-- if (len_minutes < 1)
-- len_minutes = 1;
--
- if (hour > 0)
- {
- if (sec > 0)
-@@ -1060,28 +1008,7 @@ time_to_string_text (long time)
- else
- {
- /* minutes */
-- size_t max_len;
--
- string = g_strdup_printf (_("%s"), mins);
-- if (min == 1)
-- max_len = (size_t) (len_minutes + inc_len + 3);
-- else if (min < 10)
-- max_len = (size_t) (len_minutes + inc_len);
-- else
-- max_len = (size_t) (len_minutes + inc_len - 1);
--
-- while (strlen (string) != max_len)
-- {
-- char *string_aux;
--
-- if (strlen (string) % 2 == 0)
-- string_aux = g_strconcat (string, " ", NULL);
-- else
-- string_aux = g_strconcat (" " , string, NULL);
--
-- g_free (string);
-- string = string_aux;
-- }
- }
- }
- else
-@@ -1101,11 +1028,70 @@ static char *
- format_value_callback_time (GtkScale *scale,
- gdouble value)
- {
-- /*You need to make up for 27 characters in length, otherwise the display will split into different lines*/
-+ gchar *time_str, *big_time_str;
-+ GtkAdjustment *adj;
-+ gdouble lower, range, delta;
-+ gint pad_size;
-+
-+ /* get the value representation as a string */
- if (value == 0)
-- return g_strdup_printf (_("Never "));
-+ time_str = g_strdup (_("Never"));
-+ else
-+ time_str = time_to_string_text ((long) (value * 60.0));
-+
-+ /* Now, adjust the string so the representation for the bounds are the
-+ * longest ones, and try and adjust the length as smoothly as possible.
-+ * The issue here is that GTK is using the lower and upper value
-+ * representations to compute the largest expected value's bounding box,
-+ * so those need to be bigger than anything else we might represent,
-+ * otherwise layout gets messed up (wraps and overflows). To achieve this,
-+ * we pad the values near each bound so its length is at least the same as
-+ * the biggest actual value. We cannot really do anything perfect here
-+ * because what matters is the pango layout size for the largest value, but
-+ * we don't have access to enough information to create one matching what
-+ * GTK will actually use, and even so it'd be trial-and-error until the
-+ * layout is big enough. So the silly assumptions below are probably good
-+ * enough. */
-+ adj = gtk_range_get_adjustment (GTK_RANGE (scale));
-+ lower = gtk_adjustment_get_lower (adj);
-+ range = gtk_adjustment_get_upper (adj) - lower;
-+ delta = range / 2 - (value - lower);
-+ /* the largest (character-wise) time string we expect */
-+ big_time_str = time_to_string_text (7199 /* 1:59:59 */);
-+ pad_size = ((g_utf8_strlen (big_time_str, -1) * (ABS (delta) / range)) -
-+ g_utf8_strlen (time_str, -1));
-+ g_free (big_time_str);
-+ if (pad_size > 0)
-+ {
-+ /* pad string with EM SPACE (U+2003) */
-+ GString *padded = g_string_new (NULL);
-+
-+ /* adjust pad side in RTL locales that aren't actually translated, as
-+ * a properly translated one would have text drawn RTL already */
-+ if (gtk_widget_get_direction (GTK_WIDGET (scale)) == GTK_TEXT_DIR_RTL)
-+ {
-+ const gchar *msg_plural = "%d minutes";
-+ if (ngettext ("%d minute", msg_plural, 2) == msg_plural)
-+ delta *= -1;
-+ }
-+
-+ if (delta < 0)
-+ {
-+ for (gint i = 0; i < pad_size; i++)
-+ g_string_append_unichar (padded, 0x2003);
-+ g_string_append (padded, time_str);
-+ }
-+ else
-+ {
-+ g_string_append (padded, time_str);
-+ for (gint i = 0; i < pad_size; i++)
-+ g_string_append_unichar (padded, 0x2003);
-+ }
-+ g_free (time_str);
-+ time_str = g_string_free (padded, FALSE);
-+ }
-
-- return time_to_string_text ((long) (value * 60.0));
-+ return time_str;
- }
-
- static void
---
-2.49.0
-
diff --git a/sources b/sources
index 7f0ba13..a8b1d78 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (mate-screensaver-1.28.0.tar.xz) = c687317d8cb1e5b3844a560dcefb6e198925f8fb54360e1d8a86185e0e15b0bc90046b28ec0a6dc460a2ace15a58c0e7deeac8a8149e5ae83a3e8af8846e796d
+SHA512 (mate-screensaver-1.28.1.tar.xz) = aac199f2ec8271af4912623413534b793ce4da60a14e025ae8767b755662b351556e49c67b48ffa55043ce4c3940b6183eeffe10de8d68ae583272cd72528001
reply other threads:[~2026-06-10 17:32 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178111276279.1.2729953240922639795.rpms-mate-screensaver-1e9651f8e183@fedoraproject.org \
--to=raveit65.sun@gmail.com \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox