Recognizing touchpad scrolls in the search list.

Have a suggestion for "Everything"? Please post it here.
Post Reply
KaoDome
Posts: 4
Joined: Mon Sep 26, 2022 1:21 pm

Recognizing touchpad scrolls in the search list.

Post by KaoDome »

Hi, I'm using the latest build of 1.4.1, didn't check if the same applies on the alphas of 1.5 so far. Because I'm using a laptop, I'm not used to have a regular mouse on the side and I do it all with the built-in touchpad / trackpad, depending on the device.

For some reason, scrolling messages either up or down aren't picked up by the app and translated properly providing view scroll, when I need to scroll, I have to manually go to the scrollbar and drag it around, it would be nice if it were possible to use the usual gestures to scroll instead.

I don't know if there is a way to view what kind of messages are being thrown at the view or control from outside its source, whether it's possible to peek into the message queue to see which ones are triggered. Many years ago, I think I remember having a utility that allowed for that, but I seem to have forgotten even its name :(

In any case, there seems to be some info about it here: https://learn.microsoft.com/en-us/windo ... s-overview

I'm just not sure it could be implemented easily, or Windows hides those interactions through some layers that are unavailable for low level handling. I'd appreciate it being looked into, at times it gets me nuts :D, think nothing of it if you see adding it to the program would be too complex though.

Thank you for your time, regards.
NotNull
Posts: 5461
Joined: Wed May 24, 2017 9:22 pm

Re: Recognizing touchpad scrolls in the search list.

Post by NotNull »

Your Windows version might be relevant in this context.
KaoDome
Posts: 4
Joined: Mon Sep 26, 2022 1:21 pm

Re: Recognizing touchpad scrolls in the search list.

Post by KaoDome »

Oh! I see, right when I posted it I was using the latest Windows 10 build, not 22H2 since it isn't released just yet, but I'll try to do some trial and error with different versions going back to Windows 7 and a couple of machines to see if I can troubleshoot or narrow down the issue. I will post here again in a couple of hours or tomorrow at the latest with more details.

For now, the info on this laptop would be an Acer A515-54G, with trackpad IDs being:

Code: Select all

HID\VEN_SYNA&DEV_7DB5&Col01
HID\SYNA7DB5&Col01
HID\*SYNA7DB5&Col01
HID\VID_06CB&UP:0001_U:0002
HID_DEVICE_SYSTEM_MOUSE
HID_DEVICE_UP:0001_U:0002
HID_DEVICE
There are no drivers available for it, from what I can tell it's something supplied by Windows itself as "precision drivers" (whatever that may be). However, I remember the trackpad being wired through Intel's SerialIO I2C I think it was, when the laptop launched several years ago the current version at the time required those drivers to be installed for it to work.
KaoDome
Posts: 4
Joined: Mon Sep 26, 2022 1:21 pm

Re: Recognizing touchpad scrolls in the search list.

Post by KaoDome »

I did some tests and found a way to track messages a specific control receives in case that helps, still not comprehensive enough because I just used the Windows installation I had at hand and in the same machine, but I hope to be able to give it a try in other configurations as well.

I uploaded several videos to Vimeo, YouTube was restricted at the time of upload, so I thought of that but displaying them at 1080p should be clear enough to read the messages.

This is what can be seen over there: focusing on the SysListView32 control, I disabled logging of some events because I don't think they are of any significance to the problem at hand, i.e.:
WM_STYLECHANGED
,
WM_STYLECHANGING
,
WM_SETCURSOR
,
WM_PAINT
,
WM_NOTIFY
,
WM_NCMOUSEMOVE
,
WM_NCHITTEST
and
WM_MOUSEMOVE
, everything else is logged along with the
LPARAM
and
WPARAM
(I think).

Two tests are the same, one is that control on a 64-bit Search Everything and another is the same control on a little example app I found over the net. Both controls receive the same messages when the different scrolling gestures are performed, except in Everything nothing really moves. I'm uploading the little example code as well, because I couldn't see anything specifically matching those messages over there, but I'm by no means versed on all of this.

The last video shows a similar thing but using a simple USB mouse with only scroll up and down wheel, so no lateral movement possible there. In that one you can see how Everything is responding accordingly, although you can also see that the messages the control receives are different, not the same ones as with the gestures, more... aptly named to say the least.

These are the links to the vids:
1. Everything, trackpad: https://vimeo.com/754209986
2. Example, trackpad: https://vimeo.com/754216584
3. Everything, mouse: https://vimeo.com/754213772

If you guys want to delve into what could be happening and want me to run some debugging tool or little example, do let me know, there's no problem at all.
Attachments
SysListView32 Example.rar
Example code and ready built binary for a SysListView32 control.
(2.86 MiB) Downloaded 209 times
void
Developer
Posts: 16735
Joined: Fri Oct 16, 2009 11:31 pm

Re: Recognizing touchpad scrolls in the search list.

Post by void »

Thank you for your post and videos KaoDome,

I have put on my TODO list to add support for WM_GESTURE.



It is strange Everything is not responding to LVM_SCROLL.

Are you using the Lite version of Everything?
-The Lite version does not support LVM_SCROLL.

Is lvm_scroll set to 1 in your %APPDATA%\Everything\Everything.ini?



You can view all the windows messages received by Everything in verbose debug mode.
KaoDome
Posts: 4
Joined: Mon Sep 26, 2022 1:21 pm

Re: Recognizing touchpad scrolls in the search list.

Post by KaoDome »

Sorry for the delay getting back to you void! The last of the week has been rather hectic and I couldn't really have much rest until now.

First of all, you're welcome for the post and videos! It's the least I could do since you're developing the app for us all to use and it works wonders, it simplifies searching for things in different external hard drive in my unorganized digital life hehe.

I was indeed using the Lite version of Everything, no reason in particular I just thought since I wasn't using any of the other features it would be more than enough. I have just now switched to the Full version (1021 nightly since I was updating anyway) and I can confirm scrolling works just fine now! So perhaps implementing support for
WM_GESTURE
isn't required? Perhaps it was just that
LVM_SCROLL
wasn't being handled in the Lite version.

I can confirm that
LVM_SCROLL
was set to 1 in the INI settings file while I was using Lite, also now in Full, but if there was no actual support for it in Lite that could have been it. I will still check with the verbose debug mode both versions I had before back and forth to see if there's anything else going on, but it looks OK to me now (at least in Full).

I hope to be able to have some time to check it out later today in some hours, but otherwise it'd have to be tomorrow at some point during the day.

Thank you very much for your time and everything by the way!
Post Reply