geany / geany-osx

Things needed to bundle Geany for OSX
Other
24 stars 14 forks source link

OSX scrolling screen refresh problem #19

Closed mathieulb closed 1 year ago

mathieulb commented 3 years ago

On OSX (since a long time), scroll quickly in any direction using the wheel, then click in the window. Do it repeatedly. You will find that there is a high chance that some variable indicating the current state of the scrollbar and scrollable area is actually farther than was shown, as clicking in the window suddenly makes the whole screen jump to the new position, which may be only a few lines further than was shown, or more than a screenful, depends. It is not normal that the document be scrolled by just clicking in it (except at the very bottom if the last line is partially displayed, and then that special case only scrolls up by one line).

Sometimes while using the wheel, the scrollable area shows two different portions of the document in a kind of accidental split screen, but I can't tell whether this is a separate bug or the same bug.

This is a 3rd-party mouse with a traditional stepping wheel. I don't have a touch sensor mouse to compare with. But now I just tried with the laptop's trackpad and the same happens as with the mouse wheel, using regular two-finger drag. When using a fling gesture, however, after the first redraw of the screen, there's a pause until about 3/4 of a second after touch-up (the equivalent of button release), before suddenly a long series of screen updates happens, whereas normally screen updates should be equally-spaced during the gesture and the decelerating motion that continues for a while.

Compare what those 3 cases (wheel, 2-finger drag, 2-finger fling) do in other apps (e.g. I tried with Firefox OSX using a long enough web page.)

techee commented 1 year ago

I've just made the following builds:

Geany 1.38 built with the latest GTK and other dependencies, including some extra fixes which I plan to release as the official macOS build on the Downloads page unless there are some problems with it: https://download.geany.org/snapshots/geany-1.38_osx-5.dmg https://download.geany.org/snapshots/geany-1.38_osx_arm64-2.dmg

Like the above but Geany and plugins are from current git master: https://download.geany.org/snapshots/geany-1.38_osx.dmg https://download.geany.org/snapshots/geany-1.38_osx_arm64.dmg

I think a lot of has changed in the GTK drawing and input handling implementations for the macOS backend so you might try if it fixes your problem.

mathieulb commented 1 year ago

Thanks, but I think that this bug had already disappeared. The last Geany I have is a 1.38 arm64 built on 19 déc 2021 and I think that it didn't have the bug. Since then I have stopped using Geany, so I won't be able to tell you if it still happens sometimes at a lesser frequency than before, but from just a few minutes of trying, both the version I had and your new package seem to work fine.

techee commented 1 year ago

OK, no worries. I haven't been able to reproduce this issue so I'll close it now.