The PROCEDURE WheelScroll in MODULE HostWindows doesn't work in Linux under Wine.
How to produce the error?
1. Open a document e.g. Host/Mod/Windows.odc
2. Move the whole window down until the bottom line is outside the display area.
3. Move the mouse inside this window and turn the scroll bar.
4. Lines are insert at the bottom are unreadable.
When I change the
lines := 3;
res := WinApi.SystemParametersInfoW(104 (*SPI_GETWHEELSCROLLLINES*), 0, SYSTEM.ADR(lines), 0);
against
lines := 1;
(*
res := WinApi.SystemParametersInfoW(104 (*SPI_GETWHEELSCROLLLINES*), 0, SYSTEM.ADR(lines), 0);
*)
than slow scrolling works in Wine too.
- Helmut
Mouse Scroll Bug
-
- Posts: 262
- Joined: Tue Sep 17, 2013 6:50 am
Re: Mouse Scroll Bug
Does it mean that WinApi.SystemParametersInfoW is not supprted under wine?
What is the value in "lines" after calling it?
It should be 3 (the Windows default) or may be some user configured value.
What if you set lines := 3; under wine without calling WinApi.SystemParametersInfoW?
- Josef
What is the value in "lines" after calling it?
It should be 3 (the Windows default) or may be some user configured value.
What if you set lines := 3; under wine without calling WinApi.SystemParametersInfoW?
- Josef
Re: Mouse Scroll Bug
> What is the value in "lines" after calling it?
It's value is always 3.
> What if you set lines := 3; under wine without calling WinApi.SystemParametersInfoW?
I have the same problem.
- Helmut
It's value is always 3.
> What if you set lines := 3; under wine without calling WinApi.SystemParametersInfoW?
I have the same problem.
- Helmut
Re: Mouse Scroll Bug
Note: Setting lines equal one, doesn't solve the problem. Slow scroll works but sometimes fast scroll produce the same error.
-
- Posts: 262
- Joined: Tue Sep 17, 2013 6:50 am
Re: Mouse Scroll Bug
I have no idea what may cause such a behavior.
- Josef
- Josef
Re: Mouse Scroll Bug
So I am too.
I propose to change in HostWindows the number of lines to one for wine and left it unchanged for Windows
IF Dialog.IsWine() THEN
lines := 1;
ELSE
lines := 3;
res := WinApi.SystemParametersInfoW(104 (*SPI_GETWHEELSCROLLLINES*), 0, SYSTEM.ADR(lines), 0);
END;
That help me very much and solves 90% of my problem.
- Helmut
I propose to change in HostWindows the number of lines to one for wine and left it unchanged for Windows
IF Dialog.IsWine() THEN
lines := 1;
ELSE
lines := 3;
res := WinApi.SystemParametersInfoW(104 (*SPI_GETWHEELSCROLLLINES*), 0, SYSTEM.ADR(lines), 0);
END;
That help me very much and solves 90% of my problem.
- Helmut
-
- Posts: 262
- Joined: Tue Sep 17, 2013 6:50 am
Re: Mouse Scroll Bug
It seems to be a clipping/updating problem under wine.
You can also produce pixel garbage if lines := 1.
It looks like the problem occurs when the screen update is not yet finished when the next scroll event arrives,
or something like that.
Try scrolling multiple lines with a single mouse wheel turn.
- Josef
You can also produce pixel garbage if lines := 1.
It looks like the problem occurs when the screen update is not yet finished when the next scroll event arrives,
or something like that.
Try scrolling multiple lines with a single mouse wheel turn.
- Josef
Re: Mouse Scroll Bug
Most the time I read the next line 3 times (the second and third line overwritten with the first line). Seldom all 3 lines are unreadable.Josef Templ wrote: Try scrolling multiple lines with a single mouse wheel turn.
- Josef
- Ivan Denisov
- Posts: 362
- Joined: Tue Sep 17, 2013 12:21 am
- Location: Krasnoyarsk, Russia
Re: Mouse Scroll Bug
There is the bug item in tracker for this
https://redmine.blackboxframework.org/issues/130
https://redmine.blackboxframework.org/issues/130
-
- Posts: 262
- Joined: Tue Sep 17, 2013 6:50 am
Re: Mouse Scroll Bug
Did someone from oberoncore ever look at this bug?
Is it true that it is only related to wine? So far, I was not ale to
produce it under Windows.
- Josef
Is it true that it is only related to wine? So far, I was not ale to
produce it under Windows.
- Josef