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 ...)


--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to