From: Vlad Date: Thu, 26 Aug 2010 17:20:10 +0000 (+0300) Subject: created function for creating of main window X-Git-Url: https://vcs.maemo.org/git/?a=commitdiff_plain;h=c7bfe0baae241432998f401b7b659910114053b2;p=livewp created function for creating of main window --- diff --git a/applet/src/livewp-main.c b/applet/src/livewp-main.c index 62c174e..8a9879c 100644 --- a/applet/src/livewp-main.c +++ b/applet/src/livewp-main.c @@ -265,10 +265,21 @@ long_timeout (AWallpaperPlugin *desktop_plugin) } /*******************************************************************************/ +void +create_xwindow (Animation_WallpaperPrivate *priv){ + GtkWidget *main_widget = NULL; + /* Create Main GUI */ + main_widget = hildon_window_new (); + priv->window = main_widget; + gtk_window_set_title(GTK_WINDOW(main_widget), PACKAGE); + gtk_window_fullscreen(GTK_WINDOW(main_widget)); + gtk_widget_show_all(GTK_WIDGET(main_widget)); + set_live_bg(GDK_WINDOW_XDISPLAY (main_widget->window), GDK_WINDOW_XID (main_widget->window), priv->view); +} +/*******************************************************************************/ int main(int argc, char *argv[]) { - GtkWidget *main_widget = NULL; HildonProgram *app; int view = 1; @@ -301,18 +312,11 @@ main(int argc, char *argv[]) bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8"); textdomain(GETTEXT_PACKAGE); #endif -/* Create Main GUI */ - main_widget = hildon_window_new (); - gtk_window_set_title(GTK_WINDOW(main_widget), PACKAGE); - gtk_window_fullscreen(GTK_WINDOW(main_widget)); - - gtk_widget_show_all(GTK_WIDGET(main_widget)); priv->scene = NULL; priv->pipeline = NULL; priv->podpid = -1; priv->running = FALSE; - priv->window = main_widget; /* fprintf(stderr,"XWINDOW %i\n",GDK_WINDOW_XID (main_widget->window)); */ priv->desktop_plugin = desktop_plugin; priv->view = view; @@ -326,8 +330,7 @@ main(int argc, char *argv[]) /* Initialize DBUS */ livewp_initialize_dbus(priv); - set_live_bg(GDK_WINDOW_XDISPLAY (main_widget->window), GDK_WINDOW_XID (main_widget->window), view); - + priv->view_notify = 0; /* fprintf(stderr,"VISIBLE %i %i\n",priv->visible, current_active_view()); */ gconf_client_add_dir(gconf_client_get_default (), "/apps/osso/hildon-desktop/views", GCONF_CLIENT_PRELOAD_NONE, NULL); @@ -338,6 +341,8 @@ main(int argc, char *argv[]) if (!strcmp(priv->theme,"Video")) priv->theme_int_parametr1 = 0; + + create_xwindow(priv); init_scene_theme(desktop_plugin); priv->long_timer = g_timeout_add(LONG_TIMER, (GtkFunction)long_timeout, desktop_plugin); diff --git a/applet/src/livewp-scene.c b/applet/src/livewp-scene.c index e0a8f11..dc2dec8 100644 --- a/applet/src/livewp-scene.c +++ b/applet/src/livewp-scene.c @@ -98,9 +98,11 @@ destroy_scene(AWallpaperPlugin *desktop_plugin) void reload_scene(AWallpaperPlugin *desktop_plugin) { - fprintf(stderr,"Reload scene %s\n", desktop_plugin->priv->theme); + fprintf(stderr,"Reload scene %s\n", desktop_plugin->priv->theme); destroy_scene(desktop_plugin); fill_priv(desktop_plugin->priv); + gtk_widget_destroy(desktop_plugin->priv->window); + create_xwindow(desktop_plugin->priv); init_scene_theme(desktop_plugin); } /*******************************************************************************/ @@ -267,6 +269,7 @@ init_scene_External(AWallpaperPlugin *desktop_plugin){ fprintf(stderr,"name %s %i %i\n", window_name, id_xwindow, i); if (id_xwindow>0){ set_live_bg (GDK_WINDOW_XDISPLAY (desktop_plugin->priv->window->window), id_xwindow, desktop_plugin->priv->view); + /* gtk_widget_destroy(desktop_plugin->priv->window); */ break; } }