bitmovin / bitmovin-player-ui

The Bitmovin Adaptive Streaming Player UI

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

when the UI autohides with the SettingsPanel open, one touch is need to make the visible SettingsPanel interactive again

oberhamsi opened this issue · comments

on mobile the SettingsPanel never hides (hideDelay=-1) but the UIContainer autohides after a while.

when the UIContainer is hidden it calls preventDefault() on the first touchend event which prevents a click event getting created. https://github.com/bitmovin/bitmovin-player-ui/blob/develop/src/ts/components/uicontainer.ts#L145

this in turn means that elements inside the SettingsPanel do not get a click from this first touch although they are still visible.

put another way: if the UIContainer auto-hides, one touch is required to make the UIContainer visible again (this touch never leads to a click). only the subsequent touches (while the UiContainer is visible) register as click events with the SettingsPanel content.

i've attached a video where you can see that clicking on the X (close) when the UIContainer is hidden only makes the UIContainer visible but does not actually close the settingspanel. if the UIContainer is visible everything works fine.

one solution to this would be a recommended way to prevent the UIContainer from autohiding itself if something like the SettingsPanel is open. this can currently be done by ignoring the typescript and going through uiInstanceManager.ui.uiHideTimeout.stop() but a clean way to deal with this case would be nice.

Screencast.from.2023-07-20.08.19.12.webm

i appreciated the super quick turnaround with #563

the PR has pointed me in the right direction with onPreviewControlsHide which i can use in our custom PopupPanel

fixed with 3.50