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

Cannot disable scaling? #161

Open
CNG opened this issue Mar 30, 2024 · 2 comments
Open

Cannot disable scaling? #161

CNG opened this issue Mar 30, 2024 · 2 comments

Comments

@CNG
Copy link

CNG commented Mar 30, 2024

Hello, I'm not sure if this is a bug or I am misinterpreting the docs. Please let me know if this sounds wrong and what info I can provide.

I am attempting to use way-displays with a laptop and a docked external display, which I would normally use instead of the laptop screen when docked. I always want that display scaled to 1.0, and the laptop screen I usually keep at 1.25 but like to be able to increase or decrease this depending on the situation.

Prior to using way-displays, my Sway config looked like:

output eDP-1 scale 1.25
bindsym $mod+$alt+1 output eDP-1 scale 0.50
...
bindsym $mod+$alt+5 output eDP-1 scale 1.25
...
bindsym $mod+$alt+9 output eDP-1 scale 2.00

Per the way-displays instructions, I replaced the output line with way-displays .... Initially things seemed to work fine, but I discovered my shortcut keys to change the eDP-1 scale work for a fraction of a second before way-displays reverts the change. This happens even when I have SCALING and AUTO_SCALE set to off, and no specific SCALE set for eDP-1.

Here's an example of the log where you can clearly see those two features are turned off, but still the scaling is getting changed:

I [22:20:07] Reloading configuration file: /home/cgorichanaz/dotfiles/files/config/way-displays/cfg.yaml
I [22:20:07]
I [22:20:07] New configuration:
I [22:20:07]   Arrange in a ROW aligned at the TOP
I [22:20:07]   Scaling: OFF
I [22:20:07]   Auto scale: OFF (min: 1.000)
I [22:20:07]   Scale:
I [22:20:07]     PHL 328E1: 1.000
I [22:20:07]   Mode:
I [22:20:07]     PHL 328E1: 3840x2160@30Hz
I [22:20:13]
I [22:20:13] eDP-1 Changing:
I [22:20:13]   from:
I [22:20:13]     scale:     1.125 (2.523)
I [22:20:13]     position:  3840,0
I [22:20:13]     mode:      2880x1800@120Hz (120,001mHz) (preferred)
I [22:20:13]     VRR:       on
I [22:20:13]   to:
I [22:20:13]     scale:     1.000

Does this make sense?

I apparently can execute from my shell way-displays --set SCALE eDP-1 1.25 to change the laptop scale (though that ONLY works with SCALING: TRUE). So maybe I should have scaling turned back on in way-displays and then have all my bindsym lines in the Sway config call out to way-displays like:

bindsym $mod+$alt+3 exec way-displays --set SCALE eDP-1 1.00
bindsym $mod+$alt+5 exec way-displays --set SCALE eDP-1 1.25

That should be workable for me. Ideally I'd like to be able to change the scaling on all my displays with this shortcut key, but since I usually only want to do this for my laptop screen when that's the only display, it's not a big deal.

@alex-courtis
Copy link
Owner

Here's an example of the log where you can clearly see those two features are turned off, but still the scaling is getting changed:

That is working as intended: SCALING FALSE will disable all scaling and set every display to 1.0, regardless of SCALE and AUTO_SCALE.

You could set SCALING TRUE temporarily to play a game that cannot scale.

I apparently can execute from my shell way-displays --set SCALE eDP-1 1.25 to change the laptop scale (though that ONLY works with SCALING: TRUE). So maybe I should have scaling turned back on in way-displays and then have all my bindsym lines in the Sway config call out to way-displays like:

That looks right. SCALING TRUE will use your SCALE, then fall back to AUTO_SCALE. Two scales bound like that is a common "docked and undocked" use case.

Per the way-displays instructions, I replaced the output line with way-displays .... Initially things seemed to work fine, but I discovered my shortcut keys to change the eDP-1 scale work for a fraction of a second before way-displays reverts the change. This happens even when I have SCALING and AUTO_SCALE set to off, and no specific SCALE set for eDP-1.

This is a problem. It sounds like there are two display managers fighting over your displays. We will resolve that.

Please attach the full log for the "fraction of a second" case when you hit your binding. That will show your cfg.yaml at the start.

@alex-courtis
Copy link
Owner

It shouldn't happen but there may be two way-displays running. Please check ps ux | grep way-displays

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

2 participants