dia r4363 - in trunk: . lib



Author: hans
Date: Sun Apr  5 13:16:41 2009
New Revision: 4363
URL: http://svn.gnome.org/viewvc/dia?rev=4363&view=rev

Log:
2009-04-05  Hans Breuer  <hans breuer org>

	* lib/persistence.c : instead of trying to manage the open state of our
	windows 'by hand' just use GTK_WIDGET_MAPPED(window), fixes bug #574388


Modified:
   trunk/ChangeLog
   trunk/lib/persistence.c

Modified: trunk/lib/persistence.c
==============================================================================
--- trunk/lib/persistence.c	(original)
+++ trunk/lib/persistence.c	Sun Apr  5 13:16:41 2009
@@ -503,7 +503,7 @@
   wininfo = (PersistentWindow *)g_hash_table_lookup(persistent_windows, name);
 
   if (wininfo != NULL) {  
-    persistence_store_window_info(window, wininfo, isclosed || !wininfo->isopen);
+    persistence_store_window_info(window, wininfo, isclosed);
   } else {
     wininfo = g_new0(PersistentWindow, 1);
     persistence_store_window_info(window, wininfo, FALSE);
@@ -517,10 +517,8 @@
     wininfo->window = window;
     g_object_ref(window);
   }
-#ifdef G_OS_WIN32
   /* catch the transistion */
   wininfo->isopen = !isclosed;
-#endif
 }
 
 /** Handler for window-related events that should cause persistent storage
@@ -544,7 +542,7 @@
     dia_log_message ("configure (%s)", persistence_get_window_name(window)); 
     break;
   }
-  persistence_update_window(window, (event->type == GDK_UNMAP));
+  persistence_update_window(window, !(GTK_WIDGET_MAPPED(window)));
   /* continue processing */
   return FALSE;
 }
@@ -557,7 +555,7 @@
 static gboolean
 persistence_hide_show_window(GtkWindow *window, gpointer data)
 {
-  persistence_update_window(window, !GTK_WIDGET_VISIBLE(window));
+  persistence_update_window(window, !GTK_WIDGET_MAPPED(window));
   return FALSE;
 }
 



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