peterfajdiga / peterfajdiga/karousel

[Compatibility] winewayland and scrcpy windows don't move or resize properly

Open
#194 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
1.1k
Forks
45
PR merge metrics
No merged PRs in 30d

Description

Karousel version: 8b9f0b62b2922703d7c25a79d5d49ae93cd3f93b
Plasma version: 6.7.4
X11 / Wayland: Wayland

Window class: .scrcpy-wrapped (this should be scrcpy on non-NixOS), resourceName is scrcpy
Window caption (title):
Window type: NET::Normal

Window class: Executable name (e.g. musicbee.exe), resourceName is wine-preloader
Window caption (title):
Window type: NET::Normal

Description:

These windows don't move or resize properly, or its extremely delayed if they decide to move. scrcpy tries to maintain aspect ratio, but winewayland windows don't. I can resize both of them by normal means just fine.

mpv is another example of a window that maintains aspect ratio (by default, the behavior can be disabled with --keepaspect-window=no), but I haven't tested if it also suffers from the same issues as I use --keepaspect-window=no myself.

Example of janky movement with scrcpy

https://github.com/user-attachments/assets/684f2457-98ff-4810-8154-dd4cd814311d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the behavior with the reported .scrcpy-wrapped/scrcpy and wine-preloader windows under Wayland, comparing movement and resizing with normal windows. The issue names no source file or test, so trace the window-movement and resize handling from the reported window classes; done means both applications move and resize responsively without breaking existing window behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.