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

A button to temporarily disable tiling #821

Open
matj1 opened this issue Apr 8, 2024 · 5 comments
Open

A button to temporarily disable tiling #821

matj1 opened this issue Apr 8, 2024 · 5 comments
Labels
enhancement Adds a new feature or extends scope would-accept-PR Would accept PR if someone is interested in working on this

Comments

@matj1
Copy link

matj1 commented Apr 8, 2024

Is your feature request related to a problem? Please describe.

Yes. Some applications work badly with window tiling and scrolling. These are ones with many windows like REAPER and ones with fullscreen views like OpenLP and LibreOffice Impress. I would like that the issues of the applications would be solved, but disabling tiling temporarily is a general workaround for all problems with tiling.

Describe the solution you'd like.

I want a button to disable the functionality of PaperWM without disabling the whole extension.

PaperWM has a button in the top bar, but it has only one function – toggle centering. I imagine that the button would show a menu with various options like to toggle centering, disable tiling and open settings. Pop Shell adds a button to the top panel like PaperWM, and the button shows a menu with settings. So PaperWM could have it similarly.

Describe alternatives you've considered

The only way to disable tiling temporarily AFAIK is to disable the extension, and that is inconvenient. It discourages me from enabling PaperWM back after the problem with tiling disappears.

@matj1 matj1 added the enhancement Adds a new feature or extends scope label Apr 8, 2024
@jtaala
Copy link
Collaborator

jtaala commented Apr 8, 2024

Yes. Some applications work badly with window tiling and scrolling. These are ones with many windows like REAPER and ones with fullscreen views like OpenLP and LibreOffice Impress.

I can't reproduce issues with LibreOffice Impress. Any chance you could take a video or screenshot which shows the issue?

Generally for this we'd scratch the window/app (scratching removes the window from tiling):

https://github.com/paperwm/PaperWM?tab=readme-ov-file#scratch-layer

Afterwards, you can toggle / unscratch the window from tiling.

Note: scratch makes the windows float above all tiling and PaperWM spaces.

@matj1
Copy link
Author

matj1 commented Apr 8, 2024

Scratching does not help here. Reaper creates windows which are automatically scratched in PaperWM, so they are on top over other windows, and they can't be minimised. So they are always visible, even if REAPER is out of view scrollwise or on an other workspace. If I could have one change in PaperWM, it would be so that floating dependent windows would scroll with the tiled windows on which they depend.

The problem with Impress is that the presentation is not shown if presenter view is enabled. That happened to me also when I was using Pop Shell, so I had to disable it to present with presenter view. This seems like not a problem with PaperWM, but how Impress interacts with window-placing extensions in general.

The problem with OpenLP is that, while I am switching windows by the means provided by PaperWM, the fullscreen view is hidden. That is if bypassing X11 (an option in OpenLP) is disabled. If bypassing X11 is enabled, switching windows does not hide the fullscreen view, but showing the GNOME overview does (which is not a problem of PaperWM, but I it is why I have that option disabled).

But this is my point:

You could fix all the mentioned issues, but they aren't all issues with specific applications and tiling. So disabling PaperWM's functionality is an easy way to work around all such issues before they are fixed.

@jtaala
Copy link
Collaborator

jtaala commented Apr 8, 2024

You could fix all the mentioned issues

Or you could...? I'd be happy to accept a PR for this for sure from anyone that this functionality would interest- but I don't see how we would disable PaperWM functionality without... disabling PaperWM.

So disabling PaperWM's functionality is an easy way

From PaperWM's assumptions for windows and scratching this is definitely not easy and would require a lot of refactoring to partly disable certain things... when we have a good way to already do this (disabling all of PaperWM functionality).

I'd be happy to accept a PR though if you want to give it a go, but it's not something I would work on when we can enable/disable PaperWM already (with keybinds or methods).

A couple of options to make it easier:

  • https://extensions.gnome.org/extension/3088/extension-list/ (nice dropdown to disable/enable extensions)
  • create a Gnome keybind custom shortcut to disable PaperWm and re-enable, calling something like:
    • sh -c "/usr/bin/gnome-extensions disable paperwm@paperwm.github.com"
    • sh -c "/usr/bin/gnome-extensions enable paperwm@paperwm.github.com"
    • image

@jtaala
Copy link
Collaborator

jtaala commented Apr 8, 2024

I'll leave this one open and add a would-accept-PR tag so others can work on this one if they want.

@jtaala jtaala added help wanted Don't hesitate to participate! would-accept-PR Would accept PR if someone is interested in working on this and removed help wanted Don't hesitate to participate! labels Apr 8, 2024
@oisanjaya
Copy link

I think it would be better if this "temporary disabling" applied on workspace basis.

I opened new issue #921 asking option to disable tiling on specific workspace.

That way we can create special workspace to contain applications that don't work best on tiling window managers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Adds a new feature or extends scope would-accept-PR Would accept PR if someone is interested in working on this
Projects
None yet
Development

No branches or pull requests

3 participants