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

The volume slider from immersive mode remains displayed even after moving the pointer away from its active controller area #2948

Closed
heres-maria-sv-inactive opened this issue Mar 12, 2020 · 9 comments · Fixed by #3181, #3386 or #3500
Assignees
Labels
good first issue Good for newcomers [QA]:Minor issue Label for QA to mark minor issues logged [QA]:Verified fixed Label for QA to mark verified fixed issues
Milestone

Comments

@heres-maria-sv-inactive

[Affected Versions]:

  • Firefox Reality version 10-40720037 (dbb8ed3)
  • Firefox Reality version 8.1 (a0fcc8a)
  • Firefox Reality version 8 (ad77618)

[Affected Platforms]:

  • HTC Vive Focus Plus - Android 7.1.2
  • Oculus Quest - Android 7.1.1
  • Pico Neo 2 - Android - 8.1.0

[Prerequisites]:

  • The headset is turned on, the browser is installed and open.

[Steps to reproduce]:

  1. Go to a 360 video (e.g. https://youtu.be/hNAbQYU0wpg).
  2. Play it and enter immersive mode.
  3. Hover the volume button.
  4. Point the pointer away from the volume slider and observe the behavior.

[Expected results]:

  • The volume slider is dismissed.

[Actual results]:

  • The volume slider remains displayed.

[Notes]:

  • The slider remains displayed across different videos.
  • The issue is also reproducible for the other types of videos (180, normal, etc) when in immersive mode.
  • Moving the pointer over the actionable area several times sometimes dismisses the slider.
  • This issue is reproducible in production.
  • Design document used as reference.
  • Attached is a recording of this issue.
@heres-maria-sv-inactive heres-maria-sv-inactive added the [QA]:Minor issue Label for QA to mark minor issues logged label Mar 12, 2020
@bluemarvin bluemarvin added this to the #10 features milestone Mar 20, 2020
@keianhzo keianhzo added the good first issue Good for newcomers label Apr 4, 2020
daron-walters added a commit that referenced this issue Apr 16, 2020
…ving the pointer away - #2948

1. updated code to use the x location of the volume button as the starting point for hover to show/hide slider.  Per design doc the slider should show from the beginning of the volume button to the end of the slider

2. added code to handle hide the slider when the x location is outside of the media controls.  On oculus quest the x coord is always negetive when pointer is outside control area
daron-walters added a commit that referenced this issue Apr 19, 2020
daron-walters added a commit that referenced this issue Apr 19, 2020
daron-walters added a commit that referenced this issue Apr 21, 2020
…code for volume slider and moved it to volume button and slider respectively. Fixes #2948
daron-walters added a commit that referenced this issue Apr 21, 2020
…ving the pointer away - #2948

Fixes #2948 Updated change per Manuel that removed widget wide hover code for volume slider and moved it to volume button and slider respectively.  Fixes #2948
daron-walters added a commit that referenced this issue Apr 21, 2020
…code for volume slider and moved it to volume button and slider respectively. Fixes #2948

Fixes #2948 Added Handler that automatically hides volume slider after 1 second of no hover over volume.  Fixes #2948
bluemarvin pushed a commit that referenced this issue Apr 21, 2020
daron-walters added a commit that referenced this issue Apr 22, 2020
…code for volume slider and moved it to volume button and slider respectively. Fixes #2948
daron-walters added a commit that referenced this issue Apr 22, 2020
…ume button and slider was not hiding sliderFixes #2948
@daron-walters
Copy link
Collaborator

daron-walters commented Apr 22, 2020

here is a video of the fix. As long as the pointer hovers inside the volume button or the slider the slider will stay visible. Every where else it will hide (note there is a 1 second timer before it hide)

keianhzo added a commit to keianhzo/FirefoxReality that referenced this issue Apr 22, 2020
* The volume slider from immersive mode remains displayed even after moving the pointer away - MozillaReality#2948

1. updated code to use the x location of the volume button as the starting point for hover to show/hide slider.  Per design doc the slider should show from the beginning of the volume button to the end of the slider

2. added code to handle hide the slider when the x location is outside of the media controls.  On oculus quest the x coord is always negetive when pointer is outside control area

* Fixes MozillaReality#2948 Added Handler that automatically hides volume slider after 1 second of no hover over volume.  Fixes MozillaReality#2948

* Fixes MozillaReality#2948 Added Handler that automatically hides volume slider after 1 second of no hover over volume.  Fixes MozillaReality#2948

* Fixes MozillaReality#2948 Updated change per Manuel that removed widget wide hover code for volume slider and moved it to volume button and slider respectively.  Fixes MozillaReality#2948

* Fixes MozillaReality#2948 Updated change per Manuel that removed widget wide hover code for volume slider and moved it to volume button and slider respectively.  Fixes MozillaReality#2948

* The volume slider from immersive mode remains displayed even after moving the pointer away - MozillaReality#2948

Fixes MozillaReality#2948 Updated change per Manuel that removed widget wide hover code for volume slider and moved it to volume button and slider respectively.  Fixes MozillaReality#2948

* Fixes MozillaReality#2948 Updated change per Manuel that removed widget wide hover code for volume slider and moved it to volume button and slider respectively.  Fixes MozillaReality#2948

Fixes MozillaReality#2948 Added Handler that automatically hides volume slider after 1 second of no hover over volume.  Fixes MozillaReality#2948

* Added Handler that automatically hides volume slider after 1 second of no hover over volume.

Fixes MozillaReality#2948

* Fixes MozillaReality#2948 Fixed unit testing defect where the space between the volume button and slider was not hiding sliderFixes MozillaReality#2948

Co-authored-by: daronwalters <dwalters@softvelopment.com>
bluemarvin pushed a commit that referenced this issue Apr 22, 2020
bluemarvin pushed a commit that referenced this issue Apr 22, 2020
…ume button and slider was not hiding sliderFixes #2948
bluemarvin pushed a commit that referenced this issue Apr 22, 2020
@Softvision-GeluHaiduc
Copy link

I have verified this issue with the latest Firefox Reality version 10 RC1 (6db2f60) installed on the Oculus Go, HTC Vive Focus Plus, Pico Neo2 and Pico G2 4K headsets.
Unfortunately the volume slider still remains displayed even after moving the pointer away if previously it was slided to the max or min points on the slider. Here is a video of the issue.

@bluemarvin
Copy link
Contributor

I think we only want to fix major and blocking issues for v10 at this point so moving this to v11.

@bluemarvin bluemarvin modified the milestones: #10 features, #11 polish Apr 24, 2020
daron-walters added a commit that referenced this issue May 17, 2020
…le case when over exits outside of controls
@daron-walters
Copy link
Collaborator

So from the video Gelu posted the issue is that the when dragging the volume slider to the max and min position sometimes the pointer would be dragged outside of the volume control area and the hover would never fire because the hover is outside of the controls area. Added a hover listener for the whole media control that if hover event is outside of control area we would fire a timer to hide c volume control. here is the video of the test from my local (tested on Oculus Quest)

bluemarvin pushed a commit that referenced this issue May 28, 2020
…le case when over exits outside of controls (#3386)
@Softvision-GeluHaiduc
Copy link

I have verified this issue with the latest Firefox Reality version 11-141492311 (a9b58ee) installed on the Oculus Go, Pico Neo2 and Pico G2 4K headsets.
The issue seems to be fixed on the Oculus Go but unfortunately it is still reproducible on the Pico devices. Here is a video of the issue, also I wasn't able to verify it on HTC.

@daron-walters
Copy link
Collaborator

still researching and will discuss with team Monday just wanted to include my findings (in case i forget)

so the problem is in the Pico Platform Activity when the user clicks the slider and drags it outside of the area they keyup fires and this error gets hit in the onKeyUp of the VRActivity.

here is log statement
2020-06-07 15:10:07.103 17690-17690/org.mozilla.vrbrowser.dev I/VRActivity: onKeyUp KeyCode = 127 dialogShow = -1

Here is a code snippet where it causes the problem
int var3 = PicovrSDK.GetDialogState();
if (this.SeeThroughSettingExist && var3 >= 0) {
........
}
} else {
Log.e("VRActivity", "onKeyUp Boundary Call SeeThrough Setting failed, is there this app?: " + this.SeeThroughSettingExist + ". Is diaglog showed?: " + (var3 >= 0));
}
this leads to the event getting cancelled because for some reason the Dialog State (var3) is -1

Cancelling event due to no window focus: KeyEvent { action=ACTION_UP, keyCode=KEYCODE_MEDIA_PAUSE, scanCode=0, metaState=0, flags=0x28, repeatCount=0, eventTime=19242479, downTime=19242479, deviceId=-1, source=0x101 }

@keianhzo
Copy link
Collaborator

keianhzo commented Jun 8, 2020

@daron-walters I think we should be able to handle the ACTION_CANCEL case here:

mSeekBar.setOnTouchListener((v, event) -> {
if (event.getAction() == MotionEvent.ACTION_UP) {
return true;
}
return false;
});

And hide the view in that case.

@daron-walters
Copy link
Collaborator

daron-walters commented Jun 8, 2020

reply @keianhzo thanks for that Manuel I thouight something similar on my local but I wasnt confident it would be the best solution

daron-walters added a commit that referenced this issue Jun 10, 2020
…ANCELLED (which seems to get triggered in pico) for when a user drags the volume seekbar outside of the area
daron-walters added a commit that referenced this issue Jun 10, 2020
…ANCELLED (which seems to get triggered in pico) for when a user drags the volume seekbar outside of the area
daron-walters added a commit that referenced this issue Jun 10, 2020
…ANCELLED (which seems to get triggered in pico) for when a user drags the volume seekbar outside of the area

Fixes #2948 - updated volume control delegate to handle when ACTION_CANCELLED (which seems to get triggered in pico) for when a user drags the volume seekbar outside of the area
daron-walters added a commit that referenced this issue Jun 10, 2020
…ANCELLED (which seems to get triggered in pico) for when a user drags the volume seekbar outside of the area

Fixes #2948 - updated volume control delegate to handle when ACTION_CANCELLED (which seems to get triggered in pico) for when a user drags the volume seekbar outside of the area

Fixes #2948 - updated volume control delegate to handle when ACTION_CANCELLED (which seems to get triggered in pico) for when a user drags the volume seekbar outside of the area
daron-walters added a commit that referenced this issue Jun 10, 2020
…ANCELLED (which seems to get triggered in pico) for when a user drags the volume seekbar outside of the area
daron-walters added a commit that referenced this issue Jun 12, 2020
…e clients can handle action cancelled event.
keianhzo pushed a commit that referenced this issue Jun 15, 2020
…e clients can handle action cancelled event. (#3500)
@Softvision-GeluHaiduc
Copy link

I have verified this issue with the latest Firefox Reality version 11-141672019 (418d959) installed on the Oculus Go, HTC Vive Focus Plus, Pico Neo2 and Pico G2 4K headsets.
Now, the volume slider from immersive mode doesn't remain displayed after moving the pointer away from its active controller area.

@Softvision-GeluHaiduc Softvision-GeluHaiduc added the [QA]:Verified fixed Label for QA to mark verified fixed issues label Jun 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment