[Lazarus] trunk OSX Lion 10.7.2 Scrolling Problem

Martin lazarus at mfriebe.de
Mon Jan 2 16:20:41 CET 2012


On 02/01/2012 09:37, Helmut Hartl wrote:
> I guessed and changed it to 40: (because the above code is the same as 
> in svn)
>
> ---
> procedure TCustomSynEdit.WMMouseWheel(var Message: TLMMouseEvent);
> var
>   lState: TShiftState;
> const
>   WHEEL_DELTA = 40;
> begin
> ---
>
> but that does not help for me (it stutters and jumps just a bit 
> more/different nervous)

Interesting. I tested but on a very old Mac...
With 40 it does not stutter, but it does scroll 3 lines per wheel move.

Part of the issue is that
    Mouse.WheelScrollLines
returns "3" lines to be scrolled per "wheel click"

I have no idea where on a mac that can be configured, or how else this 
value come to be...

As far al I can see, a mac always scrolls one line for a single "wheel 
click", but depending on the systems wheel speed setting, it increases 
this, if several consecutive clicks are received.

Anyway, I have to wait until someone who knows the LCL carbon code, 
confirms what should be expected, and how this should be compatible with 
other widgetsets. (I've send the question out already... / off this list)

---------
you can go to the "mouse" settings in the lazarus general options, and 
force one line per click

>
> Maybe something elso gone wrong with the refactoring in rev.33972.
>
> The working hack (scrolling works with the hack)
> -- 
> procedure TCustomSynEdit.WMMouseWheel(var Message: TLMMouseEvent);
> begin
>   Message.Result:=0;
> end;
> -- 
> gives the impression that the events are handled elsewhere ?

somewhere in the LCL...

But that is no solution, as the above kills the new settings in lazarus 
for the mouse wheel (editor zoom / scroll pages ...)





More information about the Lazarus mailing list