Compare commits

..

2 commits

3 changed files with 11 additions and 2 deletions

View file

@ -291,7 +291,8 @@ pub fn main() anyerror!void {
for (links.items) |link| {
try file_link.navigate(tui_proc.ref(), &link);
} else {
}
if (links.items.len == 0) {
if (!have_project)
try tui_proc.send(.{ "cmd", "open_project_cwd" });
try tui_proc.send(.{ "cmd", "show_home" });

View file

@ -93,7 +93,8 @@ fn process_git(self: *Self, m: tp.message) MessageFilter.Error!bool {
}
fn process_status(self: *Self, m: tp.message) MessageFilter.Error!bool {
defer Widget.need_render();
defer if (tui.frames_rendered() > 0)
Widget.need_render();
var value: []const u8 = undefined;
var ahead: []const u8 = undefined;

View file

@ -61,6 +61,7 @@ fontface_: []const u8 = "",
fontfaces_: std.ArrayListUnmanaged([]const u8) = .{},
enable_mouse_idle_timer: bool = false,
query_cache_: *syntax.QueryCache,
frames_rendered_: usize = 0,
const keepalive = std.time.us_per_day * 365; // one year
const idle_frames = 0;
@ -449,6 +450,7 @@ fn receive_safe(self: *Self, from: tp.pid_ref, m: tp.message) !void {
}
fn render(self: *Self) void {
defer self.frames_rendered_ += 1;
const current_time = std.time.microTimestamp();
if (current_time < self.frame_last_time) { // clock moved backwards
self.frame_last_time = current_time;
@ -1184,6 +1186,11 @@ pub fn need_render() void {
}
}
pub fn frames_rendered() usize {
const self = current();
return self.frames_rendered_;
}
pub fn resize() void {
mainview_widget().resize(screen());
refresh_hover();