-
-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Window position shifts after each new login #569
Comments
That sounds like more fallout from the invisible borders work. Before it,
the top left corner of each x11 window would be the corner you see. Now
of course the x and y values (top left corner) describing the window
reflect he added invisible borders. Accounting for that when loading
but not when saving or the other way around would be expected to do this.
The saving and restorung of window positions is done by the session manager
and the libegg code within appplications such as caja, pluma, etc. Mate-terminal
is further complicated by being quantized to exact row and column (of text)
dimensions. Neither MATE not GNOME terminal tiles without a gap around the
edge at least in compiz.
Can you check to see if all applicatiom wimdows or just terminal windows are
movimg?
…On 11/17/2019 at 12:26 PM, "jin-eld" ***@***.***> wrote:
When windows get restored after each new login, their position
shifts compared to the position that they had before logout.
Not sure if its a marco bug or if this should be filed vs some
other component...
This is actually a regression, it worked well till some point.
Unfortunately I failed to note what update has caused it (I did
not update my system regularly). Originally I noticed it on Fedora
29 which used marco 1.22.3, but I did not file a bug since by that
time Fedora 30 was already available and I assumed I did not have
the latest MATE version. In the meantime I updated to Fedora 31
yesterday and it's still using marco 1.22.3 - the problem is also
still there.
Arrange the terminal window the way you like it, make sure the
session is saved and log out.
#### Expected behaviour
This is how I arrange my terminals, I'd like to see the same
arrangement when I log back in:
![correct](https://user-
images.githubusercontent.com/1308196/69011095-fdf18700-0966-11ea-
8a16-17cd959f6749.png)
#### Actual behaviour
Instead, the windows shift by a few pixels, this is the screenshot
after I logged out and had them arranged as above, and then logged
in again:
![shifted_01](https://user-
images.githubusercontent.com/1308196/69011105-1661a180-0967-11ea-
949d-5a53b81a6b1d.png)
#### Steps to reproduce the behaviour
Make sure you have "Save session" active, arrange the windows and
log out. Log back in and see that they got restored with a certain
offset compared to the previous position.
#### MATE general version
1.22
#### Package version
marco-1.22.3-1.fc31.x86_64
#### Linux Distribution
Fedora 31
#### Link to downstream report of your Distribution
I reported it here directly, please let me know if you'd like me
to submit a bug with Fedora.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
#569
|
To be sure try downgrade to marco-1.22.1-1.fc31 |
Tried with mate-calculator and pluma, while mate-calculator was not restored at all (is that another issue?), pluma got restored shifted as well:
I tried to downgrade, but that does not appear to be so easy as dnf starts to look for further dependencies and fails to find them, I'll try to check if there is some easy way to mass-downgrade it, otherwise I may try to compile the older version and install it manually if you think that it would help you to pinpoint the issue. |
You need to install marco-1.22.1-1.fc31 by hand, i don't think that this version is available in repos via dnf.
or with |
Btw. i think you need to uninstall compiz packages to solve dependencies issues. |
I had to remove marco and marco libs with all their deps and then install the old versions from koji, that seemed to work in the end. Login takes longer now, I think it does not like the mix of old and new mate applications. Anyway, I now have: $ rpm -qa | grep marco marco-libs-1.22.1-1.fc31.x86_64 marco-1.22.1-1.fc31.x86_64 Logged out, logged in -> terminal windows are shifted. Should I try another, more older version? |
No, because it isn't clear that this is caused by marco.
Do you use windows-tiling (corner-tiling) with mouse or a keyboard shortcut to move the windows into their positions? At least i can reproduce the issue with mate-1.23.x when i restart the marco with |
I forgot, you can restart marco with |
Thank you for looking into it! Sorry, I will only be able to answer in detail in the evening, I don't use HIDPI resolutions and I don't think that I use any tiling features (at least not on purpose?), I have no shortcuts for moving windows. I have a shortcut for moving windows into background though, actually I have two terminal windows over each other and I can switch between them by a keypress, which simply lowers the active window, making the one behind it become visible. Indeed my terminals are arranged at monitor corners, so you seem to have found the trigger... I am pretty sure that I did not have any problems with this on F29 before some update (yes, I should have written down the versions, but by that time F30 was already out and I did not want to submit a report vs an old distro). I know that session saving is still not at 100%, in GNOME2 one could save the session once, untick the "save at exit" check box and the session would remain in the same setup forever which was a really cool feature; but since my terminal positioning never changes the current possibilities in MATE worked for me. Sure, it is a bit annoying to move firefox manually to another virtual desktop after each login, but I can live with that. My terminal setup however spreads over 3 virtual desktops and the terminals have different sizes and a specific placement, so repositioning all of them each time was quite a pain point after session restore stopped working properly. Since you have found the trigger, do you still want me to retest the steps from your earlier post today evening, or are the current findings enough for now? |
Np, currently all fedora versions are using same MATE release and packages, so it should be the same.
It is OK for the moment. The important point is to find out the package and his version which caused the issue, when you say it was working before. |
I found out that session-state-files at `~.config/mate-session/saved-session/ won't be removed when you disable this feature. |
You're right, issue doesn't exists with a fresh installed f29 from this iso. https://kojipkgs.fedoraproject.org/compose/29/Fedora-29-20181024.1/compose/Spins/x86_64/iso/Fedora-MATE_Compiz-Live-x86_64-29-1.2.iso |
Sure, will downgrade again tonight and report back. I did not leave the older versions installed, because it seemed to make the desktop unresponsive, i was also getting at-spi-bus-launcher related errors (not sure what that is), I assume that the older marco versions miss some functionality that has been added recently. |
In a full updated f29 VM the issue starts with using
So, issue is sadly caused by invisible-border-support :/ |
Would you still like that I to do the downgrade check with saved session removal or is it no longer needed? |
You need to downgrade to this package versions and the issue is gone.
I did that like this:
With
Ok now we need to find a fix for this regression. |
Thanks a lot for the instructions and for the investigation! If you would like me to compile and try something out once you have a patch - we could do that as well. |
@vkareh
So the fix should be go into the application who write this session-state file. |
In the meantime... (looking for a workaround), is it somehow possible to "lock" the last session? If I could edit the session file manually and prevent further saving, then it would always remain in the same state (which is what I want anyway). I remember when I first hit this issue I was trying to make it read-only and things like that, but it did not seem to work out. |
No, there isn't an option to lock the session files. So mate-session creates a new session file when the old one is read-only? |
If I recall correctly, then this has been the result of my tests, yes. I can recheck. I looked in ~/.config/session-state now and see about 900 .desktop files in there which is somewhat odd. Most of them start with caja- but there are about 14 of them that stsart with terminal-: caja-1573865598.desktop caja-1573915250.desktop caja-1574020953.desktop caja-1574988194.desktop mate-terminal-1522887005.desktop mate-terminal-1540944553.desktop mate-terminal-1553107005.desktop In GNOME2 I could set up my windows, save the session and then untick the "Automatically remember..." checkbox. As a result, my saved session stayed the same forever, which is exactly what I am looking for. What exactly is the logic of selecting the "last" session, how is the session file identified? I am thinking of adding some script on Xorg startup that would simply copy a correct "default" session file into the appropriate directory, but I need to know how to name it so that the right one gets selected. Is this saved somewhere? I tried to search for those .desktop files in dconf-editor, but was not able to find them. At least that would be a workaround... It would be great if you could hint me in the right direction or maybe suggest a better way of doing this? |
@vkareh |
I'm also still very interested in a resolution since the behaviour is quite annoying if you have lots of terminals and can't hibernate... |
When windows get restored after each new login, their position shifts compared to the position that they had before logout.
Not sure if its a marco bug or if this should be filed vs some other component...
This is actually a regression, it worked well till some point. Unfortunately I failed to note what update has caused it (I did not update my system regularly). Originally I noticed it on Fedora 29 which used marco 1.22.3, but I did not file a bug since by that time Fedora 30 was already available and I assumed I did not have the latest MATE version. In the meantime I updated to Fedora 31 yesterday and it's still using marco 1.22.3 - the problem is also still there.
Arrange the terminal window the way you like it, make sure the session is saved and log out.
Expected behaviour
This is how I arrange my terminals, I'd like to see the same arrangement when I log back in:
Actual behaviour
Instead, the windows shift by a few pixels, this is the screenshot after I logged out and had them arranged as above, and then logged in again:
Steps to reproduce the behaviour
Make sure you have "Save session" active, arrange the windows and log out. Log back in and see that they got restored with a certain offset compared to the previous position.
MATE general version
1.22
Package version
marco-1.22.3-1.fc31.x86_64
Linux Distribution
Fedora 31
Link to downstream report of your Distribution
I reported it here directly, please let me know if you'd like me to submit a bug with Fedora.
The text was updated successfully, but these errors were encountered: