Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Re: brain dump/plan re simplifying viewport/theme support in screens

Re: brain dump/plan re simplifying viewport/theme support in screens

From: Thomas Martitz <thomas.martitz_at_student.htw-berlin.de>
Date: Tue, 24 Nov 2009 03:05:29 +0100

Am 24.11.2009 02:35, schrieb Jonathan Gordon:

> So this is what I'm planning...
>
> Basically, a screen has exactly 2 choices for their display, either
> the "theme" (which means sbs if loaded, and uivp), or fullscreen.
> Screens should always try to fit in the themes ui area, so they should
> all just assume that viewport_configure(struct *viewport) [or
> whatever its called] will give them what they want. Now, if it turns
> out its too small the screen would then call
> viewportmanager_theme_enable(bool) and then call viewport_configure()
> again which will then use the full display. These 2 steps could be
> merged maybe)...
>

Why combining two well-defined functions to an obscure one? It could
just call _set_fullscreen() and know what it gets if it's too small.

> Now, when that screen exits it would simply call
> viewportmanager_theme_undo(void) which would put it back to however it
> was (it would work with a stack so screens could enable and disable as
> they please without annoying other screens).
>
>

The stack that needs a bogus panicf() if it's exceeded? What's wrong
with the caller saving the state?

>
> actually... back onto viewport_configure() thing.. it could be done
> even simpler... viewport_configure(struct *viewport, int min_width,
> int min_height) would fix up the viewport so it guarentees to fit (it
> min is smaller than lcd of course), and then we can use
> viewport_undo(*viewport) again to undo anything if it was changed by
> storing the pointer :) as long as the viweport isnt static that should
> work.
>

I don't think that will work in practice. Passing a min_width/height is
quite demanding for screens that are of the sort "just gimme the damn
defaults, I'll cope with it", which doesn't even know how much it needs
at minimum.

>
> Jonathan
>

The rest sounds ok.

Best regards
Received on 2009-11-24


Page was last modified "Jan 10 2012" The Rockbox Crew
aaa