Масштаб таймлайна берётся от точки под мышкой
Ctrl с колесом должен оставлять на месте то, на что смотрит мышь, а оставлял точку левее — ровно на левый край таймлайна. При мыши у левого края опора и вовсе уходила за пределы окна. Причина: MousePos у DoMouseWheel по описанию экранный, но под gtk2 в нём уже клиентские координаты, и ScreenToClient переводил их второй раз. Берём Mouse.CursorPos — он экранный в любой системе. Замерено на невидимом экране: до правки мышь в 700, 1000 и 1300 давала опору в 260, 560 и 860; после — ровно 700, 1000 и 1300. Проверка оформлена в tests/zoomanchor.py и прогнана на обеих сборках: на прежней она падает, на новой проходит.
This commit is contained in:
parent
4526f65fcc
commit
d0ec869743
4 changed files with 130 additions and 2 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -51,6 +51,9 @@ shot*.png
|
|||
/tests/lfmcheck/lfmcheck
|
||||
/tests/lfmcheck/units/
|
||||
|
||||
# Снимок, который делает проверка масштаба таймлайна.
|
||||
/tests/кадры-зума.png
|
||||
|
||||
# Проверка хода полоски: двоичный файл и промежуточные модули.
|
||||
/tests/progress/progtest
|
||||
/tests/progress/*.o
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue