commit - d9a7ab538a90fea0c81ac4c31fd196123baf4fd4
commit + 27187d45e7a2f096a06777e5ffde690e3c049490
blob - 03896eaec6ac32378d42edec34772acd9108d8bf
blob + 2a08545196a8a55276ca860ed3c40e5d659d2134
--- tog/tog.c
+++ tog/tog.c
v->resize = v->child->resize = resize; /* lock for resize event */
if (view->mode == TOG_VIEW_SPLIT_HRZN) {
+ int y = v->child->begin_y;
+
if (v->child->resized_y)
v->child->begin_y = v->child->resized_y;
if (view->parent)
if (err)
return err;
v->child->resized_y = v->child->begin_y;
+ if (y > v->child->begin_y) /* split increased */
+ v->child->nscrolled = y - v->child->begin_y;
} else {
if (v->child->resized_x)
v->child->begin_x = v->child->resized_x;
return err;
}
- if (v->type == TOG_VIEW_LOG)
+ if (v->type == TOG_VIEW_LOG && v->nscrolled)
err = request_log_commits(v);
- else if (v->child->type == TOG_VIEW_LOG)
+ else if (v->child->type == TOG_VIEW_LOG && v->child->nscrolled)
err = request_log_commits(v->child);
v->resize = v->child->resize = 0;
offset_selection_up(v);
offset_selection_up(v->child);
}
- if (v->type == TOG_VIEW_LOG)
+ if (v->type == TOG_VIEW_LOG && v->nscrolled)
err = request_log_commits(v);
- else if (v->child->type == TOG_VIEW_LOG)
+ else if (v->child->type == TOG_VIEW_LOG && v->child->nscrolled)
err = request_log_commits(v->child);
return err;
struct tog_log_view_state *state = &view->state.log;
const struct got_error *err = NULL;
- state->thread_args.commits_needed = view->nscrolled;
+ state->thread_args.commits_needed += view->nscrolled;
err = trigger_log_thread(view, 1);
view->nscrolled = 0;