We have 4 monitors arranged 2 x 2. Are there any ways to enable the new release of AIR to expand across all monitors in one window?
Alternatively is there any software that can trick it the display driver to show only one large monitor?
We have 4 monitors arranged 2 x 2. Are there any ways to enable the new release of AIR to expand across all monitors in one window?
Alternatively is there any software that can trick it the display driver to show only one large monitor?
Check the documentation for flash.display.Screen.
Once you figure out how big it should be, you should be able to set its position and size using the bounds
property off the flash.display.NativeWindow class.
Update:
So here at work I have two monitors, so I threw together a quick test AIR app:
package
{
import flash.display.NativeWindow;
import flash.display.Screen;
import flash.display.Sprite;
import flash.geom.Rectangle;
public class MultimonitorTest extends Sprite
{
public function MultimonitorTest()
{
var screens:Array = Screen.screens;
var rect:Rectangle = new Rectangle();
for(var i:uint;i<screens.length;i++) {
trace(Screen(screens[i]).bounds);
rect = rect.union(screens[i].bounds);
}
trace(rect);
this.stage.nativeWindow.bounds = rect;
}
}
}
You can see it loops through the available screens. It also creates a new rectangle that is a union of the composite screens. Then sets nativeWindow.bounds
to that union.
The output of the app is this:
(x=0, y=0, w=1440, h=900)
(x=1440, y=0, w=1920, h=1080)
(x=0, y=0, w=3360, h=1080)
One thing to consider is this doesn't take into account the taskbar or anything else, and if your screens are different sizes, like mine are, the resulting rectangle will be larger than your actual screens. But this should at least give you a place to start.
So, to answer your question: Yes. :)
There is also a much simpler way to accomplish this - just set the stage to the size required, and in application.xml set <systemChrome>none</systemChrome>