Улучшение
This commit is contained in:
@@ -117,7 +117,7 @@ pub fn getScaledImageSize(self: Canvas) ImageRect {
|
||||
/// `viewport` и `scroll_offset` ожидаются в *physical* пикселях (т.е. уже умноженные на windowNaturalScale).
|
||||
///
|
||||
/// После обновления (или если текстуры ещё нет) перерисовывает текстуру, чтобы она содержала только видимую часть.
|
||||
pub fn updateVisibleImageRect(self: *Canvas, viewport: dvui.Rect, scroll_offset: dvui.Point) !bool {
|
||||
pub fn updateVisibleImageRect(self: *Canvas, viewport: dvui.Rect, scroll_offset: dvui.Point) bool {
|
||||
const next = computeVisibleImageRect(self.*, viewport, scroll_offset);
|
||||
var changed = false;
|
||||
if (self._visible_rect) |vis| {
|
||||
|
||||
@@ -49,11 +49,9 @@ fn drawCanvasContent(canvas: *Canvas, scroll: anytype) void {
|
||||
.y = scroll_current.y * natural_scale,
|
||||
};
|
||||
|
||||
const changed = canvas.updateVisibleImageRect(viewport_px, scroll_px) catch |err| {
|
||||
std.debug.print("updateVisibleImageRect error: {}\n", .{err});
|
||||
return false;
|
||||
};
|
||||
if (changed) canvas.requestRedraw();
|
||||
const changed = canvas.updateVisibleImageRect(viewport_px, scroll_px);
|
||||
if (changed)
|
||||
canvas.requestRedraw();
|
||||
canvas.processPendingRedraw() catch |err| {
|
||||
std.debug.print("processPendingRedraw error: {}\n", .{err});
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user