[gnome-packagekit] Show a button to check for updates in the update control center panel



commit f365fa6decc19e9d9f36dae1bb09287919cf2f82
Author: Richard Hughes <richard hughsie com>
Date:   Fri Oct 1 10:28:03 2010 +0100

    Show a button to check for updates in the update control center panel

 data/gpk-prefs.ui     |   16 ++++++++++++++++
 src/cc-update-panel.c |   22 ++++++++++++++++++++++
 2 files changed, 38 insertions(+), 0 deletions(-)
---
diff --git a/data/gpk-prefs.ui b/data/gpk-prefs.ui
index 40c3124..4de2733 100644
--- a/data/gpk-prefs.ui
+++ b/data/gpk-prefs.ui
@@ -391,6 +391,21 @@
                 <property name="secondary">True</property>
               </packing>
             </child>
+            <child>
+              <object class="GtkButton" id="button_check_now">
+                <property name="label" translatable="yes">_Check Now</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_action_appearance">False</property>
+                <property name="use_underline">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
           </object>
           <packing>
             <property name="expand">False</property>
@@ -403,6 +418,7 @@
     </child>
     <action-widgets>
       <action-widget response="0">button_help</action-widget>
+      <action-widget response="0">button_check_now</action-widget>
     </action-widgets>
   </object>
 </interface>
diff --git a/src/cc-update-panel.c b/src/cc-update-panel.c
index f6a7cd2..c69de35 100644
--- a/src/cc-update-panel.c
+++ b/src/cc-update-panel.c
@@ -95,6 +95,25 @@ cc_update_panel_help_cb (GtkWidget *widget, CcUpdatePanel *panel)
 }
 
 /**
+ * cc_update_panel_check_now_cb:
+ **/
+static void
+cc_update_panel_check_now_cb (GtkWidget *widget, CcUpdatePanel *panel)
+{
+	gboolean ret;
+	GError *error = NULL;
+	gchar *command;
+
+	command = g_build_filename (BINDIR, "gpk-update-viewer", NULL);
+	ret = g_spawn_command_line_async (command, &error);
+	if (!ret) {
+		egg_warning ("Couldn't execute %s: %s", command, error->message);
+		g_error_free (error);
+	}
+	g_free (command);
+}
+
+/**
  * cc_update_panel_update_freq_combo_changed:
  **/
 static void
@@ -892,6 +911,9 @@ cc_update_panel_init (CcUpdatePanel *panel)
 	widget = GTK_WIDGET (gtk_builder_get_object (panel->priv->builder, "button_help"));
 	g_signal_connect (widget, "clicked",
 			  G_CALLBACK (cc_update_panel_help_cb), panel);
+	widget = GTK_WIDGET (gtk_builder_get_object (panel->priv->builder, "button_check_now"));
+	g_signal_connect (widget, "clicked",
+			  G_CALLBACK (cc_update_panel_check_now_cb), panel);
 
 	/* update the combo boxes */
 	cc_update_panel_update_freq_combo_setup (panel);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]