Skip to content

Commit aadbde6

Browse files
authored
Merge pull request #346 from calband/issue/pinch_and_zooom_fix
Fixing up pinch and zoom.
2 parents 540947d + c55426a commit aadbde6

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/basic_ui.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -213,21 +213,21 @@ void MouseMoveScrollCanvas::OnMousePinchToZoom(wxMouseEvent& event)
213213
auto point_before = [this](auto&& event) {
214214
wxClientDC dc(this);
215215
PrepareDC(dc);
216-
auto mouse_point = mLastPos;
216+
auto mouse_point = event;
217217
mouse_point.x = dc.DeviceToLogicalX(mouse_point.x);
218218
mouse_point.y = dc.DeviceToLogicalY(mouse_point.y);
219219
return mouse_point;
220-
}(event);
220+
}(mLastPos);
221221
SetZoom(GetZoom() * (1.0 + event.GetMagnification()));
222222
auto point_after = [this](auto&& event) {
223223
wxClientDC dc(this);
224224
PrepareDC(dc);
225-
auto mouse_point = mLastPos;
226-
mouse_point.x = dc.DeviceToLogicalX(mouse_point.x);
227-
mouse_point.y = dc.DeviceToLogicalY(mouse_point.y);
225+
auto mouse_point = event;
226+
mouse_point.x = dc.LogicalToDeviceX(mouse_point.x);
227+
mouse_point.y = dc.LogicalToDeviceY(mouse_point.y);
228228
return mouse_point;
229-
}(event);
230-
ChangeOffset((point_before - point_after) * GetZoom());
229+
}(point_before);
230+
ChangeOffset(point_after - mLastPos);
231231
}
232232

233233
void MouseMoveScrollCanvas::OnMouseWheel(wxMouseEvent& event)

0 commit comments

Comments
 (0)