Skip to content
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

[Bug]: Mouse interaction problems when moving program to external monitor with interface scaling #3576

Closed
mrmatteastwood opened this issue Dec 1, 2024 · 2 comments

Comments

@mrmatteastwood
Copy link

Describe the bug

Running any program on an external screen causes issues. For instance, in SMBX2 and XRECODE3, the interface is not clickable. It does not respond to any input. Also, on my 75" 4K TV, the interface of these two programs is rendered extremely tiny, it's barely legible. The TV screen is set to 150% scaling.

Running bstone, a source port for the old Apogee 3D shooter Blake Stone, the mouse cursor doesn't get captured during gameplay. So if I turn far to the left, the mouse cursor leaves the game window, and now if I click the left mouse button to shoot, the game window loses focus and I'm dead.

To Reproduce

Blake Stone

  1. Get the bstone Blake Stone source port on http://bibendovsky.github.io/bstone/
  2. Get the Blake Stone shareware version here: https://dosgames.com/game/blake-stone-aliens-of-gold/
  3. Put it into the same directory as the source port
  4. Run the source port on a laptop with external screen (in my case, attached via HDMI)
  5. Game will run on internal screen
  6. Move to external screen
  7. Enter gameplay
  8. Move mouse very far left or right until mouse cursor appears on laptop screen
  9. Click left mouse button

SMBX2

  1. Get SMBX2 on https://codehaus.wohlsoft.ru/
  2. Run installer, it'll open on the internal screen
  3. Move it to the external screen
  4. You won't be able to click on anything
  5. Move back to internal screen
  6. Install SMBX2
  7. Run SMBX2
  8. Move SMBX2 window to external screen
  9. Again, same as step 4

Package

Flatpak from Flathub

Distribution

Linux Mint 22

Debugging Information

Official Package: true
Version: '51.15'
DE/WM: cinnamon
Display:
    X.org: true
    X.org (port): :0
    Wayland: false
Graphics:
    vendors:
        nvidia: &id002
            vendor: nvidia
            envs:
                __NV_PRIME_RENDER_OFFLOAD: '1'
                __GLX_VENDOR_LIBRARY_NAME: nvidia
                __VK_LAYER_NV_optimus: NVIDIA_only
            icd: /usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/nvidia_icd.json
            nvngx_path: /usr/lib/x86_64-linux-gnu/GL/nvidia-560-35-03/extra/nvidia/wine
        intel: &id001
            vendor: intel
            envs:
                DRI_PRIME: '1'
            icd: /usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/intel_hasvk_icd.x86_64.json:/usr/lib/x86_64-linux-gnu/GL/vulkan/icd.d/intel_icd.x86_64.json:/usr/lib/i386-linux-gnu/GL/vulkan/icd.d/intel_hasvk_icd.i686.json:/usr/lib/i386-linux-gnu/GL/vulkan/icd.d/intel_icd.i686.json
    prime:
        integrated: *id001
        discrete: *id002
Kernel:
    Type: Linux
    Version: 6.8.0-49-generic
Disk:
    Total: 16628084736
    Free: 16627896320
RAM:
    MemTotal: 31.0GiB
    MemAvailable: 23.9GiB
Bottles_envs: null

Troubleshooting Logs

No response

Additional context

No response

@mrmatteastwood
Copy link
Author

Quick follow-up: the issue also occurs when setting the external screen to 1920x1080 and 100% scaling.

Also, I noticed that the windows even become unresponsive when moving them to the right third of the internal screen. As soon as a bit of the window leaves a certain area on the internal screen, and then the whole external screen, it becomes unresponsive to mouse clicking.

Disabling the internal screen is not an option because that breaks vsync. Vsync using Nvidia's "force composition pipeline" option only works when both screens are on and set to 60Hz, as soon as I disable the internal one, it defaults to 240 Hz, creating a refresh rate mismatch and breaking vsync.

@mrmatteastwood
Copy link
Author

SOLVED: These problems don't occur when using the Sys Wine runner. Others occur instead, but them's the breaks and if all else fails, I can live with them :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant