diff -Nru unity-control-center-14.04.3+14.04.20140313/debian/changelog unity-control-center-14.04.3+14.04.20140317/debian/changelog --- unity-control-center-14.04.3+14.04.20140313/debian/changelog 2014-03-17 13:53:15.000000000 +0000 +++ unity-control-center-14.04.3+14.04.20140317/debian/changelog 2014-03-17 13:53:15.000000000 +0000 @@ -1,3 +1,18 @@ +unity-control-center (14.04.3+14.04.20140317-0ubuntu1) trusty; urgency=low + + [ Robert Ancell ] + * Only allow icons sizes to be even numbers because odd sizes look + blurry. (LP: #991310) + + [ Sebastien Bacher ] + * Backport some leak fixes from upstream, those were leading to + dialogs not closing when they should (e.g when exiting the panel + they belong to), hitting a segfault when used then. (LP: #1292038) + * Use the correct naming for the "Text Entry" settings + * handle pa_stream_peek returning null (LP: #1197029) + + -- Ubuntu daily release Mon, 17 Mar 2014 13:46:59 +0000 + unity-control-center (14.04.3+14.04.20140313-0ubuntu1) trusty; urgency=low [ Sebastien Bacher ] diff -Nru unity-control-center-14.04.3+14.04.20140313/panels/appearance/cc-appearance-panel.c unity-control-center-14.04.3+14.04.20140317/panels/appearance/cc-appearance-panel.c --- unity-control-center-14.04.3+14.04.20140313/panels/appearance/cc-appearance-panel.c 2014-03-13 10:12:55.000000000 +0000 +++ unity-control-center-14.04.3+14.04.20140317/panels/appearance/cc-appearance-panel.c 2014-03-17 13:46:45.000000000 +0000 @@ -121,18 +121,11 @@ #define MIN_ICONSIZE 16.0 #define MAX_ICONSIZE 64.0 +#define DEFAULT_ICONSIZE 48.0 #define MIN_LAUNCHER_SENSIVITY 0.2 #define MAX_LAUNCHER_SENSIVITY 8.0 -typedef struct -{ - gdouble min; - gdouble max; -} MinMax; -static MinMax iconsize_values; -static MinMax launchersensitivity_values; - #define WID(y) (GtkWidget *) gtk_builder_get_object (priv->builder, y) static void @@ -1412,7 +1405,7 @@ iconsize_widget_refresh (GtkAdjustment *iconsize_adj, GSettings *unity_settings) { gint value = g_settings_get_int (unity_settings, UNITY_ICONSIZE_KEY); - gtk_adjustment_set_value (iconsize_adj, (gdouble)value); + gtk_adjustment_set_value (iconsize_adj, (gdouble)value / 2); } static void @@ -1423,10 +1416,16 @@ iconsize_widget_refresh (GTK_ADJUSTMENT (user_data), settings); } +static gchar * +on_iconsize_format_value (GtkScale *scale, gdouble value) +{ + return g_strdup_printf ("%d", (int) value * 2); +} + static void on_iconsize_changed (GtkAdjustment *adj, GSettings *unity_settings) { - g_settings_set_int (unity_settings, UNITY_ICONSIZE_KEY, (gint)gtk_adjustment_get_value (adj)); + g_settings_set_int (unity_settings, UNITY_ICONSIZE_KEY, (gint)gtk_adjustment_get_value (adj) * 2); } static void @@ -1791,21 +1790,21 @@ /* Get scrolling in the right direction */ static gboolean on_scale_scroll_event (GtkWidget *widget, - GdkEventScroll *event, - gpointer *data) + GdkEventScroll *event) { gdouble value; GtkAdjustment *adj = gtk_range_get_adjustment (GTK_RANGE (widget)); - MinMax *iconsize_values = (MinMax *) data; - gdouble delta = iconsize_values->max - iconsize_values->min; + double min = gtk_adjustment_get_lower (adj); + double max = gtk_adjustment_get_upper (adj); + gdouble delta = max - min; value = gtk_adjustment_get_value (adj); if ((event->direction == GDK_SCROLL_UP) || (event->direction == GDK_SCROLL_SMOOTH && event->delta_y < 0)) { - if (value + delta/8 > iconsize_values->max) - value = iconsize_values->max; + if (value + delta/8 > max) + value = max; else value = value + delta/8; gtk_adjustment_set_value (adj, value); @@ -1813,8 +1812,8 @@ else if ((event->direction == GDK_SCROLL_DOWN) || (event->direction == GDK_SCROLL_SMOOTH && event->delta_y > 0)) { - if (value - delta/8 < iconsize_values->min) - value = iconsize_values->min; + if (value - delta/8 < min) + value = min; else value = value - delta/8; gtk_adjustment_set_value (adj, value); @@ -1866,20 +1865,20 @@ if (!priv->unity_settings || !priv->compizcore_settings || !priv->unity_own_settings || !priv->unity_launcher_settings) return; - /* Icon size change */ - iconsize_values.min = MIN_ICONSIZE; - iconsize_values.max = MAX_ICONSIZE; - iconsize_adj = gtk_adjustment_new (48, iconsize_values.min, iconsize_values.max, 1, 5, 0); + /* Icon size change - we halve the sizes so we can only get even values*/ + iconsize_adj = gtk_adjustment_new (DEFAULT_ICONSIZE / 2, MIN_ICONSIZE / 2, MAX_ICONSIZE / 2, 1, 4, 0); iconsize_scale = GTK_SCALE (WID ("unity-iconsize-scale")); gtk_range_set_adjustment (GTK_RANGE (iconsize_scale), iconsize_adj); - gtk_scale_add_mark (iconsize_scale, 48, GTK_POS_BOTTOM, NULL); + gtk_scale_add_mark (iconsize_scale, DEFAULT_ICONSIZE / 2, GTK_POS_BOTTOM, NULL); g_signal_connect (priv->unity_settings, "changed::" UNITY_ICONSIZE_KEY, G_CALLBACK (ext_iconsize_changed_callback), iconsize_adj); + g_signal_connect (G_OBJECT (iconsize_scale), "format-value", + G_CALLBACK (on_iconsize_format_value), NULL); g_signal_connect (iconsize_adj, "value_changed", G_CALLBACK (on_iconsize_changed), priv->unity_settings); g_signal_connect (G_OBJECT (iconsize_scale), "scroll-event", - G_CALLBACK (on_scale_scroll_event), &iconsize_values); + G_CALLBACK (on_scale_scroll_event), NULL); iconsize_widget_refresh (iconsize_adj, priv->unity_settings); /* Reveal spot setting */ @@ -1892,9 +1891,7 @@ reveallauncher_widget_refresh (self); /* Launcher reveal */ - launchersensitivity_values.min = MIN_LAUNCHER_SENSIVITY; - launchersensitivity_values.max = MAX_LAUNCHER_SENSIVITY; - launcher_sensitivity_adj = gtk_adjustment_new (2, launchersensitivity_values.min, launchersensitivity_values.max, 0.1, 1, 0); + launcher_sensitivity_adj = gtk_adjustment_new (2, MIN_LAUNCHER_SENSIVITY, MAX_LAUNCHER_SENSIVITY, 0.1, 1, 0); launcher_sensitivity_scale = GTK_SCALE (WID ("unity-launcher-sensitivity")); gtk_range_set_adjustment (GTK_RANGE (launcher_sensitivity_scale), launcher_sensitivity_adj); gtk_scale_add_mark (launcher_sensitivity_scale, 2, GTK_POS_BOTTOM, NULL); @@ -1903,7 +1900,7 @@ g_signal_connect (launcher_sensitivity_adj, "value_changed", G_CALLBACK (on_launchersensitivity_changed), self); g_signal_connect (G_OBJECT (launcher_sensitivity_scale), "scroll-event", - G_CALLBACK (on_scale_scroll_event), &launchersensitivity_values); + G_CALLBACK (on_scale_scroll_event), NULL); launcher_sensitivity_widget_refresh (launcher_sensitivity_adj, priv->unity_settings); /* Autohide launcher setting */ diff -Nru unity-control-center-14.04.3+14.04.20140313/panels/info/cc-info-panel.c unity-control-center-14.04.3+14.04.20140317/panels/info/cc-info-panel.c --- unity-control-center-14.04.3+14.04.20140313/panels/info/cc-info-panel.c 2014-03-13 10:12:55.000000000 +0000 +++ unity-control-center-14.04.3+14.04.20140317/panels/info/cc-info-panel.c 2014-03-17 13:46:16.000000000 +0000 @@ -96,6 +96,7 @@ struct _CcInfoPanelPrivate { GtkBuilder *builder; + GtkWidget *extra_options_dialog; char *gnome_version; char *gnome_distributor; char *gnome_date; @@ -464,29 +465,11 @@ { CcInfoPanelPrivate *priv = CC_INFO_PANEL (object)->priv; - if (priv->builder != NULL) - { - g_object_unref (priv->builder); - priv->builder = NULL; - } - - if (priv->pk_proxy != NULL) - { - g_object_unref (priv->pk_proxy); - priv->pk_proxy = NULL; - } - - if (priv->pk_transaction_proxy != NULL) - { - g_object_unref (priv->pk_transaction_proxy); - priv->pk_transaction_proxy = NULL; - } - - if (priv->graphics_data != NULL) - { - graphics_data_free (priv->graphics_data); - priv->graphics_data = NULL; - } + g_clear_object (&priv->builder); + g_clear_object (&priv->pk_proxy); + g_clear_object (&priv->pk_transaction_proxy); + g_clear_pointer (&priv->graphics_data, graphics_data_free); + g_clear_pointer (&priv->extra_options_dialog, gtk_widget_destroy); G_OBJECT_CLASS (cc_info_panel_parent_class)->dispose (object); } @@ -1209,7 +1192,7 @@ GtkWidget *dialog; GtkWidget *combo_box; - dialog = GTK_WIDGET (gtk_builder_get_object (self->priv->builder, "extra_options_dialog")); + dialog = self->priv->extra_options_dialog; combo_box = GTK_WIDGET (gtk_builder_get_object (self->priv->builder, "media_other_type_combobox")); gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self)))); @@ -1715,8 +1698,7 @@ } else if (g_strcmp0 (signal_name, "Destroy") == 0) { - g_object_unref (self->priv->pk_transaction_proxy); - self->priv->pk_transaction_proxy = NULL; + g_clear_object (&self->priv->pk_transaction_proxy); } } @@ -1940,6 +1922,8 @@ return; } + self->priv->extra_options_dialog = WID ("extra_options_dialog"); + self->priv->graphics_data = get_graphics_data (); widget = WID ("updates_button"); diff -Nru unity-control-center-14.04.3+14.04.20140313/panels/keyboard/gnome-keyboard-panel.ui unity-control-center-14.04.3+14.04.20140317/panels/keyboard/gnome-keyboard-panel.ui --- unity-control-center-14.04.3+14.04.20140313/panels/keyboard/gnome-keyboard-panel.ui 2014-03-13 10:12:55.000000000 +0000 +++ unity-control-center-14.04.3+14.04.20140317/panels/keyboard/gnome-keyboard-panel.ui 2014-03-17 13:46:25.000000000 +0000 @@ -626,7 +626,7 @@ False - Layout Settings + Text Entry True True True diff -Nru unity-control-center-14.04.3+14.04.20140313/panels/keyboard/keyboard-shortcuts.c unity-control-center-14.04.3+14.04.20140317/panels/keyboard/keyboard-shortcuts.c --- unity-control-center-14.04.3+14.04.20140313/panels/keyboard/keyboard-shortcuts.c 2014-03-13 10:12:55.000000000 +0000 +++ unity-control-center-14.04.3+14.04.20140317/panels/keyboard/keyboard-shortcuts.c 2014-03-17 13:46:16.000000000 +0000 @@ -1893,5 +1893,7 @@ g_clear_object (&binding_settings); + g_clear_pointer (&custom_shortcut_dialog, gtk_widget_destroy); + cc_keyboard_option_clear_all (); } diff -Nru unity-control-center-14.04.3+14.04.20140313/panels/sound/gvc-mixer-dialog.c unity-control-center-14.04.3+14.04.20140317/panels/sound/gvc-mixer-dialog.c --- unity-control-center-14.04.3+14.04.20140313/panels/sound/gvc-mixer-dialog.c 2014-03-13 10:12:55.000000000 +0000 +++ unity-control-center-14.04.3+14.04.20140317/panels/sound/gvc-mixer-dialog.c 2014-03-17 13:46:34.000000000 +0000 @@ -276,6 +276,11 @@ return; } + if (!data) { + pa_stream_drop (s); + return; + } + assert (length > 0); assert (length % sizeof (float) == 0); diff -Nru unity-control-center-14.04.3+14.04.20140313/panels/user-accounts/um-account-dialog.c unity-control-center-14.04.3+14.04.20140317/panels/user-accounts/um-account-dialog.c --- unity-control-center-14.04.3+14.04.20140313/panels/user-accounts/um-account-dialog.c 2014-03-13 10:12:55.000000000 +0000 +++ unity-control-center-14.04.3+14.04.20140317/panels/user-accounts/um-account-dialog.c 2014-03-17 13:46:16.000000000 +0000 @@ -1192,6 +1192,8 @@ self->realm_manager = NULL; } + g_clear_pointer (&self->join_dialog, gtk_widget_destroy); + G_OBJECT_CLASS (um_account_dialog_parent_class)->dispose (obj); }