Re: [AD] [ alleg-Bugs-3102940 ] Broken on Vista

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


On 2010-11-05, Michał Cichoń <michcic@xxxxxxxxxx> wrote:
> > 1. Continue to accept -1 as the "default" new display adapter. When a
> >   window is created, the WM chooses where the window will go.
> 
> There is not such functionality implemented under Windows right now.
> Unless I missed something.

It should, as the documentation for al_set_new_display_adapter says:

    To return to the default behaviour, pass -1.

> > 2. Add al_get_main_adapter. When there are multiple monitors, usually
> >   one is designated the main monitor; return its index.
> >   Returns -1 if unknown? ("Primary" seems a better term to me.)
> 
> "Primary" suit better than "main". This function return index of
> primary display, one with task bar, icons etc.

(not necessarily true of course) 

> Under Windows that can
> be any connected monitor, on other OS'es this is usually first one.
> This function always valid index of primary adapter or -1 when there
> are no adapter connected.

Or -1 if there is no designated primary monitor.  The xrandr tool on
X11 has this option:

    --noprimary
	Don't define a primary output.

> > 3. Add al_get_active_adapter, which ideally returns the "default"
> >   monitor where a new window would appear if the user does not
> >   force a specific monitor.  May also return -1?
> 
> Active monitor is one on which you are working on. With multimonitor
> system setup, new application window is created on monitor from which
> you're launching application.

This may be true on Windows?  It's certainly not necessarily so on X11,
e.g. my window manager will usually place a new application window on
the monitor which currently contains the mouse pointer, which is
presumably where my focus is.  Other systems may choose to place the new
window on the monitor which contains the keyboard focus, etc.

> That will happen unless you force OS do
> to place window at very specific point. Current Windows implementation
> always create window centered on the first available monitor by
> default.
> This function return valid index of active adapter or -1 if index
> cannot be determined.

Is there any reason the user shouldn't just call
al_set_new_display_adapter(-1); and let the system choose?

> > I was planning to release Allegro 5.0 RC1 this weekend (7th).
> > It can be delayed to next weekend (14th).
> 
> I think Allegro should be released this weekend. This is big fix which
> include not only window creation but also fullscreen support (yap,
> also broken on multi-monitor system). 5.1 is target for this fix. Two
> days or even week is not enough to test new implementation properly.

Ok.

Peter




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