[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gnash-dev] gui wants redraw
From: |
strk |
Subject: |
Re: [Gnash-dev] gui wants redraw |
Date: |
Sun, 5 Nov 2006 22:28:31 +0100 |
On Sun, Nov 05, 2006 at 06:41:17PM +0100, Udo Giacomozzi wrote:
> Hello Martin,
>
> Sunday, November 5, 2006, 12:23:17 PM, you wrote:
> MG> Yes. That way, when the user can pause the film, the window won't stop
> MG> updating itself.
>
> Again, the inter-frame timer is individually implemented in the GUI
> itself meaning that they have to trigger redraw. I'd simply add a
> argument "redraw" to Gui::display(). Basically the same as
> want_redraw() but in a more direct way.
We already have "display" for that, we just need to ask for
the invalidated_bounds to the Gui itself rather then to the movie_interface.
>From Gui::display:
// Find out the surrounding frame of all characters which
// have been updated.
m->get_invalidated_bounds(&changed_bounds, false);
If we ask the Gui for the regionRequiringUpdate instead , it might
call get_invalidated_bounds (which could become a Gui non-virtual
method to hide the movie_interface stuff) and include any other
region that needs update due to expose event.
In case of a minimized window, the Gui implementation might completely
skip the get_invalidated_bounds() call and return a NULL rectangle..
Doesn't really sound a s huge restructureing (not to be done in 0.7.2
anyway)
--strk;
> MG> There is a related problem: that gnash keeps rendering its display
> MG> window even when minimised or hidden ("burning a hole in the screen"),
> MG> and one way to solve that would be for the rendering to be triggered
> MG> by resize/expose events from the gui and 'invalidate area' events from
> MG> the flash player (every time something moves in an exposed area). -
> MG> this should bring a performance boost, as well as opening the door to
> MG> automatically dropping frames on slow hardware without affecting the
> MG> playing speed of the flash movie.
>
> MG> But that seems rather a large restructuring for the moment.
>
> No, it's rather simple. The invalidated bounds can be altered by the
> individual GUI. It can extend or shrink the bounds as it likes. When
> the GUI knows about what parts of the window are exposed it can limit
> the invalidated bounds to this area. This is already possible.
>
> In the case of a minimized player you can limit the invalidated bounds
> to just one pixel or you avoid calling gui->display() which means you
> have to advance_movie() manually.
>
>
> Udo
>
>
>
> _______________________________________________
> Gnash-dev mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/gnash-dev
--
/"\ ASCII Ribbon Campaign
\ / Respect for low technology.
X Keep e-mail messages readable by any computer system.
/ \ Keep it ASCII.
- [Gnash-dev] gui wants redraw, strk, 2006/11/03
- [Gnash-dev] Re: gui wants redraw, Udo Giacomozzi, 2006/11/03
- Re: [Gnash-dev] gui wants redraw, Martin Guy, 2006/11/05
- Re[2]: [Gnash-dev] gui wants redraw, Udo Giacomozzi, 2006/11/05
- Re: [Gnash-dev] gui wants redraw,
strk <=
- Re[2]: [Gnash-dev] gui wants redraw, Udo Giacomozzi, 2006/11/05
- Re: [Gnash-dev] gui wants redraw, strk, 2006/11/06
- Re[2]: [Gnash-dev] gui wants redraw, Udo Giacomozzi, 2006/11/06
- Re: [Gnash-dev] gui wants redraw, strk, 2006/11/06
- Re[2]: [Gnash-dev] gui wants redraw, Udo Giacomozzi, 2006/11/06
- Re: [Gnash-dev] gui wants redraw, strk, 2006/11/06
- Re[2]: [Gnash-dev] gui wants redraw, Udo Giacomozzi, 2006/11/06
- Re: [Gnash-dev] gui wants redraw, strk, 2006/11/06
- Re[2]: [Gnash-dev] gui wants redraw, Udo Giacomozzi, 2006/11/06
- Re: [Gnash-dev] gui wants redraw, strk, 2006/11/06