[Marble-devel] Review Request: Move responsibility for repaint delaying into the layers

Bernhard Beschow bbeschow at cs.tu-berlin.de
Sat Oct 15 19:42:23 UTC 2011


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/102875/
-----------------------------------------------------------

(Updated Oct. 15, 2011, 7:42 p.m.)


Review request for Marble.


Description
-------

== Problem ==
When emitting repaintNeeded() inside a RenderPlugin, MarbleWidget used to delay repainting for every RenderPlugin by 1 second.
However, some RenderPlugins/LayerInterfaces (such as PlacemarkLayout) may require to be updated immediately, so forcing a delay for every plugin/layer may lead to undesired rendering artifacts.

== Solution ==
Moving the responsibility for repaint delaying into the plugins/layers works for inhomogeneous requirements.

== Changes ==
When MarbleWidget receives repaintNeeded() from any plugin/layer, it update()s immediately.
ProgressFloatItem and TextureLayer are currently the only plugins/layers that make use of repaint delaying.


== Question ==
* are there any other layers/plugins that need repaint delaying, such as Wikipedia?


Diffs
-----

  src/lib/MarbleWidget.h b81ba55 
  src/lib/MarbleWidget.cpp c8249ac 
  src/lib/RenderPlugin.h b2b8a2b 
  src/lib/layers/TextureLayer.cpp 8dfd405 
  src/plugins/render/progress/ProgressFloatItem.h a86436c 
  src/plugins/render/progress/ProgressFloatItem.cpp f0cade2 

Diff: http://git.reviewboard.kde.org/r/102875/diff/diff


Testing
-------

Repaints are delayed when updated tiles arrive. This is also the case when the ProgressFloatItem is visible.


Thanks,

Bernhard Beschow

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/marble-devel/attachments/20111015/5440e058/attachment.html>


More information about the Marble-devel mailing list