View Issue Details

IDProjectCategoryView StatusLast Update
0021768LazarusLCLpublic2012-04-24 14:45
ReporterDavid Jenkins Assigned ToZeljan Rikalo  
PrioritynormalSeveritytweakReproducibilityN/A
Status closedResolutionfixed 
Product Version0.9.30.5 (SVN) 
Summary0021768: Optimize use of TCarbonCaret by not redrawing whole widget with each call to CaretUpdate
DescriptionThe call to FWidget.Update in TEmulatedCaret.UpdateCaret forces redraw of whole widget whenever caret is moved. The call to FWidget.Invalidate() should be sufficient to mark caret as dirty and it will be redrawn with the paint routines call Update.

See attached patch against rev 36681
TagsNo tags attached.
Fixed in Revision36959
LazTarget-
WidgetsetCarbon
Attached Files

Activities

2012-04-13 21:14

 

carboncaret.pas.patch (342 bytes)   
--- /Users/djenkins/laz-changes/13814/carboncaret.pas	2012-04-09 16:02:07.000000000 
+++ /Users/djenkins/laz-changes/13814/carboncaret.pas.ss	2012-04-09 16:03:16.000000000 
@@ -435,7 +435,6 @@
   
   if not EqualRect(FOldRect, R) then FWidget.Invalidate(@FOldRect);
   FWidget.Invalidate(@R);
-  FWidget.Update;
     
   FOldRect := R;
 end;
carboncaret.pas.patch (342 bytes)   

2012-04-19 15:38

 

svn_patch-21768 (398 bytes)   
Index: lcl/interfaces/carbon/carboncaret.pas
===================================================================
--- lcl/interfaces/carbon/carboncaret.pas	(revision 36681)
+++ lcl/interfaces/carbon/carboncaret.pas	(working copy)
@@ -435,7 +435,6 @@
   
   if not EqualRect(FOldRect, R) then FWidget.Invalidate(@FOldRect);
   FWidget.Invalidate(@R);
-  FWidget.Update;
     
   FOldRect := R;
 end;
svn_patch-21768 (398 bytes)   

Zeljan Rikalo

2012-04-21 17:20

developer   ~0058845

Please test and close if ok.

Issue History

Date Modified Username Field Change
2012-04-13 21:14 David Jenkins New Issue
2012-04-13 21:14 David Jenkins File Added: carboncaret.pas.patch
2012-04-13 21:14 David Jenkins Widgetset => Carbon
2012-04-19 15:38 David Jenkins File Added: svn_patch-21768
2012-04-21 17:20 Zeljan Rikalo Fixed in Revision => 36959
2012-04-21 17:20 Zeljan Rikalo LazTarget => -
2012-04-21 17:20 Zeljan Rikalo Status new => resolved
2012-04-21 17:20 Zeljan Rikalo Resolution open => fixed
2012-04-21 17:20 Zeljan Rikalo Assigned To => Zeljan Rikalo
2012-04-21 17:20 Zeljan Rikalo Note Added: 0058845
2012-04-24 14:45 David Jenkins Status resolved => closed