File window thumbnails custom sort

Started by pmcabinet, August 09, 2023, 10:24:53 PM

Previous topic - Next topic

pmcabinet

I have a persistent problem with custom sort for thumbnails. Click and drag to move a thumbnail up or down in the file window causes iMatch to scroll the folder thumbnails at a furious rate to the top or bottom of the file window and makes it impossible to select the desired position (unless that position is right at the top or bottom of the window).

Other scrolling functions in iMatch seem to work OK. Is this a glitch in the software or a Windows 10 thing?  Changing mouse settings in the OS makes no difference.

Mario

Note that I have not used the legacy Windows 10 version for a long time.
Windows 10 is very old and support will close down not long from now.

But when I drag an image to the bottom or top of a File Window, scrolling is "ballisitic", which means it starts to scroll slowly, unless you move the mouse a large distance "out" of the file window. Which makes scrolling faster, but definitely not unmanageable or anything.

Maybe switch to a File Window layout like "Thumbs only" and make the panels very small by sliding the thumbnail zoom slider all the way to the left. This way you see many files at once, and scrolling may not be needed at all to reorder files.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

pmcabinet

I get the workaround Mario, and it could be useful, but there is a limit to how many files can be squeezed into a window. Please forgive the bold shout but this was never a problem in iMatch 2021 so I'm wondering what has changed.

In my case, no 'intermediate' or gradual scrolling speed is possible. The yellow insert marker will move but, when you reach either the top or bottom of the window - then there is an instant scroll to the top or bottom; the action is, as you put it, 'ballistic'. It's actually quite comical, like a video or fairground game you can never win!

I do emphasise that other scrolling functions in iMatch work OK.

I can't test this behaviour on another machine because I had to give up on iMatch Anywhere - I could never get it to work and uninstalled it.

Mario

#3
Very strange.
The custom reordering of File Window items is basically a sub-function of the general drag & drop handling in File Windows.
You can drag files from IMatch to an external application, e.g. to open them.

When you select files and start dragging, nothing happens (except visual feedback) until you drag the files out of the File
Window. This is all handled by the standard drag & drop feature in Windows, which IMatch implements. Basically, IMatch just reacts on events Windows sends to it when you drag File Window items around.

If the custom sort profile is enabled, IMatch handles drag & drop differently. If the mouse cursor is within the File Window, it displays the yellow insert cursor. If the mouse cursor is within 10 pixels of the top/bottom of the File Window, it tells the File Window to scroll one row down / up. Again, the event "drag scroll" is sent by Windows.

On my two computers, this event is sent about every 0.5 seconds, which means the File Window scrolls up/down one row every 0.5 seconds while you keep the mouse cursor near the top / bottom. Windows stops sending the "drag scroll" message as soon as the cursor leaves the File Window or when the scroll range of the File Window is exceeded (you see the first/last row).

There is no wrap-around. Windows stops sending the "drag scroll" event as soon as the end of the scroll range is reached.

I have no idea what makes your system behave as it does.
Do you use any unusual mouse settings? A unusual mouse or pointer device?
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

pmcabinet

Thank you for your thoughts Mario.

OK, so I've bought a new mouse and keyboard combo (Dell KM7321W) - good quality and certainly not unusual. But still the custom sort is uncontrollable.

I have tried changing the Windows mouse setting to scroll various numbers of lines (1-5) per wheel notch. But none made any difference.

Since I like to shuffle the file order around quite a bit this behaviour has become quite an irritation.

"If the mouse cursor is within 10 pixels of the top/bottom of the File Window, it tells the File Window to scroll one row down / up" - this is not happening.

You are clearly thinking I am a dinosaur for not upgrading to W11! Do you think it could make any difference?

Please bear in mind this problem did not occur in iMatch 2021. Is it possible to revert so I can compare behaviour? I can't think of any other way to find the source of the problem. Any suggestions?


Mario

#5
QuoteYou are clearly thinking I am a dinosaur for not upgrading to W11! Do you think it could make any difference?
No. And I designed and implemented this for IMatch 5, when Windows 7 was modern.
I test IMatch on Windows 10 and Windows 11 and I cannot see this behavior.

Windows stops sending events to IMatch as soon as the scroll range is exceeded, no wrapping or anything.

QuotePlease bear in mind this problem did not occur in iMatch 2021.
Strange. The last change in the drag & scroll code in the File Window was many years ago.
I've basically implemented this once and never touched it since then.

Windows tells IMatch to scroll the Window up/down while the user is dragging File Window items around inside the File Window, and IMatch does that, one line at a time.

Do you have problems dragging files from an IMatch File Window to other applications, too?
Which File Window layout do you use? Did you try different layout?

Just tried with a fresh install of IMatch 2023.2.4 on a Windows 10 system.
Reordering files in the FW works as designed. When I drag the file to the top/bottom of the File Window, scrolling begins at a speed of about 2 rows per second. If the top / bottom is reached, scrolling stops.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

twe

I tried custom sort order, and get the same issue as pmcabinet described.  I had 40 photos total, and filewindow displaying 5 photos per row.

Impossible to arrange photos outside of the current displayed thumbnails, the scrolling is out of control and way too fast.

I found no way of controlling the scrolling via the scroll wheel (also tried different combinations of using alt, ctrl or shift). Also tried to use the The Clipboard panel, as a temporary lighttable canvas, but it was of no help for custom sort either. (I understand it is not designed for this use)

So doing a "lighttable" custom sort of 40 or more photos was very frustrating. 
It would be very nice if arrow keys or PageUp\PageDown could be used to scroll one row at a time
Or have a kind of clipboard canvas, to drag files to, and then scroll to the right insert point and drop the photo in place.






thrinn

I also tried custom sort right now. Indeed, the scrolling when the mouse comes near the top or bottom is very fast. Definitely more than 2 rows per second. With a reasonable number of files (~100) it does not make any recognizable difference when I use different thumbnail sizes.

Then I tried the Custom sort with a file window with ~11.000 files. Now the scrolling is a bit slower, but still faster than 2 rows per second.

I checked my mouse settings: Mouse speed is set to the middle (I believe this is standard). I use Logitech MX 2 mouse and I am on Windows 11.

I tried different layouts but could not see any difference here.
Thorsten
Win 10 / 64, IMatch 2018, IMA

Mario

#8
How strange.  So, more than one user is affected.
I wonder what's causing this.
Are you using Windows 10 or Windows 11?
How many rows of thumbnails does your file window show?

This has nothing to do with mouse cursor speed, AFAIK.

When you start dragging a File Window item, IMatch invokes Windows's drag & drop protocol mechanism.
This way, you can drag files from IMatch to other applications, Windows Explorer etc.
Until you release the mouse button, IMatch is in a 'reactive' role, responding to events Windows sends. For example, when you're near the top/bottom of the File Window, Windows sends "drag scroll" events. And IMatch scrolls a row up/down.

On my two Windows 11 systems, these events are send at about 2 times per second.
On your system, this event seems to be sent way more often, making scrolling too fast.

I need to investigate this. As I said, this code is in place for many years.

Probably I built in some timing controller. Remembering when the user started to scroll and when Windows sends the drag scroll event, check if the last event was at least 0.5 seconds or so ago, before scrolling a row.
Or maybe even implement a ramp, to to make scrolling faster when the user holds the scroll position near the top/bottom for a while, to allow to cover larger distances more quickly.
-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

Mario

#9
OK, had some time today to look into this.

I have now re-implemented this to make this work in a "controlled" fashion. Controlled here meaning under the control of IMatch.

IMatch now tracks when scrolling started and when the last drag scroll event was received.
If the mouse cursor is within the range of two menu text heights from the top / bottom of the file window, IMatch considers scrolling. When the last scroll was more than 500ms (0.5s) ago, the scroll is performed.

If the mouse cursor is within one menu text height from the top/bottom, IMatch scrolls every 200ms (0.2s).

This means that the user can scroll 2.5 times as fast by moving the cursor nearer to the top/bottom and by moving it way again, normal scroll speed is restored.

If less than 5 rows are visible, scroll speed halved.

I've made a few test on 3 computers and it feels good.
I will include this change in the next IMatch update.

-- Mario
IMatch Developer
Forum Administrator
http://www.photools.com  -  Contact & Support - Follow me on 𝕏 - Like photools.com on Facebook

pmcabinet

Thank you Mario. FYI dragging and dropping into other apps works fine, as do all other mouse/scrolling functions.

Looking forward to testing the update when you have time to publish it.