diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2018-07-02 12:07:04 +0200 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2018-07-05 15:32:34 +0200 |
commit | e792804dcfa3c8d868d58a28c421feb17dfc0b7e (patch) | |
tree | c2bcdc48965142e52510a5e9a8a9f5fcb6e52520 /platform/gl/gl-main.c | |
parent | 4cda8ae62880a807a3b19d68b5407eafeea6e338 (diff) | |
download | mupdf-e792804dcfa3c8d868d58a28c421feb17dfc0b7e.tar.xz |
gl: Poll changed annots with pdf_update_page, and clear after rendering.
Diffstat (limited to 'platform/gl/gl-main.c')
-rw-r--r-- | platform/gl/gl-main.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/platform/gl/gl-main.c b/platform/gl/gl-main.c index ee182cdd..899dc4ec 100644 --- a/platform/gl/gl-main.c +++ b/platform/gl/gl-main.c @@ -266,6 +266,13 @@ void render_page(void) fz_gamma_pixmap(ctx, pix, 1 / 1.4f); } + if (pdf) + { + pdf_annot *annot; + for (annot = page->annots; annot; annot = annot->next) + annot->has_new_ap = 0; + } + ui_texture_from_pixmap(&page_tex, pix); fz_drop_pixmap(ctx, pix); } @@ -573,8 +580,8 @@ static void do_forms(void) { if (pdf->focus) ui.active = &do_forms_tag; - pdf_update_page(ctx, (pdf_page*)page); - render_page(); + if (pdf_update_page(ctx, page)) + render_page(); } } else if (ui.active == &do_forms_tag && !ui.down) @@ -585,8 +592,8 @@ static void do_forms(void) event.event.pointer.ptype = PDF_POINTER_UP; if (pdf_pass_event(ctx, pdf, (pdf_page*)page, &event)) { - pdf_update_page(ctx, (pdf_page*)page); - render_page(); + if (pdf_update_page(ctx, page)) + render_page(); } } } |