SF.net SVN: geany: [1278] trunk

ntrel at users.sourceforge.net ntrel at xxxxx
Wed Feb 14 12:42:29 UTC 2007


Revision: 1278
          http://svn.sourceforge.net/geany/?rev=1278&view=rev
Author:   ntrel
Date:     2007-02-14 04:42:28 -0800 (Wed, 14 Feb 2007)

Log Message:
-----------
Redraw instead of scrolling in ScintillaGTK::ScrollText if there is
an existing update region.
Revert earlier ScintillaGTK::ExposeTextThis change.

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/scintilla/ScintillaGTK.cxx

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2007-02-14 12:37:58 UTC (rev 1277)
+++ trunk/ChangeLog	2007-02-14 12:42:28 UTC (rev 1278)
@@ -2,6 +2,10 @@
 
  * geany.desktop.in:
    Add MimeType text/x-diff.
+ * scintilla/ScintillaGTK.cxx:
+   Redraw instead of scrolling in ScintillaGTK::ScrollText if there is
+   an existing update region.
+   Revert earlier ScintillaGTK::ExposeTextThis change.
 
 
 2007-02-13  Nick Treleaven  <nick.treleaven at btinternet.com>

Modified: trunk/scintilla/ScintillaGTK.cxx
===================================================================
--- trunk/scintilla/ScintillaGTK.cxx	2007-02-14 12:37:58 UTC (rev 1277)
+++ trunk/scintilla/ScintillaGTK.cxx	2007-02-14 12:42:28 UTC (rev 1278)
@@ -1118,6 +1118,11 @@
 
 	gdk_gc_unref(gc);
 #else
+	// check if e.g. an existing scroll event has occurred
+	if (rgnUpdate != NULL) {
+		Redraw();
+		return;
+	}
 	gdk_window_scroll(wi->window, 0, -diff);
 	gdk_window_process_updates(wi->window, FALSE);
 #endif
@@ -2198,13 +2203,7 @@
 	rcPaint.right = ose->area.x + ose->area.width;
 	rcPaint.bottom = ose->area.y + ose->area.height;
 
-	/* We can receive an expose-event during an expose-event.
-	 * This can happen when two different scroll messages are sent at different times. */
-	if (rgnUpdate != NULL)
-	{
-		gdk_region_destroy(rgnUpdate);
-		rgnUpdate = NULL;
-	}
+	PLATFORM_ASSERT(rgnUpdate == NULL);
 #if GTK_MAJOR_VERSION >= 2
 	rgnUpdate = gdk_region_copy(ose->region);
 #endif


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