On Tue, Oct 29, 2013 at 8:17 PM, Gustavo Sverzut Barbieri
<barbi...@gmail.com> wrote:
> On Tue, Oct 29, 2013 at 7:26 PM, Rafael Antognolli <antogno...@gmail.com> 
> wrote:
>> Hey everyone,
>>
>> Our current API for setting a window as fullscreen does not support
>> specifying which output/display/monitor should be used as fullscreen.
>> However, wayland does support it.
>>
>> Would it make sense to have such parameter in the fullscreen_set API?
>> Or should it be a wayland-only API?
>
> I'd say a new function fullscreen_at_display_set(Display_ID *did) /*
> NULL = unset */
>
> the current version remains and sets on current display. Alternatively
> we could just move the window to another display before making that
> fullscreen, no idea if this is okay.

Yeah, current version sets on current display (the one where the
non-fullscreen window is already displayed), unless it's the first
time that the window is going to be displayed. Otherwise it will use
the first output. But that's up to the compositor to choose so far,
unless we explicitly specify which output to use.

>> For the latter case, how would we do that? Maybe exposing an API that
>> allows to set the "preferred" output, and then when fullscreen_set is
>> called, it just uses that one?
>
> I'd say we need to make this in one go, unless we want some kind of
> general assignment to one display (not just for FS mode).

OK...

>
>> There's also a need to specify how the output should be referred to.
>> Using an (unsigned) int, where 0 is the first output, 1 is the second,
>> etc? Or maybe allowing to specify something like "always the biggest
>> one in area", or the widest one, or whatever... any thoughts?
>
> We'd need a way to enumerate the displays (or whatever we call them,
> like zone, etc), they should return their properties such as size,
> position (?), capabilities (3d/stereo? color? what do we have here?)
> and some string to make it easy to debug.
>
> we have the handle to it, so it can be windowsystem agnostic
> (Display_ID *, which can be implemented differently for windows, x11,
> wayland...)

So you are proposing that we change a good portion of our API to be
aware of multiple displays?

>
>> That reminds me that we still have another problem. APIs such
>> ecore_wl_screen_size_get() return only the screen size of the first
>> monitor, not both.
>
> same as above, this should be based on current window (if there is a
> window handle) or the first one (if there is not, alterntively we can
> state it will refer to screen the mouse is over, but I guess this is
> incorrect and makes everything less predictable).

Well, that API has no argument, so it just assumes the current output.
For a given window, one could use ecore_evas_screen_geometry_get, and
that indeed will be attached to a given display, but only after the
Ecore_Evas has been shown first (at least on Wayland, if I'm not
wrong).

>> What about a common API to select which output we are talking about,
>> that must be called before any call that would refer to a specific
>> output? The problem with this is that it would make code very
>> wayland-specific :-/
>
> how so? just use the opaque handlers and abstract stuff in there.

OK, so you suggestion is something like:

Display {
  ID;
  size;
  position; // might be some info from xrandr, like right-of another
display, etc, if that is even possible
  capabilities (3d/stereo? color?)
  dpi (I'm not even sure if we can query different DPIs for different
monitors, but I've seen discussion about future work on this on
Wayland);
}

And then change/add some APIs to refer to a specific display when
setting things?

> --
> Gustavo Sverzut Barbieri
> --------------------------------------
> Mobile: +55 (19) 9225-2202
> Contact: http://www.gustavobarbieri.com.br/contact
>
> ------------------------------------------------------------------------------
> Android is increasing in popularity, but the open development platform that
> developers love is also attractive to malware creators. Download this white
> paper to learn more about secure code signing practices that can help keep
> Android apps secure.
> http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel



-- 
Rafael Antognolli

------------------------------------------------------------------------------
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to