phaserjs / phaser-ce

Phaser CE is a fun, free and fast 2D game framework for making HTML5 games for desktop and mobile web browsers, supporting Canvas and WebGL rendering.
http://phaser.io
MIT License
1.34k stars 491 forks source link

Horizontal scroll stops working after screenshot capture with 3 finger down swipe or Palm swipe on Android devices in Ionic 3 app. #615

Open ravi-pandit14 opened 5 years ago

ravi-pandit14 commented 5 years ago

We are facing an issue with “Phaser-ce” component integrated in Ionic 3 app on Android devices. When trying to capture a screenshot with 3 finger down swipe or Palm swipe, the horizontal scroll on page stops working. This is very likely an issue with multitouch. It is difficult to debug it as there are no errors in log.

Some additional details about setup: We are using Ionic 3 and have also tested on starter Ionic app to make sure this is not something related to compatibility with other plugins or dependencies. We have checked relevant fixes in "phaser-ce" for this similar issue reported in other cases but none of them have worked. E.g https://github.com/photonstorm/phaser-ce/issues/541#issuecomment-391570010, https://github.com/photonstorm/phaser-ce/issues/541#issuecomment-391572683

We have also checked relevant fixes in "phaser-kinetic-scrolling-plugin" ( this the additional library we are using in app for horizontal scrolling) as this similar issue is reported in other cases but none of the fixes given here have worked either. E.g https://github.com/jdnichollsc/Phaser-Kinetic-Scrolling-Plugin/issues/5 https://github.com/jdnichollsc/Phaser-Kinetic-Scrolling-Plugin/pull/12

Link of repository : https://github.com/ravi-pandit14/phaser-test-master The issue can be replicated using this repository. When trying to capture a screenshot with 3 finger down swipe or Palm swipe (on Android device), the horizontal scroll on dashboard page stops working.

Using package.json dependencies:

"ionic": "3.20.0",
"ionic-angular": "3.9.2",
"cordova-android": "7.1.4",
"phaser-ce": "^2.11.1",
"phaser-kinetic-scrolling-plugin": "^1.2.1",
 npm@6.4.1
 node 10.13.0
samme commented 5 years ago

the horizontal scroll on page stops working

Can you explain this part — what touch gesture, and where, should scroll the page but doesn't?

ravi-pandit14 commented 5 years ago

Link of repository : https://github.com/ravi-pandit14/phaser-test-master The issue can be replicated using this repository. When trying to capture a screenshot with 3 finger down swipe or Palm swipe (on Android device), the horizontal scroll on dashboard page stops working.

samme commented 5 years ago

If you can access the Chrome Console (Dev Tools), run something like

console.monitorEvents(document, 'control');
console.monitorEvents(document, 'touch');

and do the screenshot gesture and note the console output.

Also, not sure if it's relevant, but you can debug Phaser's inputs to see what state they're in.

vipin1code commented 5 years ago

@samme Have you managed to replicate this issue on your end using the sample repo we created to demo this issue?

To make it easier, we have also uploaded an .apk file.

We realised that instead of using 3 finger swipe for screenshot, it can also be replicated with simple 3 finger touch (not drag).