ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.23k stars 174 forks source link

Keyboard input not being captured by search fields. #5738

Open Zerophase opened 6 years ago

Zerophase commented 6 years ago

Your system information

Please describe your issue in as much detail as possible:

Typing in search fields does not capture input. I can't search game's owned or the store. Issue exists in both native and steam runtime.

Steps for reproducing this issue:

  1. Install Arch Linux.
  2. Setup cinnamon. (not sure if the desktop matters)
  3. Launch steam.
Zerophase commented 6 years ago

Also applies to chat.

RyuueikenLiu commented 6 years ago

Me too.It seems that no plug-ins calls Fictx or IBus for inputting. Maybe we need a plug-ins to call Fictx or IBus.

RyuueikenLiu commented 6 years ago

By the way ,the issue happens on when you input Chinese,Japanese or Korean which language inputting based on IME. Sorry,my English is not very well.Do you understand what I said?

nanawel commented 6 years ago

Ha, finally found people with this issue too. I don't know if it's the same for you, but for me keyboard does not work at all with Steam and Steam games. I cannot even type my password in the login box. And if I use copy-paste (with right-click of course), I cannot then use any input text box on the store, the community, etc.

Then in games I cannot enter the name of my savegames either. But some functions seem to work, like camera control in Cities Skylines (pan/tilt).

It was working perfectly until some date at the beginning of september, after an upgrade (but I don't know which one).

I have an up-to-date Archlinux with Steam build 1539393410.

anthraxx commented 6 years ago

Works perfectly fine here, but i would recommend that people who write "me too" basically provide some more info about their environments to find possible similarity. desktop-environment, window-manager, compositor, x11/wayland

Zerophase commented 6 years ago

Yeah, I don't think it's working in games for me either. Just text input does not work. All keybutton presses work.

nanawel commented 6 years ago

Works perfectly fine here, but i would recommend that people who write "me too" basically provide some more info about their environments to find possible similarity. desktop-environment, window-manager, compositor, x11/wayland

Sure. So I'm using XFCE (4.12) with xfwm4 (4.12.5) on X11 (1.20.2).

RyuueikenLiu commented 6 years ago

I'm using GNOME with Deepin WM on Cantarell 11.

RyuueikenLiu commented 6 years ago

Yeah, I don't think it's working in games for me either. Just text input does not work. All keybutton presses work.

Does your inputting base on IME such as Fictx or IBus? I need to imput Chinese in the boxes,but it does not work.If I input English,that's OK.So maybe the issue I encountered is that the inputting does not call the IME.

Zerophase commented 6 years ago

Yeah, I don't think it's working in games for me either. Just text input does not work. All keybutton presses work.

Does your inputting base on IME such as Fictx or IBus? I need to imput Chinese in the boxes,but it does not work.If I input English,that's OK.So maybe the issue I encountered is that the inputting does not call the IME.

Nope, just using traditional latin character inputs.

nanawel commented 6 years ago

Yeah, I don't think it's working in games for me either. Just text input does not work. All keybutton presses work.

Does your inputting base on IME such as Fictx or IBus? I need to imput Chinese in the boxes,but it does not work.If I input English,that's OK.So maybe the issue I encountered is that the inputting does not call the IME.

Same for me, I'm just using fr-latin1. BTW having ibus daemon enabled or disabled doesn't make any difference (just in case it could matter).

nanawel commented 5 years ago

I can also add that for example I'm able to use the keyboard for movements and actions in L4D2. But again here I cannot type text anywhere. I thought it was important to mention this.

Zerophase commented 5 years ago

Alright, I just made a Virtualbox Arch VM, with a bare bones Cinnamon install and Steam. Steam runtime and native works fine for text input, and enabling the Steam beta client works fine as well.

On the host system uninstalling and reinstalling steam does not fix the issue. I did not delete the beta install, though.

Here are the packages on my system. https://pastebin.com/BDuZrRsb Are there any packages we share, outside of the steam and steam-native-runtime dependencies?

nanawel commented 5 years ago

That's an interesting feedback. Although I did try to run Steam on a different PC without any issue, I can reproduce it on 2 different machines: my desktop (which is obviously my main concern) and a laptop. Both run up-to-date Archlinux with Xfce 4.12 and the proprietary Nvidia drivers. They also share a similar software configuration, but here again it's hard to say which part is the troublemaker.

Zerophase commented 5 years ago

Here's the steam log from native and runtime. By the way, if I paste text into the text box I can delete text with backspace, but cannot type anything in.

I tried deleting everything in home, uninstalling, rebooting, and reinstalling to no avail. The only thing I could possibly think of is it might be an issue with SDL2 being on 2.0.9.

Zerophase commented 5 years ago

Well, rebuilt my system in a vm copy of my system, and the issue with keyboard input never cropped up.

nanawel commented 5 years ago

That's what I wanted to do too, but I expected the same result as you got. There must be a misconfiguration somewhere, but I can't figure it out. I'm really annoyed by this issue, since it doesn't seem like it's going to be fixed by any upgrade so far.

nanawel commented 5 years ago

I've created a fresh new user, using Gnome instead of Xfce and with a lot less of background tasks but I can also reproduce the problem with it. So I guess we can say it likely comes from the system, not from the user session.

Zerophase commented 5 years ago

If anyone has this problem and is using the proprietary nvidia drivers, maybe try switching to nuevo, and seeing if that fixes it.

nanawel commented 5 years ago

If anyone has this problem and is using the proprietary nvidia drivers, maybe try switching to nuevo, and seeing if that fixes it.

Well, in the event it would fix the issue indeed, I wouldn't be able to play games anymore with this driver at it still lacks decent performances. So... meh.

But thanks for bumping this thread, I'm dying here with my unusable Steam ;)

Zerophase commented 5 years ago

If anyone has this problem and is using the proprietary nvidia drivers, maybe try switching to nuevo, and seeing if that fixes it.

Well, in the event it would fix the issue indeed, I wouldn't be able to play games anymore with this driver at it still lacks decent performances. So... meh.

But thanks for bumping this thread, I'm dying here with my unusable Steam ;)

I'm just trying to figure out if it is a driver issue, considering the nvidia driver is not loaded in a vm.

nanawel commented 5 years ago

Yes sure, no offense of course.

RyuueikenLiu commented 5 years ago

In my situation, maybe I just need a Chinese input method plugin for inputting Chinese.

nanawel commented 5 years ago

Bumping a bit this thread, I have another test to add: using the virtual keyboard (OnBoard in my case) does not work either. So I cannot type letters on any Steam window even with a virtual keyboard!

mshade commented 5 years ago

I had this issue as well and for me, it seems to have been caused by missing locale information. I had added NoExtract settings in pacman.conf to try to skip installing unnecessary language support. Turns out some were necessary :)

After removing the NoExtract options and reinstalling all system packages, Steam input now works. Hooray!

To do the same, clean out your pacman.conf and then:

# pacman -Qqn | pacman -S -

It was actually dmenu_run that led me to the root cause. It segfaulted when text was entered, leading me to the missing locale files, and the NoExtract option I had added months ago. It seems that the issue only pops up after certain packages are updated and locale files begin to go missing - tricky!

nanawel commented 5 years ago

Hooo that does seem right @mshade! I did not notice at the time but the issue must have arisen when I added a bunch of items in the NoExtract section (locales, to save space). But as you say, it did not appear immediately, but probably after some upgrades several days later.

I'll check that asap. Thank you very much for your help. It would be even better to know exactly what locale files are necessary so that we could still use some NoExtract instructions to save space.

kisak-valve commented 3 years ago

Hello @Zerophase, are you still experiencing this issue on an up to date system? If you are, please share the output of locale -a. In particular, I'd like to know if en_US.utf8 or possibly C.utf8 / C are in the list.

nanawel commented 3 years ago

At least for my case, @mshade's solution worked perfectly, and I had no other issue after reinstalling all packages without skipping locales.

Zerophase commented 3 years ago

@kisak-valve I had those packages on my system at the time. Steam works fine now that I installed all the locales. I believe there's a check somewhere in the code that requires foreign language packs or the search functionality does not work. I should have a back up of the old pacman.conf that led to the issue if that helps.

kisak-valve commented 3 years ago

We know that Steam wants for en_US.utf8 to be available, and but has a couple fallback options. It sounds like the system didn't provide any locale that Steam expected to be available and that's not a particularly common system config.

Hello @RyuueikenLiu, your issue is separate and being tracked at #781 and #3255.

Zerophase commented 3 years ago

It did. Every open source application, and other closed source app worked fine. It's a bug in Steam that requires multiple language packs installed. I don't know which specific language pack is not needed. There's probably a nesting issue somewhere. I can reproduce the issue in a couple days to help you track it down, and just doing a default install of Arch with my pacman conf will remove all language packs other than en_US.utf8, and C.utf8. (any other English related packs stay on the system as well)

All text in Steam displays properly. It's just a bit of code that impacts the search box that has issues. I can copy and paste text from another app, and still search if I remember correctly.

I understand that not everyone does this. This would just improve the Linux ecosystem, which I believe benefits Valve long term.