SF.net SVN: geany:[3646] trunk
eht16 at users.sourceforge.net
eht16 at xxxxx
Tue Mar 24 18:12:39 UTC 2009
Revision: 3646
http://geany.svn.sourceforge.net/geany/?rev=3646&view=rev
Author: eht16
Date: 2009-03-24 18:12:39 +0000 (Tue, 24 Mar 2009)
Log Message:
-----------
Delay disk file checks when switching between documents a little bit to avoid fast, unintentional page switching in some cases.
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/callbacks.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-03-23 02:21:30 UTC (rev 3645)
+++ trunk/ChangeLog 2009-03-24 18:12:39 UTC (rev 3646)
@@ -1,3 +1,10 @@
+2009-03-24 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
+
+ * src/callbacks.c:
+ Delay disk file checks when switching between documents a little
+ bit to avoid fast, unintentional page switching in some cases.
+
+
2009-03-22 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/css.c:
Modified: trunk/src/callbacks.c
===================================================================
--- trunk/src/callbacks.c 2009-03-23 02:21:30 UTC (rev 3645)
+++ trunk/src/callbacks.c 2009-03-24 18:12:39 UTC (rev 3646)
@@ -682,6 +682,13 @@
}
+static gboolean delayed_check_disk_status(gpointer data)
+{
+ document_check_disk_status(data, FALSE);
+ return FALSE;
+}
+
+
/* Changes window-title after switching tabs and lots of other things.
* note: using 'after' makes Scintilla redraw before the UI, appearing more responsive */
void
@@ -709,7 +716,10 @@
build_menu_update(doc);
treeviews_update_tag_list(doc, FALSE);
- document_check_disk_status(doc, FALSE);
+ /* We delay the check to avoid weird fast, unintended switching of notebook pages when
+ * the 'file has changed' dialog is shown while the switch event is not yet completely
+ * finished. So, we check after the switch has been performed to be safe. */
+ g_idle_add(delayed_check_disk_status, doc);
#ifdef HAVE_VTE
vte_cwd((doc->real_path != NULL) ? doc->real_path : doc->file_name, FALSE);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list