awesomeWM / awesome

awesome window manager
https://awesomewm.org/
GNU General Public License v2.0
6.38k stars 597 forks source link

"wmctrl -s nnn" only respected if mouse focus is on monitor aimed at #2907

Open Manfred-Knick opened 5 years ago

Manfred-Knick commented 5 years ago

<noise - deleted>

Manfred-Knick commented 5 years ago

awesome --version awesome v4.3-486-gf294ab37-dirty (Too long) • Compiled against Lua 5.1.5 (running with Lua 5.1) • D-Bus support: yes • xcb-errors support: no • execinfo support: yes • xcb-randr version: 1.6 • LGI version: 0.9.0

Setting up a quad Monitor via xrandr, commanding "wmctrl -s nnn", a following application only starts on the correct Screen IFF the mouse is hovering above the desired goal monitor; then the appropriate Screen / Tag will be activated; otherwise the application will start on the currently active Screen / Tag.

Manfred-Knick commented 5 years ago

Example from within a bash command file: wmctrl -s 22 /usr/bin/thunderbird & which gets started as an awesome menu enty.

Manfred-Knick commented 5 years ago

Probably unrelated:

$ lspci | grep -i vga 02:00.0 VGA compatible controller: NVIDIA Corporation GP104 [GeForce GTX 1070 Ti] (rev a1)

$ uname -a Linux ########## 5.3.5-gentoo #1 SMP Tue Oct 8 19:00:25 CEST 2019 x86_64 Intel(R) Xeon(R) CPU E3-1276 v3 @ 3.60GHz GenuineIntel GNU/Linux

$ equery list nvidia* [IP-] [ ] sys-firmware/nvidia-firmware-340.32:0 [IP-] [ ] x11-drivers/nvidia-drivers-435.21:0/435

X: [IP-] [ ] x11-base/xorg-drivers-1.20:0 [IP-] [ ] x11-base/xorg-proto-2019.1:0 [IP-] [ ] x11-base/xorg-server-1.20.5:0/1.20.5 [IP-] [ ] x11-base/xorg-x11-7.4-r3:0 [IP-] [ ] x11-drivers/xf86-input-evdev-2.10.6:0 MESA: [IP-] [ ] media-libs/mesa-19.1.7:0 [IP-] [ ] x11-apps/mesa-progs-8.4.0:0

Manfred-Knick commented 5 years ago

$ equery list awesome [I-O] [ ] x11-wm/awesome-9999-r1:0 This is the original MPT, modified only by adding "ON OFF" (c.f. Awesome issue 2782 / Gentoo Bug 687376)

psychon commented 5 years ago

Assuming you use the default config: The default config assigns a new client to the screen that currently has the mouse pointer via an awful.rules-rule, specifically the rule with rule = { } and screen = awful.screen.preferred. A new client will then get tagged with whatever tag is selected on that screen (this happens through some code in awful.tag that is connected to the property::screen signal and itself emits request::tag). If you switch to another tag on another screen, then this does not influence any of this.

If you want new clients to get assign to the tag that was last selected... uhm... this requires a bit of code, but I do not think you really want to do this.

Why don't you just create an awful.rules-rule that always assigns thunderbird to whichever tag tag 22 is?

Manfred-Knick commented 5 years ago

I use bash scripts to set up different projects for different customers.

Earlier, using ZapHod Mode with multiple GAs / four monitors resulting into four separate X Screens, I was able to command . . . the Screen [1..4] : "export DISPLAY=:0.$disp" . . . and tag [o..9] : "wmctrl -s n" to be used, and setup even the same application with different parameters multiple times, on different screens / tags, all from one single bash script, independent from where the mouse accidentally resides. (Perhaps you remember the descriptions from issue #598.)

Now, with four Monitors attached to one GA, there is only one single X Screen, I have to use four (!) separate (sub-) scripts, move the mouse to the Monitor in question, and call the respective (sub-) script for the tags of this monitor? And, curiosity on top, I still have to command tag numbers between 1 to 4*9 ?

"wmctrl -s" should be respected.

Manfred-Knick commented 4 years ago

PING: OP dates from 7 months ago.

Additional Information: With current x11-wm/awesome-9999:0, even the described behaviour fails and all applications get being dropped to the first tab on the monitor where the mouse resides.

Elv13 commented 4 years ago

As @psychon mentions, the default config has a default rules. Those rules define where apps go. Many apps, including all KDE ones try to remember where they were last used and go back there. The behaviour is unwanted in a tiling WM with tags.

The current behaviour will not be changed. Please use awful.rules (now called ruled.client in git-master) to control where clients open.

Manfred-Knick commented 4 years ago

@ Elv13 : Tl;dr? Bashing me with your fantasies instead?

AFAICS, you are trying to sell the (non-existant) 'necessity' or at least 'irrelevance' of a bug against an (unrelated) feature. That's poor.

Feel free to close as "WONTFIX".

All the best.

Manfred-Knick commented 4 years ago

man wmctrl: . wmctrl - interact with a EWMH/NetWM compatible X Window Manager .......................................^^^^^^

awesomewm.org: . Features: . . "Implements many Freedesktop standards: EWMH, ..." .........................................................................^^^^^^

BTW, I wonder why awesome hides every reference to being "based on dwm source code" [ https://web.archive.org/web/20090406012657/http://article.gmane.org/gmane.comp.window-managers.dwm/3285/match=awesome ] on it's (introductory) homepage.