Re: [AD] windowing

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


On 30 Mar 2010, at 15:14 , Elias Pschernig wrote:
> Can't the user emulate ALLEGRO_FULLSCREEN_WINDOWED himself with ALLEGRO_NOFRAME
> and al_get_monitor_info thing? That would erase all the above questions. We can
> have an example showing how to do it.
> 
> No. At least in X11 it's a separate X11 flag which has nothing to do with all the various (broken) video-mode-changing extensions.

Which has nothing to do with ALLEGRO_NOFRAME.

> It would be an excellent test program though to try and emulate it with the other API - I bet it will show a lot of problems, like task-bars on windows or menu-bars on OSX (and probably both on X11) :P Which just confirms the answer of no.

Easy to get around on OS X by floating the window to the top so it gets drawn over the dock and the menu bar.
If you could toggle the NOFRAME flag in versions of OS X where you can't switch a window to fullscreen mode (you can't).

> I'd say the ack should not be required for resizes not initiated by the programmer - i.e. in response to al_resize_window. That may be unlike the current behavior in which case I think we need to change it. Resizes by the user (when resizing a resizable window) on the other hand need the flag since we cannot touch the back-buffer while another thread may still be drawing to it.

From memory, that is the current behaviour on OS X: when you resize the window through a function call, Allegro acknowledges the resize automatically at the end.
It makes sense to me. The purpose of al_acknowledge_resize() is so we know that the back-buffer is not resized behind our back (ie, when an external event, such as the user dragging a window corner, resizes the window). The user presumably knows what he's doing when calling al_resize_display().

Evert



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/