Merge lp:~seb128/unity-control-center/info-backport-commits into lp:unity-control-center

Proposed by Sebastien Bacher
Status: Merged
Approved by: Iain Lane
Approved revision: 12716
Merged at revision: 12717
Proposed branch: lp:~seb128/unity-control-center/info-backport-commits
Merge into: lp:unity-control-center
Diff against target: 835 lines (+120/-436)
3 files modified
panels/info/cc-info-panel.c (+107/-244)
panels/info/info.ui (+12/-191)
panels/info/unity-info-panel.desktop.in.in (+1/-1)
To merge this branch: bzr merge lp:~seb128/unity-control-center/info-backport-commits
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Approve
Iain Lane Approve
Review via email: mp+207504@code.launchpad.net

Commit message

info: backport fixes and cleanings from gnome-3-8

Description of the change

info: backport fixes and cleanings from gnome-3-8

To post a comment you must log in.
Revision history for this message
Sebastien Bacher (seb128) wrote :

The changes there are basically:
- some extra debugging code
- some cleanups of old/used code
- dropped the "fallback" switch (we were already hidding it for Unity, upstream dropped it)
- dropped the "graphics" section since the graphics info are in the summary and without "fallback" nothing was left there

Revision history for this message
Iain Lane (laney) wrote :

yep, good idea - I didn't fully review the upstream changes though

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'panels/info/cc-info-panel.c'
--- panels/info/cc-info-panel.c 2014-02-18 04:27:04 +0000
+++ panels/info/cc-info-panel.c 2014-02-20 17:20:19 +0000
@@ -100,7 +100,6 @@
100 char *gnome_distributor;100 char *gnome_distributor;
101 char *gnome_date;101 char *gnome_date;
102 UpdatesState updates_state;102 UpdatesState updates_state;
103 gboolean is_fallback;
104103
105 /* Free space */104 /* Free space */
106 GList *primary_mounts;105 GList *primary_mounts;
@@ -115,7 +114,6 @@
115 GDBusProxy *pk_proxy;114 GDBusProxy *pk_proxy;
116 GDBusProxy *pk_transaction_proxy;115 GDBusProxy *pk_transaction_proxy;
117 GDBusProxy *hostnamed_proxy;116 GDBusProxy *hostnamed_proxy;
118 GSettings *session_settings;
119117
120 GraphicsData *graphics_data;118 GraphicsData *graphics_data;
121};119};
@@ -431,10 +429,10 @@
431 tmp = g_match_info_fetch (match, 1);429 tmp = g_match_info_fetch (match, 1);
432 pretty_tmp = prettify_info (tmp);430 pretty_tmp = prettify_info (tmp);
433 g_free (tmp);431 g_free (tmp);
434 /* Translators: VESA is an techncial acronym, don't translate it. */432 result = g_strdup_printf ("VESA: %s", pretty_tmp);
435 result = g_strdup_printf (_("VESA: %s"), pretty_tmp);
436 g_free (pretty_tmp);433 g_free (pretty_tmp);
437 }434 }
435 g_free (log_contents);
438 g_match_info_free (match);436 g_match_info_free (match);
439 g_regex_unref (re);437 g_regex_unref (re);
440438
@@ -461,65 +459,6 @@
461 return result;459 return result;
462}460}
463461
464static gboolean
465get_current_is_fallback (CcInfoPanel *self)
466{
467 GError *error;
468 GVariant *reply;
469 GVariant *reply_str;
470 gboolean is_fallback;
471
472 error = NULL;
473 if (!(reply = g_dbus_connection_call_sync (self->priv->session_bus,
474 "org.gnome.SessionManager",
475 "/org/gnome/SessionManager",
476 "org.freedesktop.DBus.Properties",
477 "Get",
478 g_variant_new ("(ss)", "org.gnome.SessionManager", "session-name"),
479 (GVariantType*)"(v)",
480 0,
481 -1,
482 NULL, &error)))
483 {
484 g_warning ("Failed to get fallback mode: %s", error->message);
485 g_clear_error (&error);
486 return FALSE;
487 }
488
489 g_variant_get (reply, "(v)", &reply_str);
490 is_fallback = g_strcmp0 ("gnome-fallback", g_variant_get_string (reply_str, NULL)) == 0;
491 g_variant_unref (reply_str);
492 g_variant_unref (reply);
493
494 return is_fallback;
495}
496
497static void
498cc_info_panel_get_property (GObject *object,
499 guint property_id,
500 GValue *value,
501 GParamSpec *pspec)
502{
503 switch (property_id)
504 {
505 default:
506 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
507 }
508}
509
510static void
511cc_info_panel_set_property (GObject *object,
512 guint property_id,
513 const GValue *value,
514 GParamSpec *pspec)
515{
516 switch (property_id)
517 {
518 default:
519 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
520 }
521}
522
523static void462static void
524cc_info_panel_dispose (GObject *object)463cc_info_panel_dispose (GObject *object)
525{464{
@@ -557,32 +496,13 @@
557{496{
558 CcInfoPanelPrivate *priv = CC_INFO_PANEL (object)->priv;497 CcInfoPanelPrivate *priv = CC_INFO_PANEL (object)->priv;
559498
560 if (priv->cancellable != NULL)499 g_clear_pointer (&priv->cancellable, g_cancellable_cancel);
561 {
562 g_cancellable_cancel (priv->cancellable);
563 priv->cancellable = NULL;
564 }
565 g_free (priv->gnome_version);500 g_free (priv->gnome_version);
566 g_free (priv->gnome_date);501 g_free (priv->gnome_date);
567 g_free (priv->gnome_distributor);502 g_free (priv->gnome_distributor);
568503
569 if (priv->hostnamed_proxy != NULL)504 g_clear_object (&priv->hostnamed_proxy);
570 {505 g_clear_object (&priv->media_settings);
571 g_object_unref (priv->hostnamed_proxy);
572 priv->hostnamed_proxy = NULL;
573 }
574
575 if (priv->media_settings != NULL)
576 {
577 g_object_unref (priv->media_settings);
578 priv->media_settings = NULL;
579 }
580
581 if (priv->session_settings != NULL)
582 {
583 g_object_unref (priv->session_settings);
584 priv->session_settings = NULL;
585 }
586506
587 G_OBJECT_CLASS (cc_info_panel_parent_class)->finalize (object);507 G_OBJECT_CLASS (cc_info_panel_parent_class)->finalize (object);
588}508}
@@ -594,8 +514,6 @@
594514
595 g_type_class_add_private (klass, sizeof (CcInfoPanelPrivate));515 g_type_class_add_private (klass, sizeof (CcInfoPanelPrivate));
596516
597 object_class->get_property = cc_info_panel_get_property;
598 object_class->set_property = cc_info_panel_set_property;
599 object_class->dispose = cc_info_panel_dispose;517 object_class->dispose = cc_info_panel_dispose;
600 object_class->finalize = cc_info_panel_finalize;518 object_class->finalize = cc_info_panel_finalize;
601}519}
@@ -758,7 +676,7 @@
758 /* count duplicates */676 /* count duplicates */
759 for (i = 0; i != info->ncpu; ++i)677 for (i = 0; i != info->ncpu; ++i)
760 {678 {
761 const char * const keys[] = { "model name", "cpu" };679 const char * const keys[] = { "model name", "cpu", "Processor" };
762 char *model;680 char *model;
763 int *count;681 int *count;
764682
@@ -771,7 +689,7 @@
771 }689 }
772690
773 if (model == NULL)691 if (model == NULL)
774 model = _("Unknown model");692 continue;
775693
776 count = g_hash_table_lookup (counts, model);694 count = g_hash_table_lookup (counts, model);
777 if (count == NULL)695 if (count == NULL)
@@ -832,96 +750,6 @@
832 gtk_tree_path_free (path);750 gtk_tree_path_free (path);
833}751}
834752
835static gboolean
836switch_fallback_get_mapping (GValue *value,
837 GVariant *variant,
838 gpointer data)
839{
840 const char *setting;
841
842 setting = g_variant_get_string (variant, NULL);
843 g_value_set_boolean (value, strcmp (setting, "gnome") != 0);
844 return TRUE;
845}
846
847static void
848toggle_fallback_warning_label (CcInfoPanel *self,
849 gboolean visible)
850{
851 GtkWidget *widget;
852 const char *text;
853
854 widget = WID ("graphics_logout_warning_label");
855
856 if (self->priv->is_fallback)
857 text = _("The next login will attempt to use the standard experience.");
858 else
859 text = _("The next login will use the fallback mode intended for unsupported graphics hardware.");
860
861 gtk_label_set_text (GTK_LABEL (widget), text);
862
863 if (visible)
864 gtk_widget_show (widget);
865 else
866 gtk_widget_hide (widget);
867}
868
869static GVariant *
870switch_fallback_set_mapping (const GValue *value,
871 const GVariantType *expected_type,
872 gpointer data)
873{
874 CcInfoPanel *self = data;
875 gboolean is_set;
876
877 is_set = g_value_get_boolean (value);
878 if (is_set != self->priv->is_fallback)
879 toggle_fallback_warning_label (self, TRUE);
880 else
881 toggle_fallback_warning_label (self, FALSE);
882
883 return g_variant_new_string (is_set ? "gnome-fallback" : "gnome");
884}
885
886static void
887info_panel_setup_graphics (CcInfoPanel *self)
888{
889 GtkWidget *widget;
890 GtkSwitch *sw;
891 char *text;
892
893 widget = WID ("graphics_driver_label");
894 gtk_label_set_markup (GTK_LABEL (widget), self->priv->graphics_data->hardware_string);
895
896 self->priv->is_fallback = get_current_is_fallback (self);
897 if (self->priv->is_fallback)
898 {
899 /* translators: The hardware is not able to run GNOME 3's
900 * shell, so we use the GNOME "Fallback" session */
901 text = g_strdup (C_("Experience", "Fallback"));
902 }
903 else
904 {
905 /* translators: The hardware is able to run GNOME 3's
906 * shell, also called "Standard" experience */
907 text = g_strdup (C_("Experience", "Standard"));
908 }
909 widget = WID ("graphics_experience_label");
910 gtk_label_set_markup (GTK_LABEL (widget), text ? text : "");
911 g_free (text);
912
913 widget = WID ("graphics_fallback_switch_box");
914 sw = GTK_SWITCH (gtk_switch_new ());
915 g_settings_bind_with_mapping (self->priv->session_settings, KEY_SESSION_NAME,
916 sw, "active", 0,
917 switch_fallback_get_mapping,
918 switch_fallback_set_mapping, self, NULL);
919 gtk_box_pack_start (GTK_BOX (widget), GTK_WIDGET (sw), FALSE, FALSE, 0);
920 gtk_widget_show_all (GTK_WIDGET (sw));
921 widget = WID ("fallback-label");
922 gtk_label_set_mnemonic_widget (GTK_LABEL (widget), GTK_WIDGET (sw));
923}
924
925static gboolean 753static gboolean
926url_nav_callback (WebKitWebView *web_view,754url_nav_callback (WebKitWebView *web_view,
927 WebKitWebFrame *frame,755 WebKitWebFrame *frame,
@@ -975,6 +803,11 @@
975 g_error_free (error);803 g_error_free (error);
976 error = NULL;804 error = NULL;
977 }805 }
806 else
807 {
808 g_debug ("Set '%s' as the default handler for '%s'",
809 g_app_info_get_name (info), app_data->content_type);
810 }
978811
979 if (app_data->extra_type_filter)812 if (app_data->extra_type_filter)
980 {813 {
@@ -996,6 +829,11 @@
996 g_app_info_get_name (info), mime_types[i], error->message);829 g_app_info_get_name (info), mime_types[i], error->message);
997 g_error_free (error);830 g_error_free (error);
998 }831 }
832 else
833 {
834 g_debug ("Set '%s' as the default handler for '%s'",
835 g_app_info_get_name (info), mime_types[i]);
836 }
999 }837 }
1000838
1001 g_pattern_spec_free (pattern);839 g_pattern_spec_free (pattern);
@@ -1008,23 +846,20 @@
1008info_panel_setup_default_app (CcInfoPanel *self,846info_panel_setup_default_app (CcInfoPanel *self,
1009 DefaultAppData *data,847 DefaultAppData *data,
1010 guint left_attach,848 guint left_attach,
1011 guint right_attach,849 guint top_attach)
1012 guint top_attach,
1013 guint bottom_attach)
1014{850{
1015 GtkWidget *button;851 GtkWidget *button;
1016 GtkWidget *table;852 GtkWidget *grid;
1017 GtkWidget *label;853 GtkWidget *label;
1018854
1019 table = WID ("default_apps_table");855 grid = WID ("default_apps_grid");
1020856
1021 button = gtk_app_chooser_button_new (data->content_type);857 button = gtk_app_chooser_button_new (data->content_type);
1022 g_object_set_data (G_OBJECT (button), "cc-default-app-data", data);858 g_object_set_data (G_OBJECT (button), "cc-default-app-data", data);
1023859
1024 gtk_app_chooser_button_set_show_default_item (GTK_APP_CHOOSER_BUTTON (button), TRUE);860 gtk_app_chooser_button_set_show_default_item (GTK_APP_CHOOSER_BUTTON (button), TRUE);
1025 gtk_table_attach (GTK_TABLE (table), button,861 gtk_grid_attach (GTK_GRID (grid), button, left_attach, top_attach,
1026 left_attach, right_attach,862 1, 1);
1027 top_attach, bottom_attach, GTK_FILL, 0, 0, 0);
1028 g_signal_connect (G_OBJECT (button), "changed",863 g_signal_connect (G_OBJECT (button), "changed",
1029 G_CALLBACK (default_app_changed), self);864 G_CALLBACK (default_app_changed), self);
1030 gtk_widget_show (button);865 gtk_widget_show (button);
@@ -1054,7 +889,7 @@
1054 for (i = 0; i < G_N_ELEMENTS(preferred_app_infos); i++)889 for (i = 0; i < G_N_ELEMENTS(preferred_app_infos); i++)
1055 {890 {
1056 info_panel_setup_default_app (self, &preferred_app_infos[i],891 info_panel_setup_default_app (self, &preferred_app_infos[i],
1057 1, 2, i, i+1);892 1, i);
1058 }893 }
1059}894}
1060895
@@ -1584,11 +1419,6 @@
1584 _("Removable Media"),1419 _("Removable Media"),
1585 -1);1420 -1);
15861421
1587 gtk_list_store_append (model, &iter);
1588 gtk_list_store_set (model, &iter, section_name_column,
1589 _("Graphics"),
1590 -1);
1591
1592 if (!g_strcmp0 (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity"))1422 if (!g_strcmp0 (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity"))
1593 {1423 {
1594 gtk_list_store_append (model, &iter);1424 gtk_list_store_append (model, &iter);
@@ -2005,6 +1835,86 @@
2005 }1835 }
2006}1836}
20071837
1838static gboolean
1839get_pk_version_property (GDBusProxy *pk_proxy,
1840 const char *property,
1841 guint32 *retval)
1842{
1843 GVariant *v;
1844
1845 v = g_dbus_proxy_get_cached_property (pk_proxy, property);
1846 if (!v)
1847 return FALSE;
1848
1849 g_variant_get (v, "u", retval);
1850 g_variant_unref (v);
1851 return TRUE;
1852}
1853
1854static void
1855got_pk_proxy_cb (GObject *source_object,
1856 GAsyncResult *res,
1857 CcInfoPanel *self)
1858{
1859 GError *error = NULL;
1860 guint32 major, minor, micro;
1861
1862 self->priv->pk_proxy = g_dbus_proxy_new_for_bus_finish (res, &error);
1863
1864 if (self->priv->pk_proxy == NULL)
1865 {
1866 g_warning ("Unable to get PackageKit proxy object: %s", error->message);
1867 g_error_free (error);
1868 self->priv->updates_state = PK_NOT_AVAILABLE;
1869 refresh_update_button (self);
1870 return;
1871 }
1872
1873 if (!get_pk_version_property(self->priv->pk_proxy, "VersionMajor", &major) ||
1874 !get_pk_version_property(self->priv->pk_proxy, "VersionMinor", &minor) ||
1875 !get_pk_version_property(self->priv->pk_proxy, "VersionMicro", &micro))
1876 {
1877 g_warning ("Unable to get PackageKit version");
1878 g_clear_object (&self->priv->pk_proxy);
1879 self->priv->updates_state = PK_NOT_AVAILABLE;
1880 refresh_update_button (self);
1881 return;
1882 }
1883
1884 if (major != 0 || minor != 8)
1885 {
1886 g_warning ("PackageKit version %u.%u.%u not supported", major, minor, micro);
1887 g_clear_object (&self->priv->pk_proxy);
1888 self->priv->updates_state = PK_NOT_AVAILABLE;
1889 refresh_update_button (self);
1890 }
1891 else
1892 {
1893 g_signal_connect (self->priv->pk_proxy,
1894 "g-signal",
1895 G_CALLBACK (on_pk_signal),
1896 self);
1897 refresh_updates (self);
1898 }
1899}
1900
1901static void
1902info_panel_setup_updates (CcInfoPanel *self)
1903{
1904 self->priv->updates_state = CHECKING_UPDATES;
1905 refresh_update_button (self);
1906
1907 g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
1908 G_DBUS_PROXY_FLAGS_NONE,
1909 NULL,
1910 "org.freedesktop.PackageKit",
1911 "/org/freedesktop/PackageKit",
1912 "org.freedesktop.PackageKit",
1913 NULL,
1914 (GAsyncReadyCallback) got_pk_proxy_cb,
1915 self);
1916}
1917
2008static void1918static void
2009cc_info_panel_init (CcInfoPanel *self)1919cc_info_panel_init (CcInfoPanel *self)
2010{1920{
@@ -2015,62 +1925,15 @@
20151925
2016 self->priv->builder = gtk_builder_new ();1926 self->priv->builder = gtk_builder_new ();
20171927
2018 self->priv->session_settings = g_settings_new (GNOME_SESSION_MANAGER_SCHEMA);
2019 self->priv->media_settings = g_settings_new (MEDIA_HANDLING_SCHEMA);1928 self->priv->media_settings = g_settings_new (MEDIA_HANDLING_SCHEMA);
20201929
2021 self->priv->session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL);1930 self->priv->session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL);
20221931
2023 g_assert (self->priv->session_bus);1932 g_assert (self->priv->session_bus);
20241933
2025 self->priv->pk_proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SYSTEM,1934 if (gtk_builder_add_from_file (self->priv->builder,
2026 G_DBUS_PROXY_FLAGS_NONE,1935 GNOMECC_UI_DIR "/info.ui",
2027 NULL,1936 &error) == 0)
2028 "org.freedesktop.PackageKit",
2029 "/org/freedesktop/PackageKit",
2030 "org.freedesktop.PackageKit",
2031 NULL,
2032 NULL);
2033 if (self->priv->pk_proxy == NULL)
2034 {
2035 g_warning ("Unable to get PackageKit proxy object");
2036 self->priv->updates_state = PK_NOT_AVAILABLE;
2037 }
2038 else
2039 {
2040 GVariant *v;
2041 guint32 major, minor, micro;
2042
2043 v = g_dbus_proxy_get_cached_property (self->priv->pk_proxy, "VersionMajor");
2044 g_variant_get (v, "u", &major);
2045 g_variant_unref (v);
2046 v = g_dbus_proxy_get_cached_property (self->priv->pk_proxy, "VersionMinor");
2047 g_variant_get (v, "u", &minor);
2048 g_variant_unref (v);
2049 v = g_dbus_proxy_get_cached_property (self->priv->pk_proxy, "VersionMicro");
2050 g_variant_get (v, "u", &micro);
2051 g_variant_unref (v);
2052
2053 if (major != 0 || minor != 8)
2054 {
2055 g_warning ("PackageKit version %u.%u.%u not supported", major, minor, micro);
2056 g_clear_object (&self->priv->pk_proxy);
2057 self->priv->updates_state = PK_NOT_AVAILABLE;
2058 }
2059 else
2060 {
2061 g_signal_connect (self->priv->pk_proxy,
2062 "g-signal",
2063 G_CALLBACK (on_pk_signal),
2064 self);
2065 refresh_updates (self);
2066 }
2067 }
2068
2069 gtk_builder_add_from_file (self->priv->builder,
2070 GNOMECC_UI_DIR "/info.ui",
2071 &error);
2072
2073 if (error != NULL)
2074 {1937 {
2075 g_warning ("Could not load interface file: %s", error->message);1938 g_warning ("Could not load interface file: %s", error->message);
2076 g_error_free (error);1939 g_error_free (error);
@@ -2082,11 +1945,11 @@
2082 widget = WID ("updates_button");1945 widget = WID ("updates_button");
2083 g_signal_connect (widget, "clicked", G_CALLBACK (on_updates_button_clicked), self);1946 g_signal_connect (widget, "clicked", G_CALLBACK (on_updates_button_clicked), self);
20841947
1948 info_panel_setup_updates (self);
2085 info_panel_setup_selector (self);1949 info_panel_setup_selector (self);
2086 info_panel_setup_overview (self);1950 info_panel_setup_overview (self);
2087 info_panel_setup_default_apps (self);1951 info_panel_setup_default_apps (self);
2088 info_panel_setup_media (self);1952 info_panel_setup_media (self);
2089 info_panel_setup_graphics (self);
2090 if (!g_strcmp0 (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity"))1953 if (!g_strcmp0 (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity"))
2091 info_panel_setup_notice (self);1954 info_panel_setup_notice (self);
2092}1955}
20931956
=== modified file 'panels/info/info.ui'
--- panels/info/info.ui 2013-11-28 04:38:55 +0000
+++ panels/info/info.ui 2014-02-20 17:20:19 +0000
@@ -1,6 +1,6 @@
1<?xml version="1.0" encoding="UTF-8"?>1<?xml version="1.0" encoding="UTF-8"?>
2<interface>2<interface>
3 <requires lib="gtk+" version="2.16"/>3 <!-- interface-requires gtk+ 3.0 -->
4 <object class="GtkDialog" id="extra_options_dialog">4 <object class="GtkDialog" id="extra_options_dialog">
5 <property name="can_focus">False</property>5 <property name="can_focus">False</property>
6 <property name="border_width">10</property>6 <property name="border_width">10</property>
@@ -409,7 +409,7 @@
409 <property name="visible">True</property>409 <property name="visible">True</property>
410 <property name="can_focus">False</property>410 <property name="can_focus">False</property>
411 <property name="xalign">0</property>411 <property name="xalign">0</property>
412 <property name="label" translatable="yes">Calculating...</property>412 <property name="label" translatable="yes">Calculating…</property>
413 <property name="selectable">True</property>413 <property name="selectable">True</property>
414 </object>414 </object>
415 <packing>415 <packing>
@@ -593,13 +593,9 @@
593 <property name="spacing">10</property>593 <property name="spacing">10</property>
594 <property name="orientation">vertical</property>594 <property name="orientation">vertical</property>
595 <child>595 <child>
596 <object class="GtkTable" id="default_apps_table">596 <object class="GtkGrid" id="default_apps_grid">
597 <property name="visible">True</property>597 <property name="visible">True</property>
598 <property name="can_focus">False</property>598 <property name="can_focus">False</property>
599 <property name="halign">start</property>
600 <property name="valign">start</property>
601 <property name="n_rows">6</property>
602 <property name="n_columns">3</property>
603 <property name="column_spacing">12</property>599 <property name="column_spacing">12</property>
604 <property name="row_spacing">12</property>600 <property name="row_spacing">12</property>
605 <child>601 <child>
@@ -627,7 +623,7 @@
627 </object>623 </object>
628 <packing>624 <packing>
629 <property name="top_attach">1</property>625 <property name="top_attach">1</property>
630 <property name="bottom_attach">2</property>626 <property name="left_attach">0</property>
631 </packing>627 </packing>
632 </child>628 </child>
633 <child>629 <child>
@@ -643,7 +639,7 @@
643 </object>639 </object>
644 <packing>640 <packing>
645 <property name="top_attach">2</property>641 <property name="top_attach">2</property>
646 <property name="bottom_attach">3</property>642 <property name="left_attach">0</property>
647 </packing>643 </packing>
648 </child>644 </child>
649 <child>645 <child>
@@ -659,7 +655,7 @@
659 </object>655 </object>
660 <packing>656 <packing>
661 <property name="top_attach">3</property>657 <property name="top_attach">3</property>
662 <property name="bottom_attach">4</property>658 <property name="left_attach">0</property>
663 </packing>659 </packing>
664 </child>660 </child>
665 <child>661 <child>
@@ -675,7 +671,7 @@
675 </object>671 </object>
676 <packing>672 <packing>
677 <property name="top_attach">4</property>673 <property name="top_attach">4</property>
678 <property name="bottom_attach">5</property>674 <property name="left_attach">0</property>
679 </packing>675 </packing>
680 </child>676 </child>
681 <child>677 <child>
@@ -686,8 +682,7 @@
686 </object>682 </object>
687 <packing>683 <packing>
688 <property name="left_attach">2</property>684 <property name="left_attach">2</property>
689 <property name="right_attach">3</property>685 <property name="top_attach">0</property>
690 <property name="x_options">GTK_FILL</property>
691 </packing>686 </packing>
692 </child>687 </child>
693 <child>688 <child>
@@ -698,10 +693,7 @@
698 </object>693 </object>
699 <packing>694 <packing>
700 <property name="left_attach">2</property>695 <property name="left_attach">2</property>
701 <property name="right_attach">3</property>
702 <property name="top_attach">1</property>696 <property name="top_attach">1</property>
703 <property name="bottom_attach">2</property>
704 <property name="x_options">GTK_FILL</property>
705 </packing>697 </packing>
706 </child>698 </child>
707 <child>699 <child>
@@ -712,10 +704,7 @@
712 </object>704 </object>
713 <packing>705 <packing>
714 <property name="left_attach">2</property>706 <property name="left_attach">2</property>
715 <property name="right_attach">3</property>
716 <property name="top_attach">2</property>707 <property name="top_attach">2</property>
717 <property name="bottom_attach">3</property>
718 <property name="x_options">GTK_FILL</property>
719 </packing>708 </packing>
720 </child>709 </child>
721 <child>710 <child>
@@ -726,10 +715,7 @@
726 </object>715 </object>
727 <packing>716 <packing>
728 <property name="left_attach">2</property>717 <property name="left_attach">2</property>
729 <property name="right_attach">3</property>
730 <property name="top_attach">3</property>718 <property name="top_attach">3</property>
731 <property name="bottom_attach">4</property>
732 <property name="x_options">GTK_FILL</property>
733 </packing>719 </packing>
734 </child>720 </child>
735 <child>721 <child>
@@ -740,10 +726,7 @@
740 </object>726 </object>
741 <packing>727 <packing>
742 <property name="left_attach">2</property>728 <property name="left_attach">2</property>
743 <property name="right_attach">3</property>
744 <property name="top_attach">4</property>729 <property name="top_attach">4</property>
745 <property name="bottom_attach">5</property>
746 <property name="x_options">GTK_FILL</property>
747 </packing>730 </packing>
748 </child>731 </child>
749 <child>732 <child>
@@ -759,7 +742,7 @@
759 </object>742 </object>
760 <packing>743 <packing>
761 <property name="top_attach">5</property>744 <property name="top_attach">5</property>
762 <property name="bottom_attach">6</property>745 <property name="left_attach">0</property>
763 </packing>746 </packing>
764 </child>747 </child>
765 <child>748 <child>
@@ -770,10 +753,7 @@
770 </object>753 </object>
771 <packing>754 <packing>
772 <property name="left_attach">2</property>755 <property name="left_attach">2</property>
773 <property name="right_attach">3</property>
774 <property name="top_attach">5</property>756 <property name="top_attach">5</property>
775 <property name="bottom_attach">6</property>
776 <property name="x_options">GTK_FILL</property>
777 </packing>757 </packing>
778 </child>758 </child>
779 <child>759 <child>
@@ -1061,7 +1041,7 @@
1061 <property name="orientation">horizontal</property>1041 <property name="orientation">horizontal</property>
1062 <child>1042 <child>
1063 <object class="GtkButton" id="extra_options_button">1043 <object class="GtkButton" id="extra_options_button">
1064 <property name="label" translatable="yes">_Other Media...</property>1044 <property name="label" translatable="yes">_Other Media…</property>
1065 <property name="visible">True</property>1045 <property name="visible">True</property>
1066 <property name="can_focus">True</property>1046 <property name="can_focus">True</property>
1067 <property name="receives_default">True</property>1047 <property name="receives_default">True</property>
@@ -1150,169 +1130,10 @@
1150 </packing>1130 </packing>
1151 </child>1131 </child>
1152 <child>1132 <child>
1153 <object class="GtkAlignment" id="graphics_detail_container">1133 <placeholder/>
1154 <property name="visible">True</property>
1155 <property name="can_focus">False</property>
1156 <property name="top_padding">20</property>
1157 <child>
1158 <object class="GtkTable" id="table2">
1159 <property name="visible">True</property>
1160 <property name="can_focus">False</property>
1161 <property name="n_rows">4</property>
1162 <property name="n_columns">2</property>
1163 <property name="column_spacing">12</property>
1164 <property name="row_spacing">10</property>
1165 <child>
1166 <object class="GtkLabel" id="label17">
1167 <property name="visible">True</property>
1168 <property name="can_focus">False</property>
1169 <property name="xalign">1</property>
1170 <property name="label" translatable="yes">Driver</property>
1171 <style>
1172 <class name="dim-label"/>
1173 </style>
1174 </object>
1175 <packing>
1176 <property name="x_options">GTK_FILL</property>
1177 <property name="y_options">GTK_FILL</property>
1178 </packing>
1179 </child>
1180 <child>
1181 <object class="GtkLabel" id="label19">
1182 <property name="visible">True</property>
1183 <property name="can_focus">False</property>
1184 <property name="xalign">1</property>
1185 <property name="label" translatable="yes">Experience</property>
1186 <style>
1187 <class name="dim-label"/>
1188 </style>
1189 </object>
1190 <packing>
1191 <property name="top_attach">1</property>
1192 <property name="bottom_attach">2</property>
1193 <property name="x_options">GTK_FILL</property>
1194 <property name="y_options">GTK_FILL</property>
1195 </packing>
1196 </child>
1197 <child>
1198 <object class="GtkLabel" id="fallback-label">
1199 <property name="visible">False</property>
1200 <property name="can_focus">False</property>
1201 <property name="xalign">1</property>
1202 <property name="label" translatable="yes" comments="Hardware is not able to run GNOME 3's shell, so we might want to force running the 'Fallback' experience.">Forced _Fallback Mode</property>
1203 <property name="use_underline">True</property>
1204 <property name="justify">right</property>
1205 <style>
1206 <class name="dim-label"/>
1207 </style>
1208 </object>
1209 <packing>
1210 <property name="top_attach">2</property>
1211 <property name="bottom_attach">3</property>
1212 <property name="x_options">GTK_FILL</property>
1213 <property name="y_options">GTK_FILL</property>
1214 </packing>
1215 </child>
1216 <child>
1217 <object class="GtkLabel" id="graphics_driver_label">
1218 <property name="visible">True</property>
1219 <property name="can_focus">False</property>
1220 <property name="xalign">0</property>
1221 <property name="label">Unknown</property>
1222 <property name="selectable">True</property>
1223 </object>
1224 <packing>
1225 <property name="left_attach">1</property>
1226 <property name="right_attach">2</property>
1227 <property name="y_options">GTK_FILL</property>
1228 </packing>
1229 </child>
1230 <child>
1231 <object class="GtkLabel" id="graphics_experience_label">
1232 <property name="visible">True</property>
1233 <property name="can_focus">False</property>
1234 <property name="xalign">0</property>
1235 <property name="label">Unknown</property>
1236 <property name="selectable">True</property>
1237 </object>
1238 <packing>
1239 <property name="left_attach">1</property>
1240 <property name="right_attach">2</property>
1241 <property name="top_attach">1</property>
1242 <property name="bottom_attach">2</property>
1243 <property name="y_options">GTK_FILL</property>
1244 </packing>
1245 </child>
1246 <child>
1247 <object class="GtkBox" id="graphics_fallback_switch_box">
1248 <property name="visible">False</property>
1249 <property name="can_focus">False</property>
1250 <property name="halign">start</property>
1251 <property name="valign">center</property>
1252 <property name="orientation">horizontal</property>
1253 <child>
1254 <placeholder/>
1255 </child>
1256 </object>
1257 <packing>
1258 <property name="left_attach">1</property>
1259 <property name="right_attach">2</property>
1260 <property name="top_attach">2</property>
1261 <property name="bottom_attach">3</property>
1262 <property name="y_options">GTK_FILL</property>
1263 </packing>
1264 </child>
1265 <child>
1266 <object class="GtkLabel" id="graphics_logout_warning_label">
1267 <property name="can_focus">False</property>
1268 <property name="no_show_all">True</property>
1269 <property name="xalign">0</property>
1270 <property name="yalign">0</property>
1271 <property name="label">The next login will use the fallback mode intended for unsupported graphics hardware.</property>
1272 <property name="wrap">True</property>
1273 <property name="selectable">True</property>
1274 <attributes>
1275 <attribute name="weight" value="bold"/>
1276 </attributes>
1277 </object>
1278 <packing>
1279 <property name="left_attach">1</property>
1280 <property name="right_attach">2</property>
1281 <property name="top_attach">3</property>
1282 <property name="bottom_attach">4</property>
1283 </packing>
1284 </child>
1285 <child>
1286 <object class="GtkLabel" id="label34">
1287 <property name="visible">True</property>
1288 <property name="can_focus">False</property>
1289 <property name="xalign">1</property>
1290 <property name="justify">right</property>
1291 </object>
1292 <packing>
1293 <property name="top_attach">3</property>
1294 <property name="bottom_attach">4</property>
1295 <property name="x_options">GTK_FILL</property>
1296 </packing>
1297 </child>
1298 </object>
1299 </child>
1300 </object>
1301 <packing>
1302 <property name="position">3</property>
1303 </packing>
1304 </child>1134 </child>
1305 <child type="tab">1135 <child type="tab">
1306 <object class="GtkLabel" id="label2">1136 <placeholder/>
1307 <property name="visible">True</property>
1308 <property name="can_focus">False</property>
1309 <property name="label" translatable="yes">Graphics</property>
1310 <property name="mnemonic_widget">graphics_label</property>
1311 </object>
1312 <packing>
1313 <property name="position">3</property>
1314 <property name="tab_fill">False</property>
1315 </packing>
1316 </child>1137 </child>
1317 </object>1138 </object>
1318 <packing>1139 <packing>
13191140
=== modified file 'panels/info/unity-info-panel.desktop.in.in'
--- panels/info/unity-info-panel.desktop.in.in 2013-12-02 04:30:50 +0000
+++ panels/info/unity-info-panel.desktop.in.in 2014-02-20 17:20:19 +0000
@@ -12,4 +12,4 @@
12# Translators: those are keywords for the System Information panel12# Translators: those are keywords for the System Information panel
13# "Preferred Applications" is the old name for the preference, so make13# "Preferred Applications" is the old name for the preference, so make
14# sure that you use the same "translation" for those keywords14# sure that you use the same "translation" for those keywords
15_Keywords=device;system;information;memory;processor;version;default;application;fallback;preferred;cd;dvd;usb;audio;video;disc;removable;media;autorun;15_Keywords=device;system;information;memory;processor;version;default;application;preferred;cd;dvd;usb;audio;video;disc;removable;media;autorun;

Subscribers

People subscribed via source and target branches