Rank: Newbie Groups: Member
Joined: 12/3/2019 Posts: 2
|
Hello, We are considering buy EO.webbrowser as key component for our Kiosk app. We have tested it and seems like works very smoth and robust. After start playing with touch screen on windows 10 we are unable to catch/filter any touch messages. We have tried to use winforms version as well as wpf version. When receiving WM_ messages I can see mouse up/down ones (0x201, 0x202), but when touching screen I receive something like 0x101 (which is WM_KEYDOWN message, but with strange wparam/lparam):
TouchMessageFilter|Msg: 0x201 (513), wParam: 0x1, (1), lParam: 89457124 MainForm|Browser Moue Down: X: 484, Y: 1365 MainForm|WebView Moue Down: X: 484, Y: 1365 TouchMessageFilter|Msg: 0x202 (514), wParam: 0x0, (0), lParam: 88670701 TouchMessageFilter|Msg: 0x101 (257), wParam: 0x12, (18), lParam: -2135425023 TouchMessageFilter|Msg: 0x101 (257), wParam: 0x12, (18), lParam: -2118647807 TouchMessageFilter|Msg: 0x101 (257), wParam: 0x11, (17), lParam: -2137194495 TouchMessageFilter|Msg: 0x101 (257), wParam: 0x11, (17), lParam: -2120417279 TouchMessageFilter|Msg: 0x101 (257), wParam: 0x10, (16), lParam: -2136342527 TouchMessageFilter|Msg: 0x101 (257), wParam: 0x10, (16), lParam: -2135556095
Could you give me any hint, what to do to correctly receive touch messages, or maybe any update is required on your side?
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,218
|
Thanks for posting in the forum. Touch message filtering is not supported yet in the current release. We can support it in our next release, which is about a month away. If you can share detailed steps in your user case, we can put it through our testing to make sure we verify it here first.
|
Rank: Newbie Groups: Member
Joined: 12/3/2019 Posts: 2
|
Thanks for quick response.
We need to have some kind "touch mask" feature. So when user clicks on screen with defined pattern (eg. top left, bottom right, top right, top left area) then we make some custom action in our application. So we need to catch all touches and decide if they should be posted down to the webview or filtered. It should work exactly how mouse clicks are filtered (which works perfectly fine in our case), so if you could just add those messages into the IInputMsgFilter.PreDispatchMsg then we will be very happy.
Another issue I've found with touch - when use long touch, context menu appears - regardless filtering mouse right clicks.
|
Rank: Administration Groups: Administration
Joined: 5/27/2007 Posts: 24,218
|
If you are only looking for shortcircuting certain messages then it is very easy for us to support. However there are other complications that you may want to take into consideration:
1. Windows will send mouse message based on touch events. So only bypassing touch messages may not be enough. You may need to bypassing both;
2. If you do decide to pass certain touch messages down stream, it should work fine with the browser engine but may not work correctly in your host application. This is because these events originates from the browser engine process, thus they are not "native" to your application (we run the browser engine in a separate child process, not your application process). Having this part to work transparently may not be available in the initial release. So make sure you do not rely on the corresponding host application event. For example, while the WebControl exposes TouchDown event (because it inherits from UIElement), this event may not fire properly.
We will look into the context menu issue and see what we can find.
Thanks!
|