Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2017-04

ScrollBox and Touchscreen interaction

4 messages · 2 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Sandro Cumerlato

Hello,
please take a look at the attached example.

Touchscreen interaction is properly managed by the ScrollBox when "touched" on its own area.

On the contrary, ScrollBox touchscreen interaction doesn't work if touched on the background of a contained component.

I consider this different behaviour a bug, because I would scroll the ScrollBox content touching everywhere.

And if the contained control fulfill the ScrollBox area then the touchscreen interaction is completely impossible.

Please let me know what you think.

Thank you in advance.

Sandro Cumerlato
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TouchScreen.zip
Type: application/zip
Size: 2220 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20170407/7a124782/attachment.zip>

Reply by email

Ondrej Pokorny
to Sandro Cumerlato
Sandro Cumerlato wrote
Current SVN trunk. Under Windows 10. Sorry for the missing info.

Mouse wheel messages are correctly passed through.

The problem is with touchpad double-finger scrolling because usually the mouse driver takes care of it - it finds the TWinControl (control with handle) under the mouse and scrolls it according to its scroll info. (At least it is what I experienced with my Dell touchpad when I worked on scrolling code.)

Currently I don't know how to solve it. Maybe there is a possibility to get touchpad scrolling passing through windows as well - I haven't done a thorough research yet. You can study the wheel message code in win32 and maybe you find a way to get touchpad scrolling work the same way.

The idea behind the process is easy - if you cannot scroll the window, scroll recursively its parent (that can be scrolled).

Ondrej

Reply by email