pop-os / shell

Pop!_OS Shell
GNU General Public License v3.0
4.89k stars 266 forks source link

nemo progress dialogs tiled, not floating #1296

Open SevenSystems opened 2 years ago

SevenSystems commented 2 years ago

(1) Issue/Bug Description:

When using the nemo file manager, the progress dialogs opened by nemo when doing time-consuming operations is opened as a tiled window, not as a floating window (dialog).

(2) Steps to reproduce (if you know):

Enable tiling mode; Install the nemo file manager, then copy a large folder. The progress dialog that appears will occupy a new (mostly empty) tile instead of floating.

(4) Distribution (run cat /etc/os-release):

NAME="Pop!_OS" VERSION="21.10"

(5) Gnome Shell version:

GNOME Shell 40.5

(6) Pop Shell version (run apt policy pop-shell or provide the latest commit if building locally):

pop-shell:
  Installed: 1.1.0~1639174177~21.10~de901ae
  Candidate: 1.1.0~1639174177~21.10~de901ae
  Version table:
 *** 1.1.0~1639174177~21.10~de901ae 1001
       1001 http://apt.pop-os.org/release impish/main amd64 Packages
       1001 http://apt.pop-os.org/release impish/main i386 Packages
        100 /var/lib/dpkg/status

(7) Where was Pop Shell installed from:

Vendor

(8) Monitor Setup (2 x 1080p, 4K, Primary(Horizontal), Secondary(Vertical), etc):

1x 2560x1080, 1x 1280x1024 (to the left). Both horizontal.

(9) Other Installed/Enabled Extensions:

Disable unredirect fullscreen windows Just Perfection True Color Invert User Themes Dash to Panel

(10) Other Notes:

I tried adding a manual floating exception, but this can apparently only be done for ALL nemo windows, not just for the progress dialogs (there's not enough granularity in the rule selectors).

mmstick commented 2 years ago

Nemo should be assigning the dialog a dialog window type, or setting its transient parent. The rules are as granular as they can be, so if Nemo isn't setting appropriate window details, it can't be exempted.

SevenSystems commented 2 years ago

Nemo should be assigning the dialog a dialog window type, or setting its transient parent. The rules are as granular as they can be, so if Nemo isn't setting appropriate window details, it can't be exempted.

OK, so should I report this to the nemo maintainers instead? (It's indeed odd that the window type is not set to dialog).

Regarding more granular control: I assume currently the WM_CLASS is used for matching? It would definitely be possible to have more granular control, for example by matching the window title using regex (for example, KWin's Window Rules allow this).

mmstick commented 2 years ago

The class and title are used. You are given two options when selecting a window. To exempt it by class or class + title.

SevenSystems commented 2 years ago

Yes but as far as I can see, this doesn't allow partial matches or to edit the match in any way. The title of the progress dialog will change every time, for example it will contain the source / destination path of the folders being copied.

It would be really helpful to be able to edit the generated exception and then for example use partial title matches.

Anyway, will report this to the nemo guys too and ask why they aren't setting the window class to dialog.

SevenSystems commented 2 years ago

(it's probably more of a feature request than a bug report at this point, so feel free to close it :))

mmstick commented 2 years ago

The configuration file supports regex

SevenSystems commented 2 years ago

Awesome, thanks!

SevenSystems commented 2 years ago

Reported to nemo maintainers and already fixed there. https://github.com/linuxmint/nemo/commit/03666d769319636a591479d29fb482f15223604e