Pinch Zoom and touch rotate not working on linux using java sdk

1138
15
Jump to solution
11-27-2023 06:54 AM
ZabihMalik
New Contributor II
 
0 Kudos
1 Solution

Accepted Solutions
ZabihMalik
New Contributor II

i have tried on both javafx 17 and javafx 21, but still no success.

View solution in original post

0 Kudos
15 Replies
MarkBaird
Esri Regular Contributor

I'll need some more information to help with this.  Can you tell me more about your app and machine setup.  I'm looking for information like this, but the more you can tell me the better:

 - What version of the Maps SDK are you using?

 - What Linux type and version are you using?

 - Do any touch operations work in your app or OS?  If nothing works then you might be missing drivers.

 

0 Kudos
ZabihMalik
New Contributor II

Hi MarkBaird.

Thanks for the reply.  i can answer all you questions.

we have purchase the license and try to use java map sdk 200.2 for linux.

1. Maps SDK v 200.2

2. Redhat enterprise Linux 9.

3. all touch drivers are installed, touch working in linux environement but when i run the application its just only pan and touch (like mouse click). it dont pinch zoom, or touch rotate.

i run same code project on windows operating system, its work fine. all the touch operations, like press, pinch zoom and rotate works.

i tried this code on ubuntu 20.04, 22 and even 23.10 but still the same issue.

We have build a huge project on this map sdk, we was unable to test this because hardware we procure was late , when it came we got this issue.

if can help please.. thanks in advance.

0 Kudos
ZabihMalik
New Contributor II

Even in SceneView only touch pan is working nothing else.

0 Kudos
ZabihMalik
New Contributor II

can you please also test this is Map SDK 100.13 as well. as our project is build on this sdk.

0 Kudos
MarkBaird
Esri Regular Contributor

I've managed to reproduce this on an Ubuntu 20 machine I've configured with a touch screen.  

I'm not sure exactly where the issue is just yet, but I can see it works fine on Windows so theoretically it shouldn't be any different on Linux.  I'll try to narrow it down.  My thoughts are it could be one of the following:

 - Multi touch support in the drivers for Linux

 - A bug in JavaFX

 - A bug in our API

 

ZabihMalik
New Contributor II

i have tried on both javafx 17 and javafx 21, but still no success.

0 Kudos
ZabihMalik
New Contributor II

Multi touch supported in the drivers for Linux, as pinch zoom is working in native image viewer application of linux.

0 Kudos
ZabihMalik
New Contributor II

please if can be resolved early, as our deployment to client is near. and without touch it is useless. thanks.

0 Kudos
MarkBaird
Esri Regular Contributor

At the moment I'm suspecting this is a JavaFX issue.  For us to zoom and rotate the map we need the JavaFX ZoomEvent and RotateEvent events to be triggered.  Try adding the code below and see what you get.  

For me on Windows, all 3 event types fire, but on Linux Zoom and Rotate are not firing.  The code below adds console output for the mapView, but I've added this to other JavaFX controls such as a button and the events are just not coming in from JavaFX on Linux.

    mapView.addEventHandler(MouseEvent.ANY, event -> System.out.println(event.getEventType() + " " + event.isSynthesized()));
    mapView.addEventHandler(ZoomEvent.ANY, event -> System.out.println(event.getEventType()));
    mapView.addEventHandler(RotateEvent.ANY, event -> System.out.println(event.getEventType()));

 Can you add the same events to a button or other JavaFX control to see if you have the same?