gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
gtk_window_set_modal(GTK_WINDOW(window), TRUE);
/* Create Enable button */
- enable_button = create_enable_button(check_applet_state());
+ enable_button = create_enable_button(check_applet_state(0));
gtk_box_pack_start(GTK_BOX(GTK_DIALOG(window)->vbox),
enable_button, TRUE, TRUE, 5);
/* Create Theme button */
save_config(priv);
/* action with applet */
if (hildon_check_button_get_active (HILDON_CHECK_BUTTON(enable_button))){
- if (!check_applet_state())
- start_applet();
+ if (!check_applet_state(0))
+ start_applet(0);
else
send_dbus_signal (priv,
LIVEWP_SIGNAL_INTERFACE,
LIVEWP_SIGNAL_PATH,
LIVEWP_RELOAD_CONFIG);
}else
- if (check_applet_state())
+ if (check_applet_state(0))
stop_applet();
break;
}
/*******************************************************************************/
gboolean
-check_applet_state(void){
+check_applet_state(gint number){
+
+ HDConfigFile *config_file = NULL;
+ GKeyFile *gkey_file = NULL;
+ gchar *str = NULL;
+ gboolean result = FALSE;
+
+ if (number > 3 || number < 0)
+ return;
+
+ str = g_strdup_printf("livewp-home-widget.desktop-%i",number);
+ config_file = hd_config_file_new(NULL, "/home/user/.config/hildon-desktop/", "home.plugins");
+
+ gkey_file = hd_config_file_load_file(config_file, FALSE);
+ if (gkey_file && str){
+ result = g_key_file_has_group(gkey_file, str);
+ g_free(str);
+ }
+ return result;
+#if 0
FILE *file_in = NULL;
gchar buffer[2048];
- gboolean result = FALSE;
file_in = fopen("/home/user/.config/hildon-desktop/home.plugins","r");
if (file_in){
}
fclose(file_in);
}
- return result;
+#endif
}
/*******************************************************************************/
void
-start_applet(void){
+start_applet(gint number){
HDConfigFile *config_file = NULL;
GKeyFile *gkey_file = NULL;
+ gchar *str = NULL;
+ if (number > 3 || number < 0)
+ return;
+ str = g_strdup_printf("livewp-home-widget.desktop-%i",number);
config_file = hd_config_file_new(NULL, "/home/user/.config/hildon-desktop/", "home.plugins");
gkey_file = hd_config_file_load_file(config_file, FALSE);
if (gkey_file){
- g_key_file_set_string (gkey_file, "livewp-home-widget.desktop-0", "X-Desktop-File", "/usr/share/applications/hildon-home/livewp-home-widget.desktop");
+ g_key_file_set_string (gkey_file, str, "X-Desktop-File", "/usr/share/applications/hildon-home/livewp-home-widget.desktop");
hd_config_file_save_file( config_file, gkey_file);
g_key_file_free(gkey_file);
}else
fprintf(stderr, "Problem with config file");
+ if (str)
+ g_free(str);
g_object_unref(config_file);
}
/*******************************************************************************/
#include <unistd.h>
void lw_main_settings(Animation_WallpaperPrivate *priv, gpointer data);
void save_config(Animation_WallpaperPrivate *priv);
-gboolean check_applet_state(void);
+gboolean check_applet_state(gint number);
void reload_scene(AWallpaperPlugin *desktop_plugin);
GtkWidget* create_settings(void);
void show_settings(GtkWidget *widget, Animation_WallpaperPrivate *priv);
-void start_applet(void);
+void start_applet(gint number);
void stop_applet(void);
void send_dbus_signal (Animation_WallpaperPrivate *priv, const gchar *interface,
const gchar *path, const gchar *member);