Announcement

Collapse
No announcement yet.

Wine 4.0 Release Preparations Begin For Much Improved Windows Games / Apps On Linux

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Originally posted by Weasel View Post
    Come back with another wall of text when you can query the position of a window under Wayland or tell it at what position to be, without a virtual desktop.
    X11 protocol core cannot do that either. You are using extension to query position or window or tell window what position it should be under X11. This is the windows manager extension that causes wine all kinds of trouble for being broken..
    Wayland design means that window positions are relative to a window. This is to prevent the classic I am running application and pop up appears on wrong window under X11. Yes if you want to use full screen positions under wayland you need a full screen window. Is this in fact different to X11. The wayland difference is instead of the windows manager creating the virtual desktop for you if you want to use screen relative positions you need to create the virtual desktop yourself with a full screen window. Weasel says without using a virtual desktop in fact windows position under X11 does not exist without the windows manager creating a virtual desktop be this the default in the X11 server or the loaded windows manager. So without virtual desktop query position of window under X11 does not work either. Have you not noticed Weasel under X11 at times your application requests position 0.0 and really gets something like 0,100 because the X11 windows manager has offset the top corner. Basically Weasel is the common anti wayland. They request stuff that is in fact impossible to perform under X11. Yes strictly without a virtual desktop under X11 equals all windows created at 0.0 with no ability to move them at all.

    Virtual desktop has to exist to use relative positions with X11 or Wayland. The difference is who creates it. X11 the virtual desktop create is the responsibility of the windows manager. Wayland the virtual desktop create is the responsibility of the application.

    Exactly like Xwayland wine could use a invisible virtual desktop. Due to wine being direct control if it virtual desktop this way no cat fighting with different wayland compositor implementations of virtual desktop that wine has to currently under X11 with the windows managers. Why wine includes a virtual desktop mode in the first place is because the X11 windows manager virtual desktop does not always work.

    Comment


    • #32
      Originally posted by andre30correia View Post
      Wayland don't have any of things needed right know, dual graphics won't work,
      It is dual graphics support being prime for laptops came to Wayland in 2013. So yes a lot of things are claimed wayland cannot do yet wayland compositors does them.

      The wayland protocol is better suited for multi different graphics cards at the same time than X11 protocol. So this is one of the reasons why in time we have to leave the X11 protocol.

      The fact that wine works on Xwayland says that there are ways of providing the information wine application need under the wayland protocol.

      Comment


      • #33
        Originally posted by oiaohm View Post
        X11 protocol core cannot do that either. You are using extension to query position or window or tell window what position it should be under X11. This is the windows manager extension that causes wine all kinds of trouble for being broken..
        And not a single fuck was given. Fact is Wayland cannot do it so it's worse than garbage.

        Originally posted by oiaohm View Post
        Wayland design means that window positions are relative to a window.
        That's normal for child windows. Not for top level windows tho.

        Originally posted by oiaohm View Post
        This is to prevent the classic I am running application and pop up appears on wrong window under X11.
        What the fuck are you talking about? Making relative from absolute is extremely easy. Query absolute position of window -> add the "relative" coordinates. Voila.

        You can't do it the other way, hence Wayland is some hot garbage.

        Originally posted by oiaohm View Post
        Yes if you want to use full screen positions under wayland you need a full screen window.
        So it's garbage.

        Originally posted by oiaohm View Post
        The wayland difference is instead of the windows manager creating the virtual desktop for you if you want to use screen relative positions you need to create the virtual desktop yourself with a full screen window.
        No you don't because the window manager is not part of the app and can be customized by the user independently, and all windows share it as their "parent". How do you have TWO apps which query screen position under Wayland without obscuring one another? That is the entire point and you talk as if it's a matter of style.

        No.

        Originally posted by oiaohm View Post
        Weasel says without using a virtual desktop in fact windows position under X11 does not exist without the windows manager creating a virtual desktop be this the default in the X11 server or the loaded windows manager. So without virtual desktop query position of window under X11 does not work either. Have you not noticed Weasel under X11 at times your application requests position 0.0 and really gets something like 0,100 because the X11 windows manager has offset the top corner. Basically Weasel is the common anti wayland. They request stuff that is in fact impossible to perform under X11. Yes strictly without a virtual desktop under X11 equals all windows created at 0.0 with no ability to move them at all.
        I don't think you understand what the issue is.

        Just FYI, when I say Virtual Desktop, I mean Wine's virtual desktop (the one you set in Winecfg), not any of your other crap or the window manager.

        Comment


        • #34
          Originally posted by Weasel View Post
          That's normal for child windows. Not for top level windows tho.
          This is not understanding the change.

          Originally posted by Weasel View Post
          What the fuck are you talking about? Making relative from absolute is extremely easy. Query absolute position of window -> add the "relative" coordinates. Voila.
          Its not that easy once you work out X11 windows managers are 4 dimensional. X, Y, Z and virtual desktops/pagers. Yes X11 only giving you 2 out of the 4 dimensions when it gives you so called absolute position.

          This is to prevent the classic I am running application and pop up appears on wrong window under X11.
          Get how this happens now. This is without the window moving between when you get absolute position and calculate new location.

          So lets run down the failure.
          1) application requests windows absolute position.
          2) application adds relative coordinates to absolute position.
          3) application puts up pop up on screen using these generated absolute position
          4) It appears in the wrong place what happened.

          The causes of this failure somewhere between 1-3 the windows manager moved the window. Now this might be a X/Y move or depth change z or this might be change what windows manager virtual desktop application is displayed on. Yes it optional for a X11 windows manager to notify your program about a change of depth or change of windows manager virtual desktop heck some fail to always tell you about x or y change so requiring to to repeatedly query the X11 server..

          Relative to another window addresses this problem.

          Basically X11 absolute position is as clear as mud. Basically your Volla is failure under X11.
          XTranslateCoordinates( display, window, root_window, 0, 0, &x, &y, &child ); You will see above used a lot in X11 programs. This is relative. Relative is what works dependably.
          Originally posted by Weasel View Post
          How do you have TWO apps which query screen position under Wayland without obscuring one another?
          Xwayland method of full screen hidden window. Each application can do their own no problems.. Has the effect of binding all the application windows together as well.

          Remember under X11 you get a absolute position of lets say 100 X and 100 Y for two windows are they in the same place the answer is maybe. Why both windows could be on two different virtual desktops/pagers or worse completely different screens under X11.

          Basically you cannot under X11 without being the windows manager query the exact screen position of a X11 window. If you think you can you are living in a fairly tail not reality. The windows manager gives to a relative position for your window based on where it put it. Yes windows managers can decide to do a virtual desktop/pager per screen.

          Wayland protocol does not include absolute positions and forces the usage of relative positioning unless you are the compositor. It is really only the compositor or X11 windows manager that can in fact know the true absolute position.

          Other thing due to the wayland usage of fd it possible to by dbus and other means to pass the fd of a window between applications. Yes it possible to lock that fd read only to receiving application. So it possible to perform relative position operation on cooperating applications this can be used to fake up absolute positions. Good part if the two windows are in fact on two virtual desktops you do in fact get a failure instead of two positions suggesting they are in the same place.

          Wayland requires you to think about problem and go the path that works. Not the path that works by luck.

          Yes Weasel go read the X11 protocol and you will find that Windows managers are perfectly free to ignore any absolute windows address request and put your window where ever they like. The XTranslateCoordinates bit they have to in fact obey. The only things in positioning truly works in X11 protocol is relative positioning. Wayland basically strips you back to all you should be using under X11 that you can expect to work.

          Remember I said wayland is no worse. Giving you features like absolute position that are really optional in X11 is not that helpful to people developing programs. This is why you make a program it works fine with Y Windows manager yet it now screws up perfectly with Z windows manager this happens repeatably with X11 and both windows managers will be perfectly to X11 specification just one has decided to ignore the optional feature you expect. Absolute position is a optional X11 feature.

          If something was optional its not in the default wayland specification.

          Comment


          • #35
            Originally posted by oiaohm View Post
            This is not understanding the change.


            Its not that easy once you work out X11 windows managers are 4 dimensional. X, Y, Z and virtual desktops/pagers. Yes X11 only giving you 2 out of the 4 dimensions when it gives you so called absolute position.

            This is to prevent the classic I am running application and pop up appears on wrong window under X11.
            Get how this happens now. This is without the window moving between when you get absolute position and calculate new location.

            So lets run down the failure.
            1) application requests windows absolute position.
            2) application adds relative coordinates to absolute position.
            3) application puts up pop up on screen using these generated absolute position
            4) It appears in the wrong place what happened.
            What has that to do with querying the position? You should've stopped at number 1 or at best number 2.

            All that wall of text typed for nothing since you clearly can't seem to read that I'm talking about Wine's Virtual Desktops not the X11 root window (what you call virtual desktop).

            You're in a thread about Wine, why would you assume I'm talking about anything else is just your typical babbling.


            X11, depending on WM, can fail at number 4 (besides the point) while Wayland can't even pass number 1. Yeah I wonder which one is deeper into the shit hole.

            Comment


            • #36
              Originally posted by Weasel View Post
              What has that to do with querying the position? You should've stopped at number 1 or at best number 2..
              Did 1 in fact give you a correct answer.

              Originally posted by Weasel View Post
              All that wall of text typed for nothing since you clearly can't seem to read that I'm talking about Wine's Virtual Desktops not the X11 root window (what you call virtual desktop).
              X11 root window is not what I am calling virtual dekstop. You have the pagers(workspace paging system) in windows managers. Also to be really fun X11 server by protocol is free to start more than 1 X11 root window.

              https://en.wikipedia.org/wiki/Root_window
              Yes the virtual root windows. What in X11 pagers get called virtual desktops. Wine virtual desktop is a X11 pager. They are the same kind of beast.

              Originally posted by Weasel View Post
              X11, depending on WM, can fail at number 4 (besides the point) while Wayland can't even pass number 1. Yeah I wonder which one is deeper into the shit hole.
              X11 can in fact fail at number 1. Because by X11 standard the root window does not have to be defined at the point your application attempts to request window position because someone unplugged the monitor at the time. X11 only sometimes gets past one.

              X11 does not matter what you do you can fail at number 1. Yes application requests windows absolute position and gets a error message back from the X11 server because by X11 protocol design any thing and disappear at any time include the root window. That error message gives you X 0 and Y 0 so you don't see it if you window is on 0 x and 0 y. If you window is not 0 x and 0 y relative to root window when you get to 4 its going to be in the wrong place.

              Yes all positions under X11 are not absolute. They are all relative positions to a window. Ok a window that you did not have to create when using X11.

              Lets look at wayland application and I want to use something like absolute positions basically X11 relative positions.

              Application starts
              1) request a full screen hidden window to be my root window.
              2) do all my positions relative to that full screen hidden root window.

              The root window in this case is not going to disappear just because wayland compositor, windows manager or X11 server feels like it as what happens under X11 and mandated by standard that it should happen.

              Due to application in this case having it own root window you don't have the problem where application is moved between virtual desktops in the windows manager and you are now creating windows on the wrong root window. Why you are using your own root window compositor can see that all these windows are meant to be moved as one.

              Screen get changes I have process the notification under wayland. Screen changes had to process under X11 as well.

              Guess what wine virtual desktop is doing the same thing to prevent X11 windows managers messing stuff up.

              When the problem is you are missing a root window does it not make sense to just create a root window? Yes create root window its a straight forwards and in fact answer. Wayland compositor does not provide a default root window because if you are needing that absolute position like stuff you are meant to create it so the compositor knows what in hell you are up to and handles your application correctly.



              Comment


              • #37
                Originally posted by oiaohm View Post
                X11 root window is not what I am calling virtual dekstop. You have the pagers(workspace paging system) in windows managers. Also to be really fun X11 server by protocol is free to start more than 1 X11 root window.

                https://en.wikipedia.org/wiki/Root_window
                Yes the virtual root windows. What in X11 pagers get called virtual desktops. Wine virtual desktop is a X11 pager. They are the same kind of beast.
                And your point is? I'm not talking about those. I'm talking about Wine's Virtual Desktops. I mean, this thread is about Wine, what did you expect?!

                Originally posted by oiaohm View Post
                X11 can in fact fail at number 1.
                No it can't. Even if the WM overrides it, that's the choice of the WM. With Wayland it's baked into the protocol itself and the attitude of the devs. And in fact, Wayland cannot do 1.

                You say X11 "can" fail. Well Wayland "will always" fail.

                But well I'm tired of talking sense into stupidity and retarded fanboys.

                Here's the deal. Why don't you post your wisdom on the Wine bugzilla about Wayland (do a simple search) and embarrass yourself where it counts, instead of places like these full of Wayland (and other) fanboys with zero logic?

                Comment


                • #38
                  Sometimes I wish there was an easy way to mute/ignore people here...

                  Comment


                  • #39
                    Originally posted by Weasel View Post
                    No it can't. Even if the WM overrides it, that's the choice of the WM. With Wayland it's baked into the protocol itself and the attitude of the devs. And in fact, Wayland cannot do 1.
                    You need to read the X11 horrible protocol.
                    Rule 1. X11 server/WM is free to delete anything at any time without notice to application. There are really horrible things baked into the X11 protocol. So "application requests windows absolute position" by X11 protocol this is free to fail this does not have to be choice of the WM this can be a open choice of the X11 server because it decide it IPC is too busy. Thank you X11 protocol for being the worst IPC ever with no promise of delivery.

                    [QUOTE=Weasel;n1064058You say X11 "can" fail. Well Wayland "will always" fail.[/QUOTE]
                    If you go hidden full screen window with sub windows under Wayland it never fails.

                    Originally posted by Weasel View Post
                    Here's the deal. Why don't you post your wisdom on the Wine bugzilla about Wayland (do a simple search) and embarrass yourself where it counts, instead of places like these full of Wayland (and other) fanboys with zero logic?
                    https://bugs.winehq.org/show_bug.cgi?id=42284
                    No need the usage of subwindows in Wayland to solve the issues has already been raised and is a valid work around to code that depends on absolute position values. Remember X11 you only really have relative position values anyhow.

                    Window relative to another Window is how X11 works for position maths. All wayland does not do is provide you with default starting window. So you create default starting window and then Wayland protocol makes sense.

                    The big reason for no rush is also in that Bugzilla there is a 1 to 5% overhead using Xwayland on a Wayland compositor vs running on straight X.org. This is not a big enough overhead to panic about.

                    Bigger issue than positioning the window is getting all the EGL stuff to work right. Old school XGL calls don't work on Android or as a native Android application. This means no working opengl this also means no direct X. Just weasel look at all the programs that need direct x or opengl at some point that is about 90 percent of all applications users use. Yes it one thing to make wayland support but its totally pointless without EGL support.



                    Comment


                    • #40
                      Originally posted by oiaohm View Post
                      You need to read the X11 horrible protocol.
                      Rule 1. X11 server/WM is free to delete anything at any time without notice to application. There are really horrible things baked into the X11 protocol. So "application requests windows absolute position" by X11 protocol this is free to fail this does not have to be choice of the WM this can be a open choice of the X11 server because it decide it IPC is too busy. Thank you X11 protocol for being the worst IPC ever with no promise of delivery.
                      I don't see the problem. That's just being practical. Every sane API has chance to fail and inform you with some error code, and you should always expect it to fail and not deliver when writing code.

                      Originally posted by oiaohm View Post
                      If you go hidden full screen window with sub windows under Wayland it never fails.
                      No thanks, I don't use desktop as a shitty mobile app full-screen.

                      Originally posted by oiaohm View Post
                      https://bugs.winehq.org/show_bug.cgi?id=42284
                      No need the usage of subwindows in Wayland to solve the issues has already been raised
                      I don't see that, care to quote that bit? FYI, only Michael and Vincent are devs in that bug report.

                      I actually find it a bit hysterically funny that someone in that bug report ALSO confused "virtual desktop" as something other than what Wine uses, given that the context was Wine. Coincidence? All Wayland fanboys seem to be making the same mistakes.

                      Comment

                      Working...
                      X