[ Thread Index |
Date Index
| More lists.liballeg.org/allegro-developers Archives
]
Can you explain in detail what exactly the change in behavior for =
FULLSCREEN_WINDOW will be, for someone not looking at the patches?
On Aug 7, 2014 8:58 PM, "Trent Gamblin" <trent@xxxxxxxxxx> wrote:
Looked at SDL closer - it behaves differently than I was told. It =
doesn't scale at all, it uses the window manager to go fullscreen and =
then xrandr/xvidmode to change the mode. Better for us, I did the same =
and the patch is a ton simpler now.
I'd like to propose changing ALLEGRO_FULLSCREEN_WINDOW so that it =
implies ALLEGRO_FULLSCREEN as well. That'll require a few changed checks =
here and there but not as bad as making ALLEGRO_FULLSCREEN separate from =
ALLEGRO_FULLSCREEN_WINDOW and ALLEGRO_FULLSCREEN_VIRTUAL. IMO it should =
have been that way from the start, as a modifier.
I still didn't figure out why alt-tab doesn't work but this is by =
far better than ALLEGRO_FULLSCREEN or ALLEGRO_FULLSCREEN_WINDOW where it =
doesn't work either. Will try and figure it out eventually.
Attached the patch, if there are no legitimate objections I'll apply =
it soon. I'll add documentation as well.
On 14-08-07 10:55 AM, Trent Gamblin wrote:
Attached xwmfullscreen.c. With this version KDE, Unity and XFCE =
all work except for alt-tabbing. Need to find out what SDL does to allow =
that.=20
On 14-08-07 10:03 AM, Trent Gamblin wrote:=20
I'm going to see if I can fix those problems first by checking =
out SDL a=20
little closer...=20
----- Original Message -----=20
From: "Trent Gamblin" <trent@xxxxxxxxxx>=20
To: "Allegro Development" =
<alleg-developers@xxxxxxxxxx>=20
Sent: Thursday, August 07, 2014 9:43 AM=20
Subject: Re: [AD] RFC - Linux WM Fullscreen Patch=20
Virtual fullscreen is supposed to create the display using the =
window=20
manager to create a fullscreen window in a different way than =
"fullscreen=20
window". If we could figure out why KDE shifts the window up =
and XFCE the=20
window doesn't cover the panel, then it would be the best =
option (of=20
course=20
we'd then have to add a properly scaled buffer as you said.)=20
----- Original Message -----=20
From: "SiegeLordEx" <slabode@xxxxxxxxxx>=20
To: <alleg-developers@xxxxxxxxxx>=20
Sent: Thursday, August 07, 2014 9:35 AM=20
Subject: Re: [AD] RFC - Linux WM Fullscreen Patch=20
Apologies if this is obvious from the patch (I still only =
glanced at=20
it), but I was under the impression that 'virtual =
fullscreen' was merely=20
'fullscreen window' with some letter-boxing transformations? =
If so, why=20
is there a difference between the two?=20
If there is a difference, does the 'virtual fullscreen' work =
all the=20
time without compositing too?=20
-SL=20
On 08/07/2014 11:25 AM, Trent Gamblin wrote:=20
Ok. I've already decided yesterday I'll probably abandon =
this patch=20
anyway,=20
but if it's possible and worthwhile to fix who knows.=20
The problem is with all three fullscreen types there are =
problems on=20
Linux.=20
1) Real fullscreen=20
KDE: shifted to top left corner=20
Unity: Needs CCSM installed and switch toggled=20
XFCE: works=20
2) Fullscreen window=20
KDE: Hangs the entire system=20
Unity: Can't alt-tab out=20
XFCE: works=20
3) Virtual fullscreen=20
KDE: shifted up about 20 pixels=20
Unity: works=20
XFCE: works sometimes depending on panel positions=20
It's freaking disgusting. The only thing that actually =
works is if you=20
disable compositing, then fullscreen window basically =
works.=20
----- Original Message -----=20
From: "SiegeLordEx" <slabode@xxxxxxxxxx>=20
To: <alleg-developers@xxxxxxxxxx>=20
Sent: Thursday, August 07, 2014 9:19 AM=20
Subject: Re: [AD] RFC - Linux WM Fullscreen Patch=20
On 08/07/2014 11:12 AM, SiegeLordEx wrote:=20
On 08/07/2014 10:52 AM, Trent Gamblin wrote:=20
Primitives and transforms have always been different =
for me. Paul,=20
what's the reason behind this? For example scaling =
everything up=20
still=20
results in crisp lines etc?=20
Of course it does, primitives are drawn using polygons =
and they are=20
going to use screen pixels (i.e. the actual =
resolution). It's=20
impossible=20
to emulate a scaled mode setting with transformations =
with respect to=20
how the primitives are drawn.=20
That's why you always use an intermediate bitmap that =
you then scale=20
up=20
if you want large pixels with your primitives. If you =
really want a=20
virtual mode in Allegro, that is the method you need =
to use.=20
-SL=20
I should note that this is not unique to primitives, =
since bitmaps are=20
drawn using polygons as well. E.g. drawing a bitmap at =
fractional=20
coordinates will look different on a virtual fullscreen =
and a real=20
mode.=20
This is even more easily seen with rotated bitmaps.=20
-SL=20
=
-------------------------------------------------------------------------=
-----=20
Infragistics Professional=20
Build stunning WinForms apps today!=20
Reboot your WinForms applications with our WinForms =
controls.=20
Build a bridge from your legacy apps to the future.=20
=
http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D/4140/ostg=
.clktrk=20
--=20
=
https://lists.sourceforge.net/lists/listinfo/alleg-developers=20
=
-------------------------------------------------------------------------=
-----=20
Infragistics Professional=20
Build stunning WinForms apps today!=20
Reboot your WinForms applications with our WinForms =
controls.=20
Build a bridge from your legacy apps to the future.=20
=
http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D/4140/ostg=
.clktrk=20
=
-------------------------------------------------------------------------=
-----=20
Infragistics Professional=20
Build stunning WinForms apps today!=20
Reboot your WinForms applications with our WinForms =
controls.=20
Build a bridge from your legacy apps to the future.=20
=
http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D/4140/ostg=
.clktrk=20
--=20
=
https://lists.sourceforge.net/lists/listinfo/alleg-developers=20
=
-------------------------------------------------------------------------=
-----=20
Infragistics Professional=20
Build stunning WinForms apps today!=20
Reboot your WinForms applications with our WinForms controls.=20
Build a bridge from your legacy apps to the future.=20
=
http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D/4140/ostg=
.clktrk=20
--=20
https://lists.sourceforge.net/lists/listinfo/alleg-developers=20
=
-------------------------------------------------------------------------=
-----=20
Infragistics Professional=20
Build stunning WinForms apps today!=20
Reboot your WinForms applications with our WinForms controls.=20
Build a bridge from your legacy apps to the future.=20
=
http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D/4140/ostg=
.clktrk=20
=20
-------------------------------------------------------------------------=
-----
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls.=20
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D/4140/ostg=
.clktrk
=20
=
-------------------------------------------------------------------------=
-----
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls.
Build a bridge from your legacy apps to the future.
=
http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D/4140/ostg=
.clktrk
--
https://lists.sourceforge.net/lists/listinfo/alleg-developers
-------------------------------------------------------------------------=
-----
=
-------------------------------------------------------------------------=
-----
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls.=20
Build a bridge from your legacy apps to the future.
=
http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D/4140/ostg=
.clktrk
-------------------------------------------------------------------------=
-----
--=20
https://lists.sourceforge.net/lists/listinfo/alleg-developers
------=_NextPart_000_0117_01CFB243.64F3B580
Content-Type: text/html;
charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Dutf-8" http-equiv=3DContent-Type>
<META name=3DGENERATOR content=3D"MSHTML 8.00.6001.23588">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT size=3D2 face=3DArial>Ok, fullscreen window simply creates a =
big window=20
sized to the size of the screen. The new mode is more like real =
fullscreen,=20
actually it basically is the same except for adding a hint to the window =
manager=20
if it's supported. SDL also does the same. When I brought it up earlier, =
it was=20
said that it should be a separate thing although I had argued that it =
should=20
just be the default, part of ALLEGRO_FULLSCREEN (which would still be=20
ideal.)</FONT></DIV>
<DIV><FONT size=3D2 face=3DArial></FONT> </DIV>
<DIV><FONT size=3D2 face=3DArial>From the users perspective it's no =
different from=20
ALLEGRO_FULLSCREEN. As far as actual user experience, =
ALLEGRO_FULLSCREEN_WINDOW=20
seems to not work very well and this works better.</FONT></DIV>
<BLOCKQUOTE=20
style=3D"BORDER-LEFT: #000000 2px solid; PADDING-LEFT: 5px; =
PADDING-RIGHT: 0px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px">
<DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV=20
style=3D"FONT: 10pt arial; BACKGROUND: #e4e4e4; font-color: =
black"><B>From:</B>=20
<A title=3Delias.pschernig@xxxxxxxxxx
href=3D"mailto:elias.pschernig@xxxxxxxxxx">Elias Pschernig</A> </DIV>
<DIV style=3D"FONT: 10pt arial"><B>To:</B> <A=20
title=3Dalleg-developers@xxxxxxxxxx
href=3D"mailto:alleg-developers@xxxxxxxxxx">Allegro =
Developers</A>=20
</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Thursday, August 07, 2014 =
1:17=20
PM</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Subject:</B> Re: [AD] RFC - Linux =
WM=20
Fullscreen Patch</DIV>
<DIV><BR></DIV>
<P dir=3Dltr>Can you explain in detail what exactly the change in =
behavior for=20
FULLSCREEN_WINDOW will be, for someone not looking at the patches?</P>
<DIV class=3Dgmail_quote>On Aug 7, 2014 8:58 PM, "Trent Gamblin" =
<<A=20
href=3D"mailto:trent@xxxxxxxxxx">trent@xxxxxxxxxx</A>> =
wrote:<BR=20
type=3D"attribution">
<BLOCKQUOTE=20
style=3D"BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; =
PADDING-LEFT: 1ex"=20
class=3Dgmail_quote>
<DIV bgcolor=3D"#FFFFFF" text=3D"#000000">Looked at SDL closer - it =
behaves=20
differently than I was told. It doesn't scale at all, it uses the =
window=20
manager to go fullscreen and then xrandr/xvidmode to change the =
mode. Better=20
for us, I did the same and the patch is a ton simpler =
now.<BR><BR>I'd like=20
to propose changing ALLEGRO_FULLSCREEN_WINDOW so that it implies=20
ALLEGRO_FULLSCREEN as well. That'll require a few changed checks =
here and=20
there but not as bad as making ALLEGRO_FULLSCREEN separate from=20
ALLEGRO_FULLSCREEN_WINDOW and ALLEGRO_FULLSCREEN_VIRTUAL. IMO it =
should have=20
been that way from the start, as a modifier.<BR><BR>I still didn't =
figure=20
out why alt-tab doesn't work but this is by far better than=20
ALLEGRO_FULLSCREEN or ALLEGRO_FULLSCREEN_WINDOW where it doesn't =
work=20
either. Will try and figure it out eventually.<BR><BR>Attached the =
patch, if=20
there are no legitimate objections I'll apply it soon. I'll add=20
documentation as well.<BR><BR>
<DIV>On 14-08-07 10:55 AM, Trent Gamblin wrote:<BR></DIV>
<BLOCKQUOTE type=3D"cite">Attached xwmfullscreen.c. With this =
version KDE,=20
Unity and XFCE all work except for alt-tabbing. Need to find out =
what SDL=20
does to allow that. <BR><BR>On 14-08-07 10:03 AM, Trent Gamblin =
wrote:=20
<BR>
<BLOCKQUOTE type=3D"cite">I'm going to see if I can fix those =
problems=20
first by checking out SDL a <BR>little closer... <BR><BR>----- =
Original=20
Message ----- <BR>From: "Trent Gamblin" <A=20
href=3D"mailto:trent@xxxxxxxxxx
target=3D_blank><trent@xxxxxxxxxx></A> <BR>To: "Allegro=20
Development" <A =
href=3D"mailto:alleg-developers@xxxxxxxxxx
=
target=3D_blank><alleg-developers@xxxxxxxxxx></A>=20
<BR>Sent: Thursday, August 07, 2014 9:43 AM <BR>Subject: Re: =
[AD] RFC -=20
Linux WM Fullscreen Patch <BR><BR><BR>
<BLOCKQUOTE type=3D"cite">Virtual fullscreen is supposed to =
create the=20
display using the window <BR>manager to create a fullscreen =
window in=20
a different way than "fullscreen <BR>window". If we could =
figure out=20
why KDE shifts the window up and XFCE the <BR>window doesn't =
cover the=20
panel, then it would be the best option (of <BR>course =
<BR>we'd then=20
have to add a properly scaled buffer as you said.) =
<BR><BR>-----=20
Original Message ----- <BR>From: "SiegeLordEx" <A=20
href=3D"mailto:slabode@xxxxxxxxxx
target=3D_blank><slabode@xxxxxxxxxx></A> <BR>To: <A=20
href=3D"mailto:alleg-developers@xxxxxxxxxx
=
target=3D_blank><alleg-developers@xxxxxxxxxx></A>=20
<BR>Sent: Thursday, August 07, 2014 9:35 AM <BR>Subject: Re: =
[AD] RFC=20
- Linux WM Fullscreen Patch <BR><BR><BR>
<BLOCKQUOTE type=3D"cite">Apologies if this is obvious from =
the patch=20
(I still only glanced at <BR>it), but I was under the =
impression=20
that 'virtual fullscreen' was merely <BR>'fullscreen window' =
with=20
some letter-boxing transformations? If so, why <BR>is there =
a=20
difference between the two? <BR><BR>If there is a =
difference, does=20
the 'virtual fullscreen' work all the <BR>time without =
compositing=20
too? <BR><BR>-SL <BR><BR>On 08/07/2014 11:25 AM, Trent =
Gamblin=20
wrote: <BR>
<BLOCKQUOTE type=3D"cite">Ok. I've already decided yesterday =
I'll=20
probably abandon this patch <BR>anyway, <BR>but if it's =
possible=20
and worthwhile to fix who knows. <BR><BR>The problem is =
with all=20
three fullscreen types there are problems on <BR>Linux. =
<BR><BR>1)=20
Real fullscreen <BR>KDE: shifted to top left corner =
<BR>Unity:=20
Needs CCSM installed and switch toggled <BR>XFCE: works =
<BR><BR>2)=20
Fullscreen window <BR>KDE: Hangs the entire system =
<BR>Unity:=20
Can't alt-tab out <BR>XFCE: works <BR><BR>3) Virtual =
fullscreen=20
<BR>KDE: shifted up about 20 pixels <BR>Unity: works =
<BR>XFCE:=20
works sometimes depending on panel positions <BR><BR>It's =
freaking=20
disgusting. The only thing that actually works is if you=20
<BR>disable compositing, then fullscreen window basically =
works.=20
<BR><BR>----- Original Message ----- <BR>From: =
"SiegeLordEx" <A=20
href=3D"mailto:slabode@xxxxxxxxxx
target=3D_blank><slabode@xxxxxxxxxx></A> <BR>To: <A=20
href=3D"mailto:alleg-developers@xxxxxxxxxx
=
target=3D_blank><alleg-developers@xxxxxxxxxx></A>=20
<BR>Sent: Thursday, August 07, 2014 9:19 AM <BR>Subject: =
Re: [AD]=20
RFC - Linux WM Fullscreen Patch <BR><BR><BR>
<BLOCKQUOTE type=3D"cite">On 08/07/2014 11:12 AM, =
SiegeLordEx=20
wrote: <BR>
<BLOCKQUOTE type=3D"cite">On 08/07/2014 10:52 AM, Trent =
Gamblin=20
wrote: <BR>
<BLOCKQUOTE type=3D"cite">Primitives and transforms =
have=20
always been different for me. Paul, <BR>what's the =
reason=20
behind this? For example scaling everything up =
<BR>still=20
<BR>results in crisp lines etc? <BR></BLOCKQUOTE>Of =
course it=20
does, primitives are drawn using polygons and they are =
<BR>going to use screen pixels (i.e. the actual =
resolution).=20
It's <BR>impossible <BR>to emulate a scaled mode =
setting with=20
transformations with respect to <BR>how the primitives =
are=20
drawn. <BR><BR>That's why you always use an =
intermediate=20
bitmap that you then scale <BR>up <BR>if you want =
large pixels=20
with your primitives. If you really want a <BR>virtual =
mode in=20
Allegro, that is the method you need to use. =
<BR><BR>-SL=20
<BR><BR></BLOCKQUOTE>I should note that this is not =
unique to=20
primitives, since bitmaps are <BR>drawn using polygons =
as well.=20
E.g. drawing a bitmap at fractional <BR>coordinates will =
look=20
different on a virtual fullscreen and a real <BR>mode. =
<BR>This=20
is even more easily seen with rotated bitmaps. =
<BR><BR>-SL=20
=
<BR><BR>-----------------------------------------------------------------=
-------------=20
<BR>Infragistics Professional <BR>Build stunning =
WinForms apps=20
today! <BR>Reboot your WinForms applications with our =
WinForms=20
controls. <BR>Build a bridge from your legacy apps to =
the=20
future. <BR><A=20
=
href=3D"http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D=
/4140/ostg.clktrk"=20
=
target=3D_blank>http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071=
&iu=3D/4140/ostg.clktrk</A>=20
<BR>-- <BR><A=20
=
href=3D"https://lists.sourceforge.net/lists/listinfo/alleg-developers"=20
=
target=3D_blank>https://lists.sourceforge.net/lists/listinfo/alleg-develo=
pers</A>=20
=
<BR><BR></BLOCKQUOTE><BR>------------------------------------------------=
------------------------------=20
<BR>Infragistics Professional <BR>Build stunning WinForms =
apps=20
today! <BR>Reboot your WinForms applications with our =
WinForms=20
controls. <BR>Build a bridge from your legacy apps to the =
future.=20
<BR><A=20
=
href=3D"http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D=
/4140/ostg.clktrk"=20
=
target=3D_blank>http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071=
&iu=3D/4140/ostg.clktrk</A>=20
=
<BR><BR></BLOCKQUOTE><BR>------------------------------------------------=
------------------------------=20
<BR>Infragistics Professional <BR>Build stunning WinForms =
apps=20
today! <BR>Reboot your WinForms applications with our =
WinForms=20
controls. <BR>Build a bridge from your legacy apps to the =
future.=20
<BR><A=20
=
href=3D"http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D=
/4140/ostg.clktrk"=20
=
target=3D_blank>http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071=
&iu=3D/4140/ostg.clktrk</A>=20
<BR>-- <BR><A=20
=
href=3D"https://lists.sourceforge.net/lists/listinfo/alleg-developers"=20
=
target=3D_blank>https://lists.sourceforge.net/lists/listinfo/alleg-develo=
pers</A>=20
=
<BR><BR></BLOCKQUOTE><BR>------------------------------------------------=
------------------------------=20
<BR>Infragistics Professional <BR>Build stunning WinForms apps =
today!=20
<BR>Reboot your WinForms applications with our WinForms =
controls.=20
<BR>Build a bridge from your legacy apps to the future. <BR><A =
=
href=3D"http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D=
/4140/ostg.clktrk"=20
=
target=3D_blank>http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071=
&iu=3D/4140/ostg.clktrk</A>=20
<BR>-- <BR><A=20
=
href=3D"https://lists.sourceforge.net/lists/listinfo/alleg-developers"=20
=
target=3D_blank>https://lists.sourceforge.net/lists/listinfo/alleg-develo=
pers</A>=20
=
<BR><BR></BLOCKQUOTE><BR>------------------------------------------------=
------------------------------=20
<BR>Infragistics Professional <BR>Build stunning WinForms apps =
today!=20
<BR>Reboot your WinForms applications with our WinForms =
controls.=20
<BR>Build a bridge from your legacy apps to the future. <BR><A=20
=
href=3D"http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D=
/4140/ostg.clktrk"=20
=
target=3D_blank>http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071=
&iu=3D/4140/ostg.clktrk</A>=20
<BR></BLOCKQUOTE><BR><BR>
<FIELDSET></FIELDSET> =
<BR><PRE>----------------------------------------------------------------=
--------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls.=20
Build a bridge from your legacy apps to the future.
<A =
href=3D"http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D=
/4140/ostg.clktrk" =
target=3D_blank>http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071=
&iu=3D/4140/ostg.clktrk</A></PRE><BR>
<FIELDSET></FIELDSET>=20
=
<BR></BLOCKQUOTE><BR></DIV><BR>------------------------------------------=
------------------------------------<BR>Infragistics=20
Professional<BR>Build stunning WinForms apps today!<BR>Reboot your =
WinForms=20
applications with our WinForms controls.<BR>Build a bridge from your =
legacy=20
apps to the future.<BR><A=20
=
href=3D"http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&iu=3D=
/4140/ostg.clktrk"=20
=
target=3D_blank>http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071=
&iu=3D/4140/ostg.clktrk</A><BR>--<BR><A=20
=
href=3D"https://lists.sourceforge.net/lists/listinfo/alleg-developers"=20
=
target=3D_blank>https://lists.sourceforge.net/lists/listinfo/alleg-develo=
pers</A><BR></BLOCKQUOTE></DIV>
<P>
<HR>
=
<P></P>------------------------------------------------------------------=
------------<BR>Infragistics=20
Professional<BR>Build stunning WinForms apps today!<BR>Reboot your =
WinForms=20
applications with our WinForms controls. <BR>Build a bridge from your =
legacy=20
apps to the=20
=
future.<BR>http://pubads.g.doubleclick.net/gampad/clk?id=3D153845071&=
iu=3D/4140/ostg.clktrk
<P>
<HR>
<P></P>--=20
<BR>https://lists.sourceforge.net/lists/listinfo/alleg-developers</BLOCKQ=
UOTE></BODY></HTML>
------=_NextPart_000_0117_01CFB243.64F3B580--