Bug 314790

Summary: KDE Task switcher does not appear on correct Dual Monitor screen, ignores the cursor on the monitor as the active screen.
Product: [Plasma] kwin Reporter: nwenclaff
Component: multi-screenAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: NOR    
Version: 4.9.0   
Target Milestone: ---   
Platform: Archlinux   
OS: Linux   
Latest Commit: Version Fixed In:

Description nwenclaff 2013-02-09 20:33:43 UTC
When I press Alt+Tab I 80% of the time will not get anythig, the other 15% the task switcher shows up on the wrong screen (I have dual monitors with Xorg.conf using Seperate X  Screen Layout not twinview as it does not play nice with full screen flash videos (shows up on 2nd monitor and not hte primary)), and the remainder of the 5 % the window switcher shows up on the correct "primary" screen.

Below is my /etc/X11/xorg.conf

____________________________

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 313.18  (buildmeister@swio-display-x86-rhel47-11)  Wed Jan  9 16:22:20 PST 2013

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 1024 0
    Screen      1  "Screen1" LeftOf "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "CRT-1"
    HorizSync       28.0 - 55.0
    VertRefresh     43.0 - 72.0
    Option         "DPMS"
EndSection

Section "Monitor"

    # HorizSync source: builtin, VertRefresh source: builtin
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Seiko/Epson EPSON PJ"
    HorizSync       15.0 - 92.0
    VertRefresh     50.0 - 85.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 550 Ti"
    BusID          "PCI:1:0:0"
    Screen          1
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 550 Ti"
    BusID          "PCI:1:0:0"
    Screen          0
EndSection

Section "Screen"

# Removed Option "nvidiaXineramaInfoOrder" "DFP-5"
# Removed Option "metamodes" "DFP: nvidia-auto-select +0+0"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "CRT-1"
    Option         "metamodes" "CRT: 1024x768 +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"

# Removed Option "metamodes" "CRT: 1024x768 +0+0"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-5"
    Option         "metamodes" "DFP: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection


Reproducible: Always

Steps to Reproduce:
1. Install Arch Linux from scratch so it is brand new nothing is modified
2. Install KDE and activate it via systemctl enable kdm.service; login
3. Configure Seperate X Screen via Nvidia-Settings
4. Press Alt + Tab 
Actual Results:  
Task Switcher occasionally shows up, if at all on the wrong screen...doesn't even take into account which monitor the cursor is on.

Expected Results:  
Task switcher to show up on the active screen in question.
Comment 1 Martin Flöser 2013-02-10 08:30:09 UTC
> 3. Configure Seperate X Screen via Nvidia-Settings
why are you using this feature? If you want to have proper multi-screen don't use that.
Comment 2 Thomas Lübking 2013-02-10 08:54:08 UTC
partial dupe of #256242, there's a patch attached. also see https://git.reviewboard.kde.org/r/107853/

This does fix the problem halfwise, the situation about kglobalacceld is extensively discussed on the dupe.

Needs rebase to current master and on top of the present Xcb wrapper class.

*** This bug has been marked as a duplicate of bug 256242 ***
Comment 3 nwenclaff 2013-02-10 20:19:26 UTC
I use separate X Screens because if I use twinview the full screen flash shows on the second monitor and not the 1st monitor like I want it to - also twinview will occasionally start applications up in the wrong monitor , If i use separate X Screens the app will show up in the monitor it was selected from and is non transferable to the other monitor.
Comment 4 Thomas Lübking 2013-02-10 20:24:39 UTC
still dupe, the problem is more complex and all the info is over there.

With 4.10 you'll be able to enforce a screen for windows by windowrule. since nvidia also has complete xrandr support now, i suggest you'll give twinview another try then.

*** This bug has been marked as a duplicate of bug 256242 ***