Index: Makefile =================================================================== --- Makefile (revision 417396) +++ Makefile (working copy) @@ -3,6 +3,7 @@ PORTNAME= zathura-pdf-mupdf PORTVERSION= 0.3.0 +PORTREVISION= 1 CATEGORIES= graphics MASTER_SITES= http://pwmt.org/projects/zathura-pdf-mupdf/download/ @@ -16,14 +17,15 @@ mupdf>=1.8,1:graphics/mupdf RUN_DEPENDS= zathura:graphics/zathura LIB_DEPENDS= libjbig2dec.so:graphics/jbig2dec \ - libopenjp2.so:graphics/openjpeg + libopenjp2.so:graphics/openjpeg \ + libgirara-gtk3.so:x11-toolkits/girara PLIST_FILES= lib/zathura/pdf.so share/applications/zathura-pdf-mupdf.desktop -MAKE_ARGS= MUPDF_LIB=-lmupdf_pic OPENSSL_INC=-I${OPENSSLINC} \ +MAKE_ARGS= MUPDF_LIB="-lmupdf_pic -lmupdfthird_pic" OPENSSL_INC=-I${OPENSSLINC} \ OPENSSL_LIB="-L${OPENSSLLIB} -lcrypto" -USES= compiler:c11 desktop-file-utils gmake pkgconfig -USE_GNOME= glib20 gtk30 +USES= compiler:c11 desktop-file-utils gmake gettext jpeg pkgconfig +USE_GNOME= cairo gdkpixbuf2 glib20 gtk30 USE_OPENSSL= yes CONFLICTS_INSTALL= zathura-pdf-poppler-[0-9]* Index: files/patch-document.c =================================================================== --- files/patch-document.c (nonexistent) +++ files/patch-document.c (working copy) @@ -0,0 +1,22 @@ +--- document.c.orig 2016-02-14 22:49:46 UTC ++++ document.c +@@ -109,12 +109,16 @@ pdf_document_save_as(zathura_document_t* + } + + fz_try (mupdf_document->ctx) { +- /* fz_write_document claims to accepts NULL as third argument but doesn't. ++ /* fz_save_document claims to accepts NULL as third argument but doesn't. + * pdf_write_document does not check if the third arguments is NULL for some + * options. */ + +- fz_write_options opts = { 0 }; /* just use the default options */ +- fz_write_document(mupdf_document->ctx, mupdf_document->document, (char*) path, &opts); ++ pdf_write_options opts = { 0 }; /* just use the default options */ ++ pdf_document *pdf = pdf_specifics(mupdf_document->ctx, mupdf_document->document); ++ if (!pdf) { ++ return ZATHURA_ERROR_UNKNOWN; ++ } ++ pdf_save_document(mupdf_document->ctx, pdf, (char*) path, &opts); + } fz_catch (mupdf_document->ctx) { + return ZATHURA_ERROR_UNKNOWN; + } Index: files/patch-image.c =================================================================== --- files/patch-image.c (nonexistent) +++ files/patch-image.c (working copy) @@ -0,0 +1,11 @@ +--- image.c.orig 2016-06-24 13:57:02 UTC ++++ image.c +@@ -93,7 +93,7 @@ pdf_page_image_get_cairo(zathura_page_t* + fz_pixmap* pixmap = NULL; + cairo_surface_t* surface = NULL; + +- pixmap = fz_new_pixmap_from_image(mupdf_page->ctx, mupdf_image, 0, 0); ++ pixmap = fz_get_pixmap_from_image(mupdf_page->ctx, mupdf_image, 0, 0); + if (pixmap == NULL) { + goto error_free; + } Index: files/patch-page.c =================================================================== --- files/patch-page.c (nonexistent) +++ files/patch-page.c (working copy) @@ -0,0 +1,31 @@ +--- page.c.orig 2016-02-14 22:49:46 UTC ++++ page.c +@@ -43,12 +43,12 @@ pdf_page_init(zathura_page_t* page) + /* setup text */ + mupdf_page->extracted_text = false; + +- mupdf_page->text = fz_new_text_page(mupdf_page->ctx); ++ mupdf_page->text = fz_new_stext_page(mupdf_page->ctx); + if (mupdf_page->text == NULL) { + goto error_free; + } + +- mupdf_page->sheet = fz_new_text_sheet(mupdf_page->ctx); ++ mupdf_page->sheet = fz_new_stext_sheet(mupdf_page->ctx); + if (mupdf_page->sheet == NULL) { + goto error_free; + } +@@ -74,11 +74,11 @@ pdf_page_clear(zathura_page_t* page, mup + + if (mupdf_page != NULL) { + if (mupdf_page->text != NULL) { +- fz_drop_text_page(mupdf_page->ctx, mupdf_page->text); ++ fz_drop_stext_page(mupdf_page->ctx, mupdf_page->text); + } + + if (mupdf_page->sheet != NULL) { +- fz_drop_text_sheet(mupdf_page->ctx, mupdf_page->sheet); ++ fz_drop_stext_sheet(mupdf_page->ctx, mupdf_page->sheet); + } + + if (mupdf_page->page != NULL) { Index: files/patch-plugin.h =================================================================== --- files/patch-plugin.h (nonexistent) +++ files/patch-plugin.h (working copy) @@ -0,0 +1,13 @@ +--- plugin.h.orig 2016-02-14 22:49:46 UTC ++++ plugin.h +@@ -21,8 +21,8 @@ typedef struct mupdf_page_s + { + fz_page* page; /**< Reference to the mupdf page */ + fz_context* ctx; /**< Context */ +- fz_text_sheet* sheet; /**< Text sheet */ +- fz_text_page* text; /**< Page text */ ++ fz_stext_sheet* sheet; /**< Text sheet */ ++ fz_stext_page* text; /**< Page text */ + fz_rect bbox; /**< Bbox */ + bool extracted_text; /**< If text has already been extracted */ + } mupdf_page_t; Index: files/patch-search.c =================================================================== --- files/patch-search.c (nonexistent) +++ files/patch-search.c (working copy) @@ -0,0 +1,11 @@ +--- search.c.orig 2016-02-14 22:49:46 UTC ++++ search.c +@@ -40,7 +40,7 @@ pdf_page_search_text(zathura_page_t* pag + } + + fz_rect* hit_bbox = fz_malloc_array(mupdf_page->ctx, N_SEARCH_RESULTS, sizeof(fz_rect)); +- int num_results = fz_search_text_page(mupdf_page->ctx, mupdf_page->text, ++ int num_results = fz_search_stext_page(mupdf_page->ctx, mupdf_page->text, + (char*) text, hit_bbox, N_SEARCH_RESULTS); + + for (int i = 0; i < num_results; i++) { Index: files/patch-utils.c =================================================================== --- files/patch-utils.c (nonexistent) +++ files/patch-utils.c (working copy) @@ -0,0 +1,11 @@ +--- utils.c.orig 2016-02-14 22:49:46 UTC ++++ utils.c +@@ -14,7 +14,7 @@ mupdf_page_extract_text(mupdf_document_t + fz_device* text_device = NULL; + + fz_try (mupdf_page->ctx) { +- text_device = fz_new_text_device(mupdf_page->ctx, mupdf_page->sheet, mupdf_page->text); ++ text_device = fz_new_stext_device(mupdf_page->ctx, mupdf_page->sheet, mupdf_page->text); + + /* Disable FZ_IGNORE_IMAGE to collect image blocks */ + fz_disable_device_hints(mupdf_page->ctx, text_device, FZ_IGNORE_IMAGE);