New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 839539 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: 2018-05-14
OS: Linux , Windows , Mac
Pri: 1
Type: Bug-Regression



Sign in to add a comment

PNACL Middle and Right mouse buttons no longer send up/down events when using Chrome beta

Reported by bgavi...@gmail.com, May 3 2018

Issue description

UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36

Steps to reproduce the problem:
1.Press the right or middle button 
2. PNACL api should report mouse down/up event when button if pressed.
3. 

What is the expected behavior?
Right and Middle mouse buttons in PNACL should send events on mouse up/down like they do in the stable version of chrome ver 66.   Left mouse button still sends up/down messages correctly in Beta ver 67.

What went wrong?
Right and Middle mouse button are no longer read.

Did this work before? Yes Chrome 66

Chrome version: 67.0.3396.30  Channel: beta
OS Version: 10.0
Flash Version: 

I will try to put together a simple test case.
 

Comment 1 by bgavi...@gmail.com, May 3 2018

Clarification - Incorrect return value for GetModifiers() in class pp:InputEvent when PP_INPUTEVENT_TYPE_MOUSEMOVE type event occurs.

In the class pp::InputEvent 
When value for InputEvent::GetType() == PP_INPUTEVENT_TYPE_MOUSEMOVE
When Right mouse button is present Input::.GetModifiers() will return PP_INPUTEVENT_MODIFIER_LEFTBUTTONDOWN return PP_INPUTEVENT_MODIFIER_RIGHTBUTTONDOWN

Same problem for middle mouse button only left mouse button works correctly.

Example code function that receives PNACL event

void HandleEvent( const pp::InputEvent&   i_PPInputEvent )
{
     bool l_bLeftPressed = false;
	 
     bool l_bRightPressed = false;
     bool l_bMiddlePressed = false;
     unsigned long l_uPPModifiers = 0;


	switch( i_PPInputEvent.GetType() )
	{
		  case PP_INPUTEVENT_TYPE_MOUSEMOVE:
		  {
			 pp::MouseInputEvent l_PPMouseEvent( i_PPInputEvent );
			 bool l_bSuccess = !l_PPMouseEvent.is_null();
			 if( l_bSuccess )
			 {
				l_uPPModifiers = l_PPMouseEvent.GetModifiers();
				if( l_uPPModifiers & PP_INPUTEVENT_MODIFIER_LEFTBUTTONDOWN )
					 l_bLeftPressed = true;
				
// In Chrome beta 67 l_bRightPressed and l_bMiddlePressed will never be true
				if( l_uPPModifiers & PP_INPUTEVENT_MODIFIER_MIDDLEBUTTONDOWN )
					 l_bMiddlePressed = true;

				if( l_uPPModifiers & PP_INPUTEVENT_MODIFIER_RIGHTBUTTONDOWN )
					 l_bRightPressed = true;

			 }
		   }
	   				
	}

}

Comment 2 by bgavi...@gmail.com, May 3 2018

For similar function look in the nacl_sdk / pepper/ examples/ demo /earth_simd /earth.cc

and look at the method line# 723
void Planet::HandleEvent(PSEvent* ps_event)

look at the line# 742
        if (mouse.GetModifiers() & PP_INPUTEVENT_MODIFIER_LEFTBUTTONDOWN) {

change it to this instead and it will only work in Chrome 66 not Chrome 67
        if (mouse.GetModifiers() & PP_INPUTEVENT_MODIFIER_RIGHTBUTTONDOWN) {

Labels: Needs-Bisect Needs-Triage-M67
Cc: krajshree@chromium.org
Labels: Triaged-ET Needs-Feedback
bgavin71@ - Thanks for filing the issue...!!

Could you please provide a sample test file/url to test the issue from TE-end.
this will help us in triaging the issue further.

Thanks...!!

Comment 5 Deleted

Project Member

Comment 6 by sheriffbot@chromium.org, May 4 2018

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding the requester to the cc list.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 7 by bgavi...@gmail.com, May 4 2018

Test Case
Use Chrome 66(Stable) go to this url

https://kitchenplanner.kaboodle.com.au/is/apps/idealspaces/?country=aus&anonymousAccess=true#projects/anonymous/design

In the 3D view, drag the mouse with the right mouse button pressed to cause the camera to orbit.

Now in Chrome 67(Beta)
Do the same thing.   Notice how the camera will not orbit with the right mouse button.


screenshot.png
231 KB View Download
Labels: -Pri-2 -Needs-Bisect hasbisect-per-revision ReleaseBlock-Stable RegressedIn-67 M-67 Target-67 FoundIn-67 Target-68 FoundIn-68 OS-Linux OS-Mac Pri-1
Owner: nzolghadr@chromium.org
Status: Assigned (was: Unconfirmed)
Able to reproduce the issue on Windows 10, mac 10.13.3 and Ubuntu 14.04 using chrome reported version #67.0.3396.30 and latest canary #68.0.3422.0.

Bisect Information:
=====================
Good build: 67.0.3381.0
Bad Build : 67.0.3382.0

Change Log URL: 
https://chromium.googlesource.com/chromium/src/+log/2b62de0bf01e7c71c82719ec30e19a32ca251ad6..12f9cbe62bb8f6f09782c1ac05bff57bd61f4d51

From the above change log suspecting below change
Change-Id: Icc62baea6862901cb91a531f7b649c6858ee94dd
Reviewed-on: https://chromium-review.googlesource.com/956543

nzolghadr@ - Could you please check whether this is caused with respect to your change, if not please help us in assigning it to the right owner.
Note: Adding stable blocker for M-67 as it seems to be a recent regression. Please feel free to remove the same if not appropriate.

Thanks...!!
*** Bulk Edit ***
M67 Stable promotion is coming VERY soon. Your bug is labelled as Stable ReleaseBlock, pls make sure to land the fix and request a merge into the release branch ASAP. 

If fix is already merged to M67 and nothing else is pending, pls mark the bug as fixed. Thank you.
Status: Started (was: Assigned)
Components: -Platform>DevTools
Components: Blink>Input
Labels: Hotlist-Input-Dev
Project Member

Comment 13 by bugdroid1@chromium.org, May 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2306a9caf973ef319f5a53356568434159643675

commit 2306a9caf973ef319f5a53356568434159643675
Author: Navid Zolghadr <nzolghadr@chromium.org>
Date: Thu May 10 20:39:42 2018

Update modifiers when buttons is set in MouseEvent

NACL expects modifiers to contain buttons information.
So we need to also set that information not only in
buttons field but also modifiers.

Bug:  839539 ,  839303 
Change-Id: Ib859a2e071984be4625f0a42094982c7513ae5ae
Reviewed-on: https://chromium-review.googlesource.com/1052171
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Ella Ge <eirage@chromium.org>
Commit-Queue: Navid Zolghadr <nzolghadr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557657}
[modify] https://crrev.com/2306a9caf973ef319f5a53356568434159643675/third_party/blink/renderer/core/events/mouse_event.cc
[modify] https://crrev.com/2306a9caf973ef319f5a53356568434159643675/third_party/blink/renderer/core/exported/web_plugin_container_test.cc

*** Bulk Edit ***
M67 Stable promotion is coming VERY soon. Your bug is labelled as Stable ReleaseBlock, pls make sure to land the fix and request a merge into the release branch ASAP. 

If fix is already merged to M67 and nothing else is pending, pls mark the bug as fixed. Thank you.
Labels: Merge-Request-67
Cc: pbomm...@chromium.org
Labels: -Merge-Request-67 Merge-Approved-67
NextAction: 2018-05-14
Thank you Prudhvi for verifying this - https://bugs.chromium.org/p/chromium/issues/detail?id=839303#c21.

Approving merge to M67 branch 3396, see details here - https://bugs.chromium.org/p/chromium/issues/detail?id=839303#c23.

Pls merge on Monday morning and mark bug as fixed.
The NextAction date has arrived: 2018-05-14
Project Member

Comment 18 by bugdroid1@chromium.org, May 14 2018

Labels: -merge-approved-67 merge-merged-3396
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/14ee3910944246842c440e3ad910a7279e24d28a

commit 14ee3910944246842c440e3ad910a7279e24d28a
Author: Navid Zolghadr <nzolghadr@chromium.org>
Date: Mon May 14 14:49:47 2018

Update modifiers when buttons is set in MouseEvent

NACL expects modifiers to contain buttons information.
So we need to also set that information not only in
buttons field but also modifiers.

Bug:  839539 ,  839303 
Change-Id: Ib859a2e071984be4625f0a42094982c7513ae5ae
Reviewed-on: https://chromium-review.googlesource.com/1052171
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Ella Ge <eirage@chromium.org>
Commit-Queue: Navid Zolghadr <nzolghadr@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#557657}(cherry picked from commit 2306a9caf973ef319f5a53356568434159643675)
Reviewed-on: https://chromium-review.googlesource.com/1057688
Reviewed-by: Navid Zolghadr <nzolghadr@chromium.org>
Cr-Commit-Position: refs/branch-heads/3396@{#585}
Cr-Branched-From: 9ef2aa869bc7bc0c089e255d698cca6e47d6b038-refs/heads/master@{#550428}
[modify] https://crrev.com/14ee3910944246842c440e3ad910a7279e24d28a/third_party/blink/renderer/core/events/mouse_event.cc
[modify] https://crrev.com/14ee3910944246842c440e3ad910a7279e24d28a/third_party/blink/renderer/core/exported/web_plugin_container_test.cc

Status: Fixed (was: Started)

Sign in to add a comment