static enum request blob_request(struct view *view, enum request request, struct line *line) { switch (request) { case REQ_VIEW_BLAME: if (view->parent) string_copy(view->env->ref, view->parent->vid); return request; case REQ_EDIT: open_blob_editor(view->vid, NULL, (line - view->line) + 1); return REQ_NONE; default: return pager_request(view, request, line); } }
static enum request help_request(struct view *view, enum request request, struct line *line) { switch (request) { case REQ_ENTER: if (line->type == LINE_HELP_KEYMAP) { struct keymap *keymap = line->data; keymap->hidden = !keymap->hidden; refresh_view(view); } return REQ_NONE; default: return pager_request(view, request, line); } }