Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Raw input fails to initialise correctly occasionally #3364

Closed
Addalt opened this issue Sep 5, 2018 · 13 comments
Closed

Raw input fails to initialise correctly occasionally #3364

Addalt opened this issue Sep 5, 2018 · 13 comments
Milestone

Comments

@Addalt
Copy link

Addalt commented Sep 5, 2018

When starting the game with raw input initialised, there is a chance it will not work.

Note: this issue thread has been repurposed to track a more specific issue. for tablet related issues, see #3911

@Gabixel
Copy link
Contributor

Gabixel commented Sep 9, 2018

The same happens to me with a normal wireless mouse, but in a different way: when I launch osu!lazer with the raw input, the mouse works perfectly, but for no reason, it disconnects. When I reconnect it, your same problem happens, and I have to relaunch osu!lazer / disable Raw Input

@peppy
Copy link
Member

peppy commented Sep 9, 2018

What host operating system are you both on?

@Gabixel
Copy link
Contributor

Gabixel commented Sep 9, 2018

Windows 10 Home (64bit)

@Addalt
Copy link
Author

Addalt commented Sep 9, 2018

Windows 10

@smoogipoo smoogipoo added this to the Candidate Issues milestone Jan 7, 2019
@EmeraldSnorlax
Copy link

Similar issue here; on Manjaro (64x) and using a mouse; turning on raw input just keeps moving the cursor to the corners of the window

@peppy peppy changed the title Raw input problem. Raw input causes cursor to lock to position May 22, 2019
@Fede-26
Copy link

Fede-26 commented Sep 14, 2019

Same here, Manjaro (64x) with mouse

@peppy peppy modified the milestone: Candidate Issues Feb 17, 2020
@peppy peppy changed the title Raw input causes cursor to lock to position Raw input does not work correctly for some users Feb 18, 2021
@peppy
Copy link
Member

peppy commented Feb 18, 2021

This is still being reported after switching to SDL2, so there must be something more to it.

@peppy
Copy link
Member

peppy commented Feb 19, 2021

Going to move this into the march milestone since it is still being actively reported. Would appreciate anyone that can reproduce this issue (and is able to debug it) to provide more details. Currently I'm not sure at all how this is happening.

@peppy peppy added this to the March 2021 milestone Feb 19, 2021
@Gabixel
Copy link
Contributor

Gabixel commented Feb 19, 2021

It's kind of weird because sometimes raw input seems to work for me, but sometimes it doesn't (as you can see from the video below):

raw-input.mp4

Not sure how to 100% reproduce this but I noticed something strange when the raw input doesn't work (you can also see this from the video above):
If you manage to hover the Cursor sensitivity slider while raw input is in this "enabled-but-not-working" state (the best way is to unfocus the window and re-focus it on the slider), then change its value with the arrow keys, sometimes the game throws this error:

2021-02-19 10:14:27 [error]: An unhandled error has occurred.
2021-02-19 10:14:27 [error]: System.InvalidOperationException: Can not set value to "1.01" as bindable is disabled.
2021-02-19 10:14:27 [error]: at osu.Framework.Bindables.Bindable`1.set_Value(T value)
2021-02-19 10:14:27 [error]: at osu.Framework.Bindables.BindableNumber`1.SetValue(T value)
2021-02-19 10:14:27 [error]: at osu.Game.Overlays.Settings.Sections.Input.MouseSettings.<>c__DisplayClass7_0.<load>b__1(ValueChangedEvent`1 val)
2021-02-19 10:14:27 [error]: at osu.Framework.Bindables.Bindable`1.TriggerValueChange(T previousValue, Bindable`1 source, Boolean propagateToBindings, Boolean bypassChecks)
2021-02-19 10:14:27 [error]: at osu.Framework.Bindables.Bindable`1.TriggerValueChange(T previousValue, Bindable`1 source, Boolean propagateToBindings, Boolean bypassChecks)
2021-02-19 10:14:27 [error]: at osu.Framework.Bindables.Bindable`1.set_Value(T value)
2021-02-19 10:14:27 [error]: at osu.Framework.Bindables.BindableNumber`1.SetValue(T value)
2021-02-19 10:14:27 [error]: at osu.Framework.Graphics.UserInterface.SliderBar`1.commit()
2021-02-19 10:14:27 [error]: at osu.Framework.Graphics.UserInterface.SliderBar`1.OnKeyUp(KeyUpEvent e)
2021-02-19 10:14:27 [error]: at osu.Framework.Graphics.Drawable.TriggerEvent(UIEvent e)
2021-02-19 10:14:27 [error]: at System.Linq.Enumerable.TryGetFirst[TSource](IEnumerable`1 source, Func`2 predicate, Boolean& found)
2021-02-19 10:14:27 [error]: at osu.Framework.Input.ButtonEventManager`1.PropagateButtonEvent(IEnumerable`1 drawables, UIEvent e)
2021-02-19 10:14:27 [error]: at osu.Framework.Input.KeyEventManager.HandleButtonUp(InputState state, List`1 targets)
2021-02-19 10:14:27 [error]: at osu.Framework.Input.ButtonEventManager`1.handleButtonUp(InputState state)
2021-02-19 10:14:27 [error]: at osu.Framework.Input.InputManager.HandleKeyboardKeyStateChange(ButtonStateChangeEvent`1 keyboardKeyStateChange)
2021-02-19 10:14:27 [error]: at osu.Framework.Input.UserInputManager.HandleInputStateChange(InputStateChangeEvent inputStateChange)
2021-02-19 10:14:27 [error]: at osu.Framework.Input.StateChanges.ButtonInput`1.Apply(InputState state, IInputStateChangeHandler handler)
2021-02-19 10:14:27 [error]: at osu.Framework.Input.InputManager.Update()
2021-02-19 10:14:27 [error]: at osu.Framework.Input.PassThroughInputManager.Update()
2021-02-19 10:14:27 [error]: at osu.Framework.Graphics.Drawable.UpdateSubTree()
2021-02-19 10:14:27 [error]: at osu.Framework.Graphics.Containers.CompositeDrawable.UpdateSubTree()
2021-02-19 10:14:27 [error]: at osu.Framework.Platform.GameHost.UpdateFrame()
2021-02-19 10:14:27 [error]: at osu.Framework.Threading.GameThread.ProcessFrame()
2021-02-19 10:14:27 [verbose]: Unhandled exception has been allowed with 0 more allowable exceptions .

@H2n9
Copy link
Contributor

H2n9 commented Mar 2, 2021

I've had this issue come up a few times for me aswell.

The steps below manage to reproduce it 90% of the time for me.

  1. Start osu-lazer and enable rawinput and change to windowed mode.
  2. Open up any unrelated window like file explorer etc
  3. Restart osu-lazer.
  4. Before the osu window appears grab and move around the other window, keep doing this until the menu appears.
    Video example :
    https://streamable.com/4bhx0u

Above was done in windowed and local debug but I've managed to reproduce with both fullscreen and master.

Windows 10

The whole window grabbing stuff is probably a bit excessive, I'm guessing you just need to have the osu-lazer window not be in focus on startup but this was the easiest way i could consistently reproduce it.

@frenzibyte
Copy link
Member

Reproduced, will investigate through this and see if I can nail something down.

@peppy
Copy link
Member

peppy commented Mar 5, 2021

@frenzibyte this report was for a tablet. Can you confirm whether you are testing using tablet or mouse?

I've repurposed this issue to track the more specific case of OsuTK initialisation failure.

@peppy peppy changed the title Raw input does not work correctly for some users Raw input fails to initialise correctly occasionally Mar 5, 2021
@frenzibyte
Copy link
Member

frenzibyte commented Mar 21, 2021

Closing and unpinning as osuTK's "raw mouse input" handler has been removed osu!framework-side, leaving this issue stale as it should no longer be the case, with the alternative "high precision" mode which relies on SDL2's relative mouse input.

If it does really matter, this could be tracked at osuTK's repository side, but I don't think it should at all.

@frenzibyte frenzibyte unpinned this issue Mar 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants