evas/wayland: Unclip objects from the framespace after rendering.
authorRafael Antognolli <rafael.antognolli@intel.com>
Thu, 18 Apr 2013 19:10:53 +0000 (16:10 -0300)
committerRafael Antognolli <rafael.antognolli@intel.com>
Thu, 18 Apr 2013 19:38:16 +0000 (16:38 -0300)
commite937f1f5a385b44f37d943c34cdc06871483714e
tree94bd7d696c43c622c394988b46b2778a4a812b85
parent986244339b0dd8c429beba257a0566a18f3603fb
evas/wayland: Unclip objects from the framespace after rendering.

These objects should be clipped only during rendering, since keeping
them clipped after that allows for unexpected behavior on the
application side. For instance, an application could check if objects
have clippers before doing something to them, assuming that some objects
should have no clipper, but under wayland, after the first render
iteration, there will be no objects without a clipper.

This commit fixes this behavior by unclipping objects that had no
clipper prior to the render iteration.

Additionally, it fixes a bug where a maximized/fullscreen window could
have not all of its content rendered immediately. This was occuring
because some objects could be clipped to the framespace clipper, but
considered invisible in the beginning of the render phase, where they
are evaluated. They were considered invisible because the framespace
clipper object was not resized at that phase yet, and thus these objects
were being clipped out from the viewport.
src/lib/evas/canvas/evas_main.c
src/lib/evas/canvas/evas_render.c
src/lib/evas/include/evas_private.h