> Hi, > > When highlighting text GSSimpleLayoutManager calls NSHighlightRect() for > each line of selected text. Since each NSHighlightRect() call flushes > the graphics this is quite slow and flickers a lot. I've attached a > patch that changes GSSimpleLayoutManager to use PScompositerect instead. > I'm not sure that NSHighlightRect() should really flush, but other > callers seem to depend on it.
I changed NSHighlightRect() not to flush the window. Many callers (also in NSSplitView and in NSTableView) need to perform multiple highlight rects and have the flushwindow performed only after the last one ... in some cases the manual flush window would be wasteful even after the last one since it would already done automatically later. If in all these cases we start highlighting manually using PS composite operators (as was already happening in NSSplitView!) to avoid the flushWindow, then why having the NSHighlightRect() function at all. :-) So I changed it not to flush, and updated callers to flush manually when appropriate (having the flush done manually in the callers also allow more control on when the flush is done, and maybe better optimizations in some cases by having the minimal number of flushes as needed). Thanks for pointing the thing out! We definitely need to remove some useless redrawing and flickering. _______________________________________________ Bug-gnustep mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-gnustep
