1. Nikola,
Hello there,
before the Web client beta testing session ended, I planned to make one last report about the shake device feature, but unfortunately I couldn't test it properly at that time, and then later on other things came up.
However, we just received user feedback which basically confirmed my findings, so I'll write my report now, and if you have some time, you can consider addressing it, one part of it could be quite significant, especially for Android users.
the shake the device feature works great globally, except that we have one small scenario I did not test, and unfortunately it is of course that one which is broken.
In fact, the checkbox for enabling the feature is a little useless, especially on Android, but even on iOS in certain scenarios. Time for the most useful details.
iOS
Once we enable this checkbox, we are asked for the permission to use the motion sensor. If we accept, everything works correctly and so far nothing is broken.
If we close the browser completely from the app switcher and reconnect to the Web client, assuming the setting is saved correctly, on the first click anywhere we will be asked for the permission again, and as usual, all works well.
The problem arises if we actually disable the checkbox.
My expectation is that the Web client no longer listens for the shake event at all and simply does nothing. However, if we have already granted the permission before and did not close the browser since the last permission request, the Web client in fact behaves exactly the same. However, in practice, disabling this checkbox is supposed to make it as if this feature never existed at all.
Even with the option disabled, the shake event is still detected and there is no change.
The only difference is, assuming that we close the browser completely and the option is saved correctly, we are no longer asked for the permission until we enable it again.
To sum up, at present, on iOS, rather than being a ?Shake the device toggle?, this option is more like request the motion sensor permission toggle.
If we have the permission already, it does nothing. If we don't, it requests it when needed.
Android
On Android, the situation is a little different, since we do not need to grant the permission there at all. This makes the option totally useless on there. Disable or enable the checkbox, the shake event simply works.
In fact, the first test I performed on Android was just connect, start a game and shake the device. Without enabling anything, it worked.
I confirmed after the game that the checkbox was indeed unchecked.
Effectively, it is not possible to disable this feature there, which can be quite a big problem if you are on the road and accidentally often trigger it.
Option saving
The last problem I have on iOS is that the saving of this setting is not consistent and I cannot get it to behave well like the other options.
In PWA mode, as soon as I connected and enabled the checkbox, it was saved, and now every time I reconnect, even if I close the app, the option stays enabled. Even if I disable it and reconnect, it returns to being enabled.
On Safari, it is exactly the same behaviour, but the opposite state, the option stays disabled no matter what I do and I have to enable it once I connect. This is what confused me when I initially tested this option, and at first thought that it does not save, then later thought that it works fine.
To conclude, probably the most important item is to try to make it so that unchecking the "Device shaking" checkbox actually disables the feature.
Thanks
~msgScore~: +1