protonscr

Steam should not change the global mouse cursor theme

steamclosed reviewed
ValveSoftware/steam-for-linux#2 · opened 2012-12-20 by flyser · updated 2014-08-15 · 46 comments · github
Fflyser 2012-12-20 github

Several people have issues, because Steam changes the mouse cursor theme, which causes the cursor to be inverted sometimes. See this screenshot: http://i.imgur.com/R6Dwa.png
The problem persists in other applications even after Steam was closed.

System information:

Prozessor:
    Hersteller: GenuineIntel
    Geschwindigkeit: 2667 MHz
    4 logische Prozessoren
    3 technische Prozessoren
    HyperThreading:  Unterstützt
    FCMOV:  Unterstützt
    SSE2:  Unterstützt
    SSE3:  Unterstützt
    SSSE3:  Unterstützt
    SSE4a:  Nicht unterstützt
    SSE41:  Unterstützt
    SSE42:  Unterstützt

Netzwerk-Informationen:
    Netzwerk-Geschwindigkeit: 

Betriebssystem:
    "Gentoo Base System release 2.1" (64 Bit)
    Kernel-Name: Linux
    Kernel-Version: 3.6.8
    X-Server-Vendor: The X.Org Foundation
    X-Server-Release: 11300000

Grafikkarte:
    Treiber: NVIDIA Corporation NVS 3100M/PCIe/SSE2

    Treiber-Version: 3.3.0 NVIDIA 310.19
    Desktop-Farbtiefe: 24 Bit per Pixel
    Monitor-Aktualisierungsrate: 60 Hz
    Anbieterkennung: 0x10de
    Gerätekennung: 0xa6c
    Anzahl der Monitore: 1
    Keine Grafikkartenanzahl entdeckt
    Prim. Anzeigeauflösung: 1920 x 1080
    Desktop-Auflösung: 1920 x 1080
    Prim. Anzeigegröße: 34,4 cm x 19,3 cm (39,4 cm diag.)

    Primärer Bus: PCI Express 16x
    Primärer VRAM: 512 MB
    Unterstützte MSAA-Modi: 2x 4x 8x 16x 

Soundkarte:
    Audiogerät: Conexant CX20585

Speicher:
    RAM: 7837 MB

Weitere Daten:
    UI-Sprache: Deutsch (Deutsch)
    LANG:  de_DE.utf8
    Mikrofon: Not set
    Verfügbarer Festplattenspeicher insgesamt: 235572 MB
    Größter freier Festplattenspeicherblock: 53425 MB

Installierte Software:

Neueste Fehlerberichte:
    Sat Dec 15 23:00:48 2012 GMT: file ''/tmp/dumps/assert_20121216000046_1.dmp'', upload yes: ''CrashID=bp-39f2d035-a0ac-4e5c-8374-188a52121215''
    Sun Dec 16 20:42:39 2012 GMT: file ''/tmp/dumps/crash_20121216214237_1.dmp'', upload yes: ''CrashID=bp-229fa7fd-ca67-47c0-8b30-969272121216''
    Sun Dec 16 20:43:08 2012 GMT: file ''/tmp/dumps/assert_20121216214304_1.dmp'', upload yes: ''CrashID=bp-a2f6208d-279b-4ea5-b7fc-b17fd2121216''
    Sun Dec 16 23:48:34 2012 GMT: file ''/tmp/dumps/crash_20121217004833_1.dmp'', upload yes: ''CrashID=bp-f599ad91-37c2-4f5e-b563-50e682121216''
    Mon Dec 17 21:41:56 2012 GMT: file ''/tmp/dumps/crash_20121217224154_1.dmp'', upload yes: ''CrashID=bp-ab220a30-a38d-482a-a748-14ae32121217''
    Tue Dec 18 21:55:03 2012 GMT: file ''/tmp/dumps/crash_20121218225501_1.dmp'', upload yes: ''CrashID=bp-1242db39-2435-4ab9-b491-d47a02121218''
    Wed Dec 19 21:17:01 2012 GMT: file ''/tmp/dumps/crash_20121219221659_1.dmp'', upload yes: ''CrashID=bp-aa923b65-e092-4b03-8488-8cbe52121219''
    Wed Dec 19 21:17:22 2012 GMT: file ''/tmp/dumps/assert_20121219221720_1.dmp'', upload yes: ''CrashID=bp-f5f78820-6663-4050-9928-e65042121219''
Ddotboris 2012-12-20 github

You can reset the cursor back to what it was when steam is closed using
xsetroot -cursor_name left_ptr

Fflyser 2012-12-20 github

That is a workaround and not a bug fix. There is no reason for steam to mess around with the system mouse cursor theme.

Ddotboris 2012-12-20 github

I am well aware of that. This workaround could still help some people.

?ghost 2012-12-20 github

The workaround doesn't work, because Steam instantaneously changes the mouse pointer back to the inverted one while it is running. So I can't use the machine, while downloading something in the background.

Ppatientone 2012-12-20 github

http://wiki.gentoo.org/wiki/Steam#Mouse_cursor

"If your WM/DE does not set a mouse pointer theme, then Steam will overwrite the default X11 cursor theme, often resulting in a reversed pointer from left to right."

That page also provides a potential client-side fix of defining a default cursor theme for your profile. Hope this helps!

Ssnai 2012-12-20 github

I am using Gentoo and awesome window manager and can confirm this bug occurs too.

@fragstel I have set a cursor theme but still steam is changing it.

Ppatientone 2012-12-20 github

Hmm...Possibly change the file to read-only? I'd be sad if it replaces existing files that have nothing to do with Steam or any game.

?ghost 2012-12-20 github

The Gentoo description is wrong: My WM has set a mouse pointer theme (Oxygen Black), Steam simply overwrites it. Also changing it back while Steam is running doesn't work.

The pointer theme that Steam is forcing globally on all apps is called "xsetroot -cursor_name arrow", which is only used by very old apps for selecting menu items. So they just confused "arrow" with "right_arrow" or "default_ptr". But Steam should not change or lock the global cursor theme at all.

SSTrRedWolf 2012-12-20 github

I can confirm in Gentoo that Steam changes the cursor theme no matter what the original is. I'm using KDE on Gentoo.

Ppatientone 2012-12-20 github

Hopefully they will address this as it is a major issue (even if not everyone experiences it).

As for workarounds, does the below link help at all?

https://wiki.archlinux.org/index.php/Steam#Mouse_Cursor_Overwritten

Zzainin 2012-12-20 github

Yes, this workaround works.

Vvially 2012-12-20 github

:+1:

Mmdaffin 2012-12-20 github

I also suffer from this and non of the workarounds see to help :(

Running kde 4.10 on Archlinux.

Ppatientone 2012-12-20 github

@james147 not sure if it will help considering you are on KDE, but have you tried installing gnome-cursors-fix from the AUR?

Mmdaffin 2012-12-20 github

@fragstel turns out the fix only works with the Adwaita theme :( was attempting to use my native Oxygen one instead... so it isn't really a fix... just another cursor.

Bbldewolf 2012-12-20 github

This is really bizarre. I was working on an LD_PRELOAD hack to stop this when I realized that Steam is repeatedly changing the X cursor. Don't believe me? Install ltrace and run Steam as:

DEBUGGER="ltrace -e XDefineCursor" steam

You'll see that it recklessly hammers away with:

vgui2_s.so->XDefineCursor(0xa216cd8, 243, 0x2a00010, 0xffd6c490) = 1

repeatedly. I'm not sure what the intended behavior here is, but it definitely doesn't seem right.

Anyway, I have a repo with the LD_PRELOAD hack to neuter the cursor changing properly over at https://github.com/bldewolf/steam-cursorfix

Tteplyakoff 2012-12-20 github

Same issue. Cursor is changed and points to wrong direction and still wrong after steam was closed.
LXDE, archlinux

SSalamek 2012-12-20 github

Same here, please Steam, DONT TOUCH MY CURSOR!!! :-)

Ddanbruegge 2012-12-21 github

"Same here, please Steam, DONT TOUCH MY CURSOR!!! :-)" +1

Ttorval 2012-12-21 github

Mine is only inverted when I am actually pointing at something in the Steam window. As soon as I scroll off of it to my other monitor, it reverts back to the original pointer.

I would still like a fix for this however; I do not like the inverted cursor. It messes with my brain.

Mmdaffin 2012-12-21 github

@torval mine also revert back to normal on most applications, but on some applications (like when I hover over a menu in chromium) I get the backwards cursor (this does not happen before launching steam and continues after steam is closed).

Bbldewolf 2012-12-21 github

@torval @james147 I believe the reason that the cursor is broken in some applications and okay in others is that the X cursor, if it isn't set, is inherited from the root window. Steam changes the root window's cursor, so windows that have a cursor specified are still okay. (I suspect they didn't catch this because their test case involved a desktop application covering the root window so they never noticed?)

XXeHK 2012-12-23 github

I've just putted 'cursors' dir and 'index.theme' file of my cursor theme to ~/.icons/default directory and replaced in 'cursors' dir 'right_ptr' & 'right_side' with 'left_ptr' & 'left_side' file copies so they are the same now, and when steam makes my cursor right-sided I don't see any difference.

NNemoder 2012-12-25 github

@bldewolf thanks for posting the LD_PRELOAD hack, it's the only thing that has solved this for me.

SSaeron 2012-12-28 github

I have the same problem whit archlinux + xfce , and is really annoying. I dont want change my theme for one aplication, and i think that valve is who should fixed, not a hack.

Jjohnv-valve maintainer 2012-12-29 github

I think I have a fix for the Steam cursors affecting other windows. If anybody has a good repro for this on Ubuntu & Unity, that will help me verify that it's really fixed.

SSalamek 2012-12-29 github

@johnv-valve Ehmm i have just another idea, just dont touch our cursors at all! remove that piece of code from steam!
Its still normal window in DE...

SSaeron 2012-12-29 github

I dont understand why you need Ubuntu & Unity ? , is not arhc +xfce linux too?. If you need my help, i can try.

SSTrRedWolf 2012-12-29 github

I have the XFCE based Ubuntu (xubuntu) here for any testing. Same username here as over there.

FFreso 2012-12-29 github

@johnv-valve I can reproduce on Arch Linux with LXDE. Feel free to poke me. However, the proper Linux-way would be to not change the cursors from whatever is chosen in the DE/X environment, as @Salamek pointed out.

Ppete83 2013-01-01 github

Can confirm this bug on Ubuntu 12.10 with Gnome Shell as DE...
xsetroot -cursor_name left_ptr
works as a temporary workaround on my machine. The solution given in
https://wiki.archlinux.org/index.php/Steam#Mouse_Cursor_Overwritten
seems to have fixed my problem permanently (no long term test yet...)

Kkeithzg 2013-01-01 github

Verified with Kubuntu 12.10 running KDE 4.9.3. Creating all the symlinks for arrow, left_side, etc as per https://wiki.archlinux.org/index.php/Steam#Mouse_Cursor_Overwritten worked for me. Extremely silly for Steam to be changing the cursor.

SSaeron 2013-01-01 github

The solution is simply change the cursor theme to adwaita, but the problem is that steam should not change the global mouse cursor theme. I posible that this fails is for the problems whit gtk2 vs gtk3. Maybe need themes for gtk3.

LLiamDawe 2013-01-04 github

I noticed this too since i recently switched to kde as the unity launcher is a pain to properly work with. Moving my mouse over steam gives me a different cursor, please don't do this.

GGps2010 2013-01-05 github

Happens also on openSuse 64 bit KDE

In steam mouse points the other way.

Aarrowmaster 2013-01-08 github

Just got the new update and saw in the changelog that the cursor issue was 'fixed'. So I removed the ~/.icons/default fix and tried the new version. My cursor is normal outside of the steam window but I still get the backwards cursor inside the steam window.

Whatever it is you guys are trying to do to make the steam window look nice by changing the cursor is clearly not working since I still get the backwards cursor as a result of the cursor you are trying to set not existing. Please consider not touching the cursor at all or find a way to check if the cursor you want to use exists prior to changing it.

SSTrRedWolf 2013-01-09 github

I think the right-pointing mouse cursor can be chalked up to a different bug.

MMajkl578 2013-01-09 github

Yes, Steam is now not changing global cursor, but the cursor is wrong only for Steam itself. I opened new issue for that: #600.

Bbldewolf 2013-01-09 github

@johnv-valve Please consider changing Steam to use XUndefineCursor when it wants to set the cursor back to the default pointer. This allows it to inherit the system-wide cursor instead of (depending on settings) incorrectly setting it to XC_arrow.

I've implemented a fix using LD_PRELOADing to change the XDefines into XUndefines and it seems to work fine. bldewolf/steam-cursorfix@69e1801b53876977da68d041958a9492b2844300

Ddanbruegge 2013-01-09 github

Worked fine after new steam update. :)

SSalamek 2013-01-09 github

Global crusor is still "fucked up" after running updated steam, nothing is fixed ...

MMajkl578 2013-01-09 github

@Salamek: Are you sure it pollutes your system cursor? For me, the wrong cursor is only in Steam now, see #600.

MMrSchism 2013-01-09 github

Using Mint 14 Cinnamon, 32-bit... I am unable to reproduce. I've never had the issue.

LLiamDawe 2013-01-09 github

For me this issue is fixed, running firefox while steam is open if i opened a menu in firefox it changed the cursor now it does not, Steam having a weird cursor is Issue 600 linked above. This issue is fixed.

SSalamek 2013-01-10 github

@Majkl578 OK, now i rebooted my machine for sure and forced update on Steam, Global crusor is now OK so we can move to #600

MMrSchism 2013-01-10 github

I've only ever had it go back to my system's default which is why I never noticed the issue. By testing it on other cursor themes, it resorts back to DMZ-White for me (the default my OS uses). It may be going to a fallback or failsafe theme.

Nothing extracted yet.