]> git.neil.brown.name Git - edlib.git/commitdiff
render-lines: pass focus to vmark_set()
authorNeilBrown <neil@brown.name>
Wed, 9 Aug 2023 01:04:35 +0000 (11:04 +1000)
committerNeilBrown <neil@brown.name>
Fri, 11 Aug 2023 04:36:37 +0000 (14:36 +1000)
Good practice is to always send the focus.
We will need this to get the prefix at 'set' time.

Signed-off-by: NeilBrown <neil@brown.name>
render-lines.c

index 3ddbca1f7389a48b80191b876588aac3e0bfe2cd..0ec51df3d37ba2819b5b0a5b4e0d9ef5bd18b7d7 100644 (file)
@@ -145,12 +145,13 @@ static void vmark_free(struct mark *m safe)
        mark_free(m);
 }
 
-static void vmark_set(struct pane *p safe, struct mark *m safe, char *line safe)
+static void vmark_set(struct pane *p safe, struct pane *focus safe,
+                     struct mark *m safe, char *line safe)
 {
        if (!m->mdata)
                m->mdata = call_ret(pane, "attach-renderline", p, -1);
        if (m->mdata)
-               pane_call(m->mdata, "render-line:set", p, -1, NULL, line);
+               pane_call(m->mdata, "render-line:set", focus, -1, NULL, line);
 }
 
 static void vmark_invalidate(struct mark *m safe)
@@ -298,7 +299,7 @@ static void call_render_line(struct pane *home safe, struct pane *p safe,
                return;
        }
        if (s)
-               vmark_set(home, start, s);
+               vmark_set(home, p, start, s);
 
        m2 = vmark_matching(m);
        if (m2)
@@ -1252,7 +1253,7 @@ DEF_CMD(render_lines_revise)
                if (!rl->header)
                        rl->header = mark_new(focus);
                if (rl->header) {
-                       vmark_set(p, rl->header, hdr);
+                       vmark_set(p, focus, rl->header, hdr);
                        measure_line(p, focus, rl->header);
                }
        } else if (rl->header) {