glade3 r1714 - in trunk: . gladeui src
- From: tvb svn gnome org
- To: svn-commits-list gnome org
- Subject: glade3 r1714 - in trunk: . gladeui src
- Date: Sun, 9 Mar 2008 23:43:11 +0000 (GMT)
Author: tvb
Date: Sun Mar 9 23:43:10 2008
New Revision: 1714
URL: http://svn.gnome.org/viewvc/glade3?rev=1714&view=rev
Log:
* gladeui/glade-app.c: When adding a first project, display the
first toplevel in the design layout.
* gladeui/glade-widget.c: Handle glade_widget_show() with unrealized
design-view, connect-after the design-view's realize and retry.
Modified:
trunk/ChangeLog
trunk/gladeui/glade-app.c
trunk/gladeui/glade-widget.c
trunk/src/glade-window.c
Modified: trunk/gladeui/glade-app.c
==============================================================================
--- trunk/gladeui/glade-app.c (original)
+++ trunk/gladeui/glade-app.c Sun Mar 9 23:43:10 2008
@@ -944,6 +944,21 @@
glade_app_set_project (project);
+ /* Select the first window in the project */
+ if (g_list_length (app->priv->projects) == 1)
+ {
+ GList *node;
+ for (node = glade_project_get_objects (project);
+ node != NULL;
+ node = g_list_next (node))
+ {
+ GObject *obj = G_OBJECT (node->data);
+ if (GTK_IS_WINDOW (obj))
+ glade_widget_show (glade_widget_get_from_gobject (obj));
+ break;
+ }
+ }
+
/* XXX I think the palette & editor should detect this by itself */
gtk_widget_set_sensitive (GTK_WIDGET (app->priv->palette), TRUE);
gtk_widget_set_sensitive (GTK_WIDGET (app->priv->editor), TRUE);
Modified: trunk/gladeui/glade-widget.c
==============================================================================
--- trunk/gladeui/glade-widget.c (original)
+++ trunk/gladeui/glade-widget.c Sun Mar 9 23:43:10 2008
@@ -2168,6 +2168,19 @@
{
view = glade_design_view_get_from_project (glade_widget_get_project (widget));
layout = GTK_WIDGET (glade_design_view_get_layout (view));
+
+ /* This case causes a black window */
+ if (layout && !GTK_WIDGET_REALIZED (layout))
+ {
+ /* give her a little kick */
+ g_signal_connect_data (G_OBJECT (layout), "realize",
+ G_CALLBACK (glade_widget_show), widget,
+ NULL,
+ G_CONNECT_AFTER|G_CONNECT_SWAPPED);
+ return;
+ }
+ else if (!layout)
+ return;
if (gtk_bin_get_child (GTK_BIN (layout)) != NULL)
gtk_container_remove (GTK_CONTAINER (layout), gtk_bin_get_child (GTK_BIN (layout)));
Modified: trunk/src/glade-window.c
==============================================================================
--- trunk/src/glade-window.c (original)
+++ trunk/src/glade-window.c Sun Mar 9 23:43:10 2008
@@ -2548,12 +2548,12 @@
view = glade_design_view_new (project);
gtk_widget_show (view);
-
+
glade_app_add_project (project);
gtk_notebook_append_page (GTK_NOTEBOOK (window->priv->notebook), GTK_WIDGET (view), NULL);
gtk_notebook_set_current_page (GTK_NOTEBOOK (window->priv->notebook), -1);
-
+
}
void
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]