Package: release.debian.org Severity: normal X-Debbugs-Cc: [email protected] Control: affects -1 + src:libadwaita-1 User: [email protected] Usertags: unblock
Please unblock package libadwaita-1 [ Reason ] New upstream bugfix release [ Impact ] Assorted cherry-picked bug fixes, in particular: - a crash (libadwaita#1032 upstream) - a critical warning indicating wrong resource management that could lead to a crash (the only change in 1.7.4) - unreadable text in various widgets when they are disabled (insensitive, greyed-out) (libadwaita#1020 upstream) [ Tests ] A functionally equivalent version has been in experimental for about a week with no regression reports. Manual testing: my GNOME desktop system continues to work normally (tried various apps such as GNOME Control Center, Nautilus, GNOME Software, GTK4 widget gallery demo) The autopkgtests still pass, but they're only superficial. [ Risks ] This is a key package in our default desktop environment, but the changes are narrowly-targeted and would be straightforward to revert. The noisiest changes are CSS tweaks for libadwaita#1020 and libadwaita#967, which are more data than code. [ Checklist ] [x] all changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in testing unblock libadwaita-1/1.7.4-2
debdiff *.dsc | filterdiff -p1 -xdebian/.gitignore -x'po/*.po' diff -Nru libadwaita-1-1.7.2/debian/changelog libadwaita-1-1.7.4/debian/changelog --- libadwaita-1-1.7.2/debian/changelog 2025-04-17 13:20:57.000000000 +0100 +++ libadwaita-1-1.7.4/debian/changelog 2025-06-14 14:02:45.000000000 +0100 @@ -1,3 +1,36 @@ +libadwaita-1 (1.7.4-2) unstable; urgency=medium + + * Team upload + * Summarize upstream changes in previous changelog entry + * Release to unstable + + -- Simon McVittie <[email protected]> Sat, 14 Jun 2025 14:02:45 +0100 + +libadwaita-1 (1.7.4-1) experimental; urgency=medium + + * New upstream release 1.7.3 + - Fix a crash if the preference for titlebar button layout is set + to empty + (libadwaita#1032 upstream) + - Don't let the text colour in various widgets become unreadable + when disabled (insensitive) + (libadwaita#1020 upstream) + - Fix visual style of expander rows marked as .property class + (libadwaita#967 upstream) + - Correctly transfer focus to expander rows when targeted by search + (libadwaita#1037 upstream) + - Adjust the threshold between yellow and green when normalizing accent + colours + - In the "inspector" debugging tool, don't interpret window titles + as Pango markup + - Documentation fixes + - Translation updates: ja, lv, pt + * New upstream release 1.7.4 + - Fix a critical when disposing AdwCarousel after scrolling with + mouse wheel + + -- Jeremy BĂcha <[email protected]> Fri, 06 Jun 2025 14:29:05 -0400 + libadwaita-1 (1.7.2-1) unstable; urgency=medium * New upstream release diff -Nru libadwaita-1-1.7.2/doc/css-variables.md libadwaita-1-1.7.4/doc/css-variables.md --- libadwaita-1-1.7.2/doc/css-variables.md 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/doc/css-variables.md 2025-05-26 20:53:38.000000000 +0100 @@ -1049,7 +1049,7 @@ Name | Value ------------------------ | ----- -<tt>--window-radius</tt> | 12px +<tt>--window-radius</tt> | 15px Matches the current window radius, whether it's floating or maximized. Can be used for e.g. rounding focus rings next to the edge of the window while diff -Nru libadwaita-1-1.7.2/meson.build libadwaita-1-1.7.4/meson.build --- libadwaita-1-1.7.2/meson.build 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/meson.build 2025-05-26 20:53:38.000000000 +0100 @@ -1,5 +1,5 @@ project('libadwaita', 'c', - version: '1.7.2', + version: '1.7.4', license: 'LGPL-2.1-or-later', meson_version: '>= 0.63.0', default_options: [ 'warning_level=1', 'buildtype=debugoptimized', 'c_std=gnu11' ], @@ -29,7 +29,7 @@ # to 0. When bumping the second version, set the third one to zero. # # A lot easier than libtool, right? -libversion = '0.7.2' +libversion = '0.7.4' # The so major version of the library soversion = 0 diff -Nru libadwaita-1-1.7.2/NEWS libadwaita-1-1.7.4/NEWS --- libadwaita-1-1.7.2/NEWS 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/NEWS 2025-05-26 20:53:38.000000000 +0100 @@ -1,4 +1,33 @@ ============= +Version 1.7.4 +============= + +- Fix a critical when disposing AdwCarousel after scrolling with mouse wheel + +============= +Version 1.7.3 +============= + +- Fix a crash with empty window layouts +- AdwExpanderRow + - Fix grab_focus() behavior +- AdwSettings + - Move yellow/green boundary for accent color +- Docs + - Fix window radius value + - Fix missing AdwCarouselIndicatorLines image +- Inspector + - Disable markup on window rows +- Stylesheet + - Fix icon padding for .default-decoration too + - Fix .property for expander rows + - Fix disabled styles for various .view widgets +- Translation updates + - Japanese + - Latvian + - Portuguese + +============= Version 1.7.2 ============= diff -Nru libadwaita-1-1.7.2/src/adw-accent-color.c libadwaita-1-1.7.4/src/adw-accent-color.c --- libadwaita-1-1.7.2/src/adw-accent-color.c 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/adw-accent-color.c 2025-05-26 20:53:38.000000000 +0100 @@ -183,7 +183,7 @@ if (h > 175) return ADW_ACCENT_COLOR_TEAL; - if (h > 130) + if (h > 115) return ADW_ACCENT_COLOR_GREEN; if (h > 75.5) diff -Nru libadwaita-1-1.7.2/src/adw-carousel.c libadwaita-1-1.7.4/src/adw-carousel.c --- libadwaita-1-1.7.2/src/adw-carousel.c 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/adw-carousel.c 2025-05-26 20:53:38.000000000 +0100 @@ -77,7 +77,6 @@ double position_shift; guint scroll_timeout_id; - gboolean can_scroll; gboolean is_being_allocated; }; @@ -470,7 +469,7 @@ static void scroll_timeout_cb (AdwCarousel *self) { - self->can_scroll = TRUE; + self->scroll_timeout_id = 0; } static gboolean @@ -489,7 +488,7 @@ if (!self->allow_scroll_wheel) return GDK_EVENT_PROPAGATE; - if (!self->can_scroll) + if (self->scroll_timeout_id > 0) return GDK_EVENT_PROPAGATE; if (!adw_carousel_get_interactive (self)) @@ -534,7 +533,6 @@ scroll_to (self, adw_carousel_get_nth_page (self, index), 0); - self->can_scroll = FALSE; self->scroll_timeout_id = g_timeout_add_once (SCROLL_TIMEOUT_DURATION, (GSourceOnceFunc) scroll_timeout_cb, @@ -1049,7 +1047,6 @@ self->orientation = GTK_ORIENTATION_HORIZONTAL; self->reveal_duration = 0; - self->can_scroll = TRUE; self->tracker = adw_swipe_tracker_new (ADW_SWIPEABLE (self)); adw_swipe_tracker_set_allow_mouse_drag (self->tracker, TRUE); diff -Nru libadwaita-1-1.7.2/src/adw-carousel-indicator-lines.c libadwaita-1-1.7.4/src/adw-carousel-indicator-lines.c --- libadwaita-1-1.7.2/src/adw-carousel-indicator-lines.c 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/adw-carousel-indicator-lines.c 2025-05-26 20:53:38.000000000 +0100 @@ -26,7 +26,7 @@ * A lines indicator for [class@Carousel]. * * <picture> - * <source srcset="carousel-indicator-dots-lines.png" media="(prefers-color-scheme: dark)"> + * <source srcset="carousel-indicator-lines-dark.png" media="(prefers-color-scheme: dark)"> * <img src="carousel-indicator-lines.png" alt="carousel-indicator-lines"> * </picture> * diff -Nru libadwaita-1-1.7.2/src/adw-expander-row.c libadwaita-1-1.7.4/src/adw-expander-row.c --- libadwaita-1-1.7.2/src/adw-expander-row.c 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/adw-expander-row.c 2025-05-26 20:53:38.000000000 +0100 @@ -114,6 +114,15 @@ GTK_DIR_TAB_BACKWARD : GTK_DIR_TAB_FORWARD); } +static gboolean +adw_expander_row_grab_focus (GtkWidget *widget) +{ + AdwExpanderRow *self = ADW_EXPANDER_ROW (widget); + AdwExpanderRowPrivate *priv = adw_expander_row_get_instance_private (self); + + return gtk_widget_grab_focus (GTK_WIDGET (priv->action_row)); +} + static void adw_expander_row_get_property (GObject *object, guint prop_id, @@ -194,7 +203,7 @@ object_class->set_property = adw_expander_row_set_property; widget_class->focus = adw_widget_focus_child; - widget_class->grab_focus = adw_widget_grab_focus_child; + widget_class->grab_focus = adw_expander_row_grab_focus; /** * AdwExpanderRow:subtitle: diff -Nru libadwaita-1-1.7.2/src/adw-inspector-page.c libadwaita-1-1.7.4/src/adw-inspector-page.c --- libadwaita-1-1.7.2/src/adw-inspector-page.c 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/adw-inspector-page.c 2025-05-26 20:53:38.000000000 +0100 @@ -57,6 +57,7 @@ GtkWidget *row, *btn; row = adw_action_row_new (); + adw_preferences_row_set_use_markup (ADW_PREFERENCES_ROW (row), FALSE); g_object_bind_property (window, "title", row, "title", G_BINDING_SYNC_CREATE); adw_action_row_set_subtitle (ADW_ACTION_ROW (row), G_OBJECT_TYPE_NAME (window)); diff -Nru libadwaita-1-1.7.2/src/adw-widget-utils.c libadwaita-1-1.7.4/src/adw-widget-utils.c --- libadwaita-1-1.7.2/src/adw-widget-utils.c 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/adw-widget-utils.c 2025-05-26 20:53:38.000000000 +0100 @@ -617,6 +617,9 @@ char **sides; int i; + if (!layout || !strchr (layout, ':')) + return FALSE; + sides = g_strsplit (layout, ":", 2); for (i = 0; i < 2; i++) { diff -Nru libadwaita-1-1.7.2/src/stylesheet/widgets/_calendar.scss libadwaita-1-1.7.4/src/stylesheet/widgets/_calendar.scss --- libadwaita-1-1.7.2/src/stylesheet/widgets/_calendar.scss 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/stylesheet/widgets/_calendar.scss 2025-05-26 20:53:38.000000000 +0100 @@ -4,6 +4,10 @@ border: 1px solid $border_color; font-feature-settings: "tnum"; + &.view:disabled { + color: var(--view-fg-color); + } + > header { border-bottom: 1px solid $border_color; diff -Nru libadwaita-1-1.7.2/src/stylesheet/widgets/_column-view.scss libadwaita-1-1.7.4/src/stylesheet/widgets/_column-view.scss --- libadwaita-1-1.7.2/src/stylesheet/widgets/_column-view.scss 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/stylesheet/widgets/_column-view.scss 2025-05-26 20:53:38.000000000 +0100 @@ -1,6 +1,10 @@ columnview { @include focus-ring(); + &.view:disabled { + color: var(--view-fg-color); + } + &:drop(active) { box-shadow: none; } diff -Nru libadwaita-1-1.7.2/src/stylesheet/widgets/_deprecated.scss libadwaita-1-1.7.4/src/stylesheet/widgets/_deprecated.scss --- libadwaita-1-1.7.2/src/stylesheet/widgets/_deprecated.scss 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/stylesheet/widgets/_deprecated.scss 2025-05-26 20:53:38.000000000 +0100 @@ -196,6 +196,10 @@ treeview.view { @extend columnview; + &:disabled { + color: color-mix(in srgb, var(--view-fg-color) var(--disabled-opacity), transparent); + } + &:not(:selected) { // Hack to make it update colors when accent changes. The percentage is // small enough that background color is unaffected, but GTK will still diff -Nru libadwaita-1-1.7.2/src/stylesheet/widgets/_header-bar.scss libadwaita-1-1.7.4/src/stylesheet/widgets/_header-bar.scss --- libadwaita-1-1.7.2/src/stylesheet/widgets/_header-bar.scss 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/stylesheet/widgets/_header-bar.scss 2025-05-26 20:53:38.000000000 +0100 @@ -56,6 +56,10 @@ min-height: 22px; min-width: 22px; padding: 4px; + + > image { + padding: 3px; + } } > .icon { diff -Nru libadwaita-1-1.7.2/src/stylesheet/widgets/_lists.scss libadwaita-1-1.7.4/src/stylesheet/widgets/_lists.scss --- libadwaita-1-1.7.2/src/stylesheet/widgets/_lists.scss 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/stylesheet/widgets/_lists.scss 2025-05-26 20:53:38.000000000 +0100 @@ -9,6 +9,10 @@ background-clip: padding-box; border-color: $border_color; + &.view:disabled { + color: var(--view-fg-color); + } + > row { padding: 2px; background-clip: padding-box; @@ -157,28 +161,6 @@ &:dir(rtl) { margin-left: 6px; } } } - - &.property > box.header > box.title > { - .title { - font-size: smaller; - @extend .dimmed; - } - - .subtitle { - font-size: inherit; - opacity: 1; - } - } - - &.property.monospace { - font-family: inherit; - font-size: inherit; - - & > box.header > box.title > .subtitle { - font-family: var(--monospace-font-family); - font-size: var(--monospace-font-size); - } - } } /****************************** @@ -422,14 +404,37 @@ .osd &:checked image.expander-row-arrow:not(:disabled) { color: inherit; } +} - &.property > box > list > row { - @extend .property; +/***************** + * Property rows * + *****************/ + +row.property { + &, &.expander > box > list > row.header { + > box.header > box.title { + > .title { + font-size: smaller; + @extend .dimmed; + } + + > .subtitle { + font-size: inherit; + opacity: 1; + } + } } - &.property.monospace > box > list > row > box.header > box.title > .subtitle { - font-family: var(--monospace-font-family); - font-size: var(--monospace-font-size); + &.monospace { + &, &.expander > box > list > row.header { + font-family: inherit; + font-size: inherit; + + > box.header > box.title > .subtitle { + font-family: var(--monospace-font-family); + font-size: var(--monospace-font-size); + } + } } } diff -Nru libadwaita-1-1.7.2/src/stylesheet/widgets/_views.scss libadwaita-1-1.7.4/src/stylesheet/widgets/_views.scss --- libadwaita-1-1.7.2/src/stylesheet/widgets/_views.scss 2025-04-13 19:06:21.000000000 +0100 +++ libadwaita-1-1.7.4/src/stylesheet/widgets/_views.scss 2025-05-26 20:53:38.000000000 +0100 @@ -4,7 +4,7 @@ background-color: var(--view-bg-color); &:disabled { - color: color-mix(in srgb, currentColor 5%, transparent); + color: color-mix(in srgb, var(--view-fg-color) var(--disabled-opacity), transparent); background-color: color-mix(in srgb, var(--window-bg-color) 60%, var(--view-bg-color)); } @@ -83,3 +83,8 @@ } } +flowbox, gridview { + &.view:disabled { + color: var(--view-fg-color); + } +}

