[gnome-panel/wip/muktupavels/launcher: 20/20] add gp_initital_setup_dialog_set_settings



commit 9f3113bc5e64f3217f852ca4bd5474fea1b6f181
Author: Alberts Muktupāvels <alberts muktupavels gmail com>
Date:   Mon Apr 13 15:51:40 2020 +0300

    add gp_initital_setup_dialog_set_settings

 gnome-panel/gp-applet-manager.c              | 3 +++
 gnome-panel/panel-addto-dialog.c             | 1 +
 gnome-panel/panel-applets-manager.c          | 2 ++
 gnome-panel/panel-applets-manager.h          | 1 +
 gnome-panel/panel.c                          | 4 ++--
 modules/launcher/gp-custom-launcher-applet.c | 8 ++++++++
 6 files changed, 17 insertions(+), 2 deletions(-)
---
diff --git a/gnome-panel/gp-applet-manager.c b/gnome-panel/gp-applet-manager.c
index 91144f5e9..3ef4037d1 100644
--- a/gnome-panel/gp-applet-manager.c
+++ b/gnome-panel/gp-applet-manager.c
@@ -370,6 +370,7 @@ gp_applet_manager_get_new_iid (GpAppletManager *self,
 gboolean
 gp_applet_manager_open_initial_setup_dialog (GpAppletManager        *self,
                                              const char             *iid,
+                                             GVariant               *settings,
                                              GtkWindow              *parent,
                                              GpInitialSetupCallback  callback,
                                              gpointer                user_data,
@@ -403,6 +404,8 @@ gp_applet_manager_open_initial_setup_dialog (GpAppletManager        *self,
   dialog = gp_initital_setup_dialog_new ();
   gp_initital_setup_dialog_add_callback (dialog, callback, user_data, free_func);
 
+  gp_initital_setup_dialog_set_settings (dialog, settings);
+
   info->initial_setup_dialog_func (dialog);
 
   if (parent)
diff --git a/gnome-panel/panel-addto-dialog.c b/gnome-panel/panel-addto-dialog.c
index 0167a21a6..f5cfed709 100644
--- a/gnome-panel/panel-addto-dialog.c
+++ b/gnome-panel/panel-addto-dialog.c
@@ -433,6 +433,7 @@ panel_addto_add_item (PanelAddtoDialog   *dialog,
                data = initial_setup_data_new (dialog, item_info->iid);
 
                if (!panel_applets_manager_open_initial_setup_dialog (item_info->iid,
+                                                                     NULL,
                                                                      GTK_WINDOW (dialog),
                                                                      initial_setup_dialog_cb,
                                                                      data, initial_setup_data_free)) {
diff --git a/gnome-panel/panel-applets-manager.c b/gnome-panel/panel-applets-manager.c
index 8f2a04ccb..0c89892bc 100644
--- a/gnome-panel/panel-applets-manager.c
+++ b/gnome-panel/panel-applets-manager.c
@@ -97,6 +97,7 @@ panel_applets_manager_get_new_iid (const gchar *old_iid)
 
 gboolean
 panel_applets_manager_open_initial_setup_dialog (const gchar            *iid,
+                                                 GVariant               *settings,
                                                  GtkWindow              *parent,
                                                  GpInitialSetupCallback  callback,
                                                  gpointer                user_data,
@@ -108,6 +109,7 @@ panel_applets_manager_open_initial_setup_dialog (const gchar            *iid,
 
        ret = gp_applet_manager_open_initial_setup_dialog (manager,
                                                           iid,
+                                                          settings,
                                                           parent,
                                                           callback,
                                                           user_data,
diff --git a/gnome-panel/panel-applets-manager.h b/gnome-panel/panel-applets-manager.h
index a5a590f4a..bf6826528 100644
--- a/gnome-panel/panel-applets-manager.h
+++ b/gnome-panel/panel-applets-manager.h
@@ -42,6 +42,7 @@ gboolean         panel_applets_manager_load_applet               (const gchar
 gchar           *panel_applets_manager_get_new_iid               (const gchar                 *old_iid);
 
 gboolean         panel_applets_manager_open_initial_setup_dialog (const gchar                 *iid,
+                                                                  GVariant                    *settings,
                                                                   GtkWindow                   *parent,
                                                                   GpInitialSetupCallback       callback,
                                                                   gpointer                     user_data,
diff --git a/gnome-panel/panel.c b/gnome-panel/panel.c
index 289dcd124..372681320 100644
--- a/gnome-panel/panel.c
+++ b/gnome-panel/panel.c
@@ -528,9 +528,8 @@ ask_about_launcher (const char          *file,
   settings = g_variant_builder_end (&builder);
   g_variant_ref_sink (settings);
 
-  // FIXME: pass initial data to inital dialog :D
-
   panel_applets_manager_open_initial_setup_dialog (iid,
+                                                                    settings,
                                                                     NULL,
                                                                     initial_setup_dialog_cb,
                                                                     initial_setup_data,
@@ -1147,6 +1146,7 @@ panel_receive_dnd_data (PanelWidget         *panel,
                                                                     (char *) data);
 
                        if (!panel_applets_manager_open_initial_setup_dialog ((char *) data,
+                                                                             NULL,
                                                                              NULL,
                                                                              initial_setup_dialog_cb,
                                                                              initial_setup_data,
diff --git a/modules/launcher/gp-custom-launcher-applet.c b/modules/launcher/gp-custom-launcher-applet.c
index 8985bf721..d29724686 100644
--- a/modules/launcher/gp-custom-launcher-applet.c
+++ b/modules/launcher/gp-custom-launcher-applet.c
@@ -208,6 +208,7 @@ gp_custom_launcher_applet_initial_setup_dialog (GpInitialSetupDialog *dialog)
 {
   GtkWidget *editor;
   LauncherData *data;
+  GVariant *variant;
 
   editor = gp_editor_new (FALSE);
 
@@ -220,6 +221,13 @@ gp_custom_launcher_applet_initial_setup_dialog (GpInitialSetupDialog *dialog)
   g_signal_connect (editor, "command-changed", G_CALLBACK (command_changed_cb), data);
   g_signal_connect (editor, "comment-changed", G_CALLBACK (comment_changed_cb), data);
 
+  variant = gp_initital_setup_dialog_get_setting (dialog, "command");
+  if (variant != NULL)
+    {
+      gp_editor_set_command (GP_EDITOR (editor),
+                             g_variant_get_string (variant, NULL));
+    }
+
   icon_changed_cb (data->editor, data);
   type_changed_cb (data->editor, data);
 


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