Comment 2 for bug 1955662

Revision history for this message
Lithopsian (x-uzuntu-c) wrote :

Given that multiple applications seem to work this way, I think it would be preferable to handle it somehow. I can think of at least a couple of ways of working with this approach.

One way would be to keep kicking the can down the road when events are received with the shift or mouse button down. Only the final selection would then be processed inside Diodon. A fairly rapid timer could be used, probably only the first time an event is received with the selection still in progress or it could snowball, then cancelled when the selection is finally complete and has been processed by Diodon. Maybe not elegant, but should be a fairly simple solution.

Another approach is to process the selection for each event, but track when it appears to be an incremental enlargement of the previous one. Might need to track incremental reduction in selections also. Incremental might involve quite big changes, such as a whole new line being added to the selection, but I think it should still be practical. I know that gpaste does this because it has a specific option to enable it, but I'm not sure how bulletproof it is because that's not a clipboard manager that I use in real life. Looks like it can still produce a whole stream of steadily-smaller selections in some situations.