Skip to content

Cannot Move Maximized Window From Landscape to Portrait Monitor #159

Open

Description

@7enderhead

Before filing a bug report...

Describe the bug
Two monitors, "A" in landscape as main, "B" in portrait to the left.

Reproduction Instructions...

  1. fullscreen window on A
  2. try to move to B with command "monitor-switch"
  3. this does not work, windows stays on A (maximized)
  4. first un-maximizing window and then moving from A to B works (although then not maximized on B, of course)
  5. moving maximized window from B to A works, window will be maximized on A
  6. switching B to portrait mode: moving maximized windows from A to B and back works
  7. affects all kinds of windows (browser, terminal, VS Code)

Debug Output:

DEBUG: Received keybind: <Primary>1
DEBUG: Executing command 'monitor-switch' with arguments (), {}
DEBUG: Gathering usable areas manually...
DEBUG: Loaded monitor geometry: [Rectangle(x=1200, y=0, width=2560, height=1440), Rectangle(x=0, y=20, width=1200, height=1920)]
DEBUG: Gathered _NET_WM_STRUT_PARTIAL value: [StrutPartial(left=1222, right=0, top=0, bottom=0, left_start_y=0, left_end_y=1439, right_start_y=0, right_end_y=0, top_start_x=0, top_end_x=0, bottom_start_x=0, bottom_end_x=0)]
DEBUG: Usable desktop region calculated as: Region(<Monitors=[Rectangle(x=1200, y=0, width=2560, height=1440), Rectangle(x=0, y=20, width=1200, height=1920)], Struts=[StrutPartial(left=1222, right=0, top=0, bottom=0, left_start_y=0, left_end_y=1439, right_start_y=0, right_end_y=0, top_start_x=0, top_end_x=0, bottom_start_x=0, bottom_end_x=0)]>)
DEBUG: Operating on window <Wnck.Window object at 0x731cba457c80 (WnckWindow at 0x312b9650)> with title "Start Page - Vivaldi" and geometry Rectangle(x=1222, y=0, width=2538, height=1440)
DEBUG:  Window is on monitor 0, which has geometry Rectangle(x=1200, y=0, width=2560, height=1440)
DEBUG:  Window is on monitor 0, which has geometry Rectangle(x=1200, y=0, width=2560, height=1440)
DEBUG: Moving window to monitor 1, which has geometry Rectangle(x=0, y=20, width=1200, height=1920)
DEBUG:  Window is on monitor 0, which has geometry Rectangle(x=1200, y=0, width=2560, height=1440)
DEBUG:  Repositioning to Rectangle(x=1222, y=20, width=1338, height=1420))

Activity

  1. changed the title [-]Cannot Move Fullsize Window From Landscape to Portrait Monitor[/-] [+]Cannot Move Maximized Window From Landscape to Portrait Monitor[/+] on May 27, 2026
  2. ssokolow commented on May 27, 2026

    @ssokolow
    Owner

    I'm about to go AFK right now, so I can't investigate the log in detail, but my first suspicion is that it might be another expression of a known bug which sometimes (not quite sure what the deciding factor is yet) causes monitor-switch to do nothing if the window is in a position on the current monitor which would be off the right edge of the destination monitor.

    (I've always seen it happen when trying to go from the right edge of my 1920x1080 monitor to one of my 1280x1024 monitors)

  3. ssokolow commented on May 31, 2026

    @ssokolow
    Owner

    OK. I'll need to do more experimentation, but I haven't been able to reproduce this so far and I'm starting to wonder if that width=2538, height=1440 part has something to do with it.

    I have only a single display in the house bigger than 1920x1080 and it's the big-screen TV, so my own QA testing never happens in HiDPI configurations.

  4. ssokolow commented on May 31, 2026

    @ssokolow
    Owner

    Also, I just noticed that you trimmed the header out of the --debug output. Please either reply with it or reply with the information it contains, since the bug may be specific to a WM I'm not using. (Since the WM has final veto over anything QuickTile requests.)

    DEBUG: Starting QuickTile [version] on [$XDG_CURRENT_DESKTOP] under Python [version]
    DEBUG: Host OS is [uname -a]
    DEBUG: Host distro is [lsb_release -a]
    

    (Also, if you are running a customized desktop environment where the value of $XDG_CURRENT_DESKTOP does not represent which window manager you are running, please include the --version output from your window manager.)

  5. 7enderhead commented on Aug 4, 2026

    @7enderhead
    Author

    Hmm, my debug output does not start with the info that you described, but here is the data polled manually:

    >echo $XDG_CURRENT_DESKTOP
    XFCE
    >python --version
    Python 3.12.3
    >uname -a
    Linux P15m 6.8.0-136-generic #136-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul  1 21:53:05 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux
    >lsb_release -a
    No LSB modules are available.
    Distributor ID: Linuxmint
    Description:    Linux Mint 22.1
    Release:        22.1
    Codename:       xia
    
  6. ssokolow commented on Aug 11, 2026

    @ssokolow
    Owner

    Thanks. Sorry for taking so long to reply. Busy week.

    I'll try to make some time within the next little while to set up a VM and attempt to replicate what you're describing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions