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