Skip to content

Zoom/magnifier #1024

@YaLTeR

Description

@YaLTeR

Accessibility feature that zooms in the screen around the cursor.

This works https://github.com/negrel/wooz but is a bit fiddly to run.

Need to see how the magnifier works in other compositors, especially GNOME and KDE. I pretty much never used it so I'm not sure what the expected UX is.

Tentatively, I'm thinking discrete actions could look something like:

binds {
    Mod+Alt+WheelScrollUp   { set-zoom-level "+10%"; }
    Mod+Alt+WheelScrollDown { set-zoom-level "-10%"; }
}

But it should ideally be a gesture to use high-precision touchpad swipe input and high-precision scroll inputs (if the mouse supports it).

For other monitors (the ones where the cursor currently isn't) I guess we don't do any zooming?

When opening the screenshot UI, need to see what would feel good to use.

Implementation-wise, idk how cursed it would be to simply scale all render elements on an output? If it works, then it's probably fine for the first implementation. Though, it will do bilinear scaling rather than nearest.

If this doesn't work, or for nearest scaling, we would probably want to render into a texture, then render that texture, upscaled around the cursor with the nearest filter. Not sure how this will work with damage tracking though.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions