No announcement yet.

A Proposal To Fix The Full-Screen Linux Window Mess

  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    KWin's developer usually makes smart decisions, but in this case he's dead wrong. Games *need* to be able to change the resolution, period. There shouldn't even be any discussion about it. Claiming otherwise is like saying that you shouldn't be able to change the size of application windows because of some KDE architectural limitation.


    • #32
      Originally posted by F i L View Post
      That sounds needlessly inefficient. Applications should be able to request a screen change (then create a surface to match that resolution)... even if the WM doesn't respect that request, there should still be a protocol in place (though I agree direct access to change the resolution shouldn't be given or promoted). It's mind-boggling to think that Windows/Mac have been working with resolution-change for years while Linux just can't handle it bug-free, on part because the core WM developers don't have enough perspective to see why such a thing is useful. It's to unrealistic to simply expect no application to change the resolution, so the WM should be working towards handling the situation bug-free.
      I would think that with all the video acceleration technology we have, upscaling or downscaling an image (with appropriate black bars for aspect ratio differences) wouldn't be too much of a performance problem. Video players have been handling full screen playback of arbitrary resolution sources on arbitrary resolution screens for a long time, and in my experience they tend to actually do a better job of scaling than most LCD monitors at non-native resolution. I would actually prefer that programs not be able to change the real display resolution.

      Being able to full-screen a window of arbitrary resolution and properly capture mouse and keyboard input is certainly important for games, but I would gladly sacrifice a little bit of performance to avoid having to actually change the monitor to a non-native resolution. Also, some monitors are bad at handling resolutions that are the wrong aspect ratio, stretching it (ugh) instead of black barring it. Doing the scaling in software would allow the user to define what behavior they want for wrong aspect ratio (like the settings for wrong aspect ratio desktop backgrounds), in a standardized way that doesn't require navigating the (usually obnoxious) menu system built into the monitor, which varies from monitor to monitor.

      Also, switching in and out of full-screen applications would be quicker without an actual monitor resolution change. It might also be nice if the user had the option (along with the stretch/zoom/scale settings) to allow a non-interactive status bar (with clock, CPU usage, email notifications, etc) to show while an app is fullscreen. The mouse would still be fully captured in the fullscreen app's window (hence the need to the status bar to be non-interactive), but I think it would be nice to actually have some of these things visible even during a fullscreen game. Since the system would already be scaling & black barring to fit an arbitrary window to an arbitrary screen resolution, the (optional) addition of this status bar wouldn't cause usability problems.

      Anyway, that's just my opinion as a user and occasional gamer.



      • #33
        Originally posted by frantaylor View Post
        If you have multiple monitors and they aren't the same size, there is a "blank spot" on your desktop that won't appear on either screen.

        Some programs are smart about this, they don't display stuff in the part you can't see

        and then there are programs that have no idea, they just use the whole desktop rectangle and they are oblivious to the fact that you can't see everything.
        More to the point -- what you are calling the "whole desktop rectangle" is the effective virtual resolution of that particular Screen, for a particular X server Display ... I use capitalized Screen and Display to distinguish them from common descriptors of monitors (panel/screen/display/.....) .... you don't even need different sized monitors to create the dead space -- eg. you can have 3 identical monitors ("M"; say, for argument sake, 100x100 pixel res) comprising a Screen, but arranging them in an "L" configuration or topology, which yields an effective 200x200 virtual resolution for the Screen -- giving you a complete dead space area ("D") as big as that of a 4th similar monitor (which would fill the rectangular space for the Screen) as given by this configuration. Crude pictorial of such an :0.0 given below

        M D
        M M


        • #34
          Reading this I get cynical.

          Can some one tell the kde team, that steam is coming to Linux ?

          Or is kde telling me: Hey if you wanna game, don't use kde ?


          • #35

            This with Zaphod Mode should fix most of my own issues. However, for other setups this is still a problem which really should be resolved.

            I do agree to an extent that the problem is somewhat on the game's side as well - I much prefer games that come up with a nice launcher like Trine and Amnesia that allows me to setup my graphics setup before the game actually launches. But casting it off as not being an issue that a DE has to help resolve is very childish IMO.

            I personally am glad the both Sam and Ryan are still trying to find ways to push Linux to be an even greater gaming platform.


            • #36
              But why should games have to call the window manager to change the resolution? What's wrong with _NET_WM_FULLSCREEN + xrandr?


              • #37
                Why not to use different screen?

                Just like Amiga Operating System do, or for example Open Source version of that system AROS:


                • #38
                  Originally posted by entropy View Post
                  Downsides are:[LIST][*]You can't drag windows from one screen to other anymore.[*]Merged big-screen output (typically flight simulator games, etc...) is typically not available anymore.
                  one man's downside is the other man's desire.

                  personally, i don't want windows going around my screens. and if an app wants to draw two separate pictures, it should render to two separate windows/screens, not stretching everything along with crazy FoV.
                  but that's just me.

                  Originally posted by Cyborg16 View Post
                  I wonder why Gr??lin forgot that quite a few users like to use laptops with external screens and are thus constantly changing resolution anyway.
                  and it looks pretty idiotic in 2012, how people, instead of instantly having separate screens with retained ability to use them for separate tasks and drive their displays at native parameters, use ugly clone mode, while also setting display of greater quality on lower mode to accommodate for an inferior one.

                  Originally posted by Cyborg16 View Post
                  Care to comment on the "everything else"? Because I can only really think of games which usually don't handle multiple screens well doing better here.
                  the facts that:
                  1) all displays are at their best settings
                  2) guarantee that things from one side will not mess up things on the other under any circumstances
                  are pretty damn hefty on their own.

                  Originally posted by BadgerRush View Post
                  Sorry, this will be a rant:
                  -- Start Rant --

                  This whole ?but changing resolution breaks our desktop icons? think is ridiculous, this is a bug on the KDE desktop and should be fixed there. His reasoning is similar to saying ?some cars have bad brakes so lets forbid everyone from driving downhill?.

                  In other words, he don't play games therefore something essential to games is not important. Come on, ?run in windowed mode?? Since he doesn't play, I would encourage him to only watch videos on the video's native resolution (no maximize, no full-screen, even on a TV, if the source is not fullhd then it should be a tiny box in the middle of the screen) after all he hates those stretched pixels, lets see how mush he likes his windowed mode after that.

                  I hate when some developer dismiss the requirements of a huge group of users (some times majority) just because he/she don't need it. I know the FOSS motto is ?if you don't like it change it yourself? but in this case (and may others) there is someone working on changing/fixing and he is pressing against.

                  -- End Rant --
                  Sorry, I needed to take this out of my chest.
                  inded, his attitude is disturbing.
                  his plan in fixing kwin's multi-screen support, for example, is not giving a damn and waiting for a miracle: for Wayland to replace X everywhere at once, while magically making all right.

                  Originally posted by [Knuckles] View Post
                  (see: proposals to kill screensaver)
                  that was fucked up too. and the fact that some screensavers's output is screwed in multi-screen still doesn't help.
                  instead of fixing that, trying to kill off everything - what a genious development strategy !


                  • #39
                    Just do it like AmigaOS or AROS. Start fullscreen appications in different screens:


                    • #40
                      Originally posted by disi View Post
                      Typical scenario for me with Gnome3 on Fedora 17 with two monitors:
                      1. playing videos is ferfect, full screen on one monitor and e.g. a browser open in the other
                      2. wine games (ddo) if full screen:
                        • started on the main monitor, it will mirror in full screen on both
                        • started on the external monitor, it will full screen only there but the wm on the other monitor is not accessable (Meta-Key still works and if you click something on the other monitor it will leave the game and you cannot go back)
                        • the desktop will stay in it's resolution, no worries if the game crashes
                      3. linux native games if full screen:
                        • started on the main monitor, it will strech in full screen on both
                        • if the game crashes, you are stuck with whatever resolution you ran
                      4. gnome-rdp to connect to e.g. virt-manager running a vm, full screen on one monitor and works perfect

                      I'm making a program (actually is done but is in phase of polishment ) for WinXP/Win7 and also works in WINE....

                      It allows players to play with mouse+gamepad (i prefer that as opposite to mouse+keyboard my system the mouse is used the same way for POV and it's keys for ADS, RUN/SPRINT , CROUCH and MELEE (yes, 3 buttons will make 4 functions ) even in games that don't support gamepads ....

                      The program scans the games in your PC, pops a window with results, after you select game, it will totally rebind what's needed and launch game (it will take care also of left or right handed players and PC, PC+PS2 or PS3 gamepads)...

                      ANYWAY, i also add some extra stuff when it's running via WINE...

                      One of the extra tricks is precisely, no matter you simply exit game or game crashed, is to restore the resolution that you were using before launch game ....and i'm talking about true full screen gaming and not virtual desktop in WINE

                      Till now it's working can see some screenshots , info and videos of me playing at

                      Release is delayed because i'm now testing all games in WINE and have to make sure it works everything correctly also under that....eeerrrrr..."OS".

                      (Program also takes care of a series of dlloverrides,etc automaticcly w/o you need to mess around with winetricks for each game)