Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package zathura-plugin-djvu for 
openSUSE:Factory checked in at 2024-08-13 13:23:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/zathura-plugin-djvu (Old)
 and      /work/SRC/openSUSE:Factory/.zathura-plugin-djvu.new.7232 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "zathura-plugin-djvu"

Tue Aug 13 13:23:42 2024 rev:7 rq:1193342 version:0.2.10

Changes:
--------
--- /work/SRC/openSUSE:Factory/zathura-plugin-djvu/zathura-plugin-djvu.changes  
2020-02-11 22:25:21.907566250 +0100
+++ 
/work/SRC/openSUSE:Factory/.zathura-plugin-djvu.new.7232/zathura-plugin-djvu.changes
        2024-08-13 13:24:03.960301284 +0200
@@ -1,0 +2,6 @@
+Sun Aug 11 10:13:04 UTC 2024 - Jakob Lorenz <onlyja...@mailbox.org>
+
+- Update to 0.2.10
+       * Implement basic selection rectangle
+
+-------------------------------------------------------------------

Old:
----
  zathura-djvu-0.2.9.tar.xz

New:
----
  zathura-djvu-0.2.10.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ zathura-plugin-djvu.spec ++++++
--- /var/tmp/diff_new_pack.8XOPrk/_old  2024-08-13 13:24:04.760334617 +0200
+++ /var/tmp/diff_new_pack.8XOPrk/_new  2024-08-13 13:24:04.764334784 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package zathura-plugin-djvu
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,17 +18,17 @@
 
 %define realname zathura-djvu
 Name:           zathura-plugin-djvu
-Version:        0.2.9
+Version:        0.2.10
 Release:        0
 Summary:        DjVu support for zathura using the djvulibre library
 License:        Zlib
 URL:            https://pwmt.org/projects/zathura-djvu/
 Source:         
https://pwmt.org/projects/zathura-djvu/download/%{realname}-%{version}.tar.xz
-BuildRequires:  meson >= 0.43
+BuildRequires:  meson >= 0.61
 BuildRequires:  pkgconfig
 BuildRequires:  pkgconfig(ddjvuapi)
 BuildRequires:  pkgconfig(girara-gtk3)
-BuildRequires:  pkgconfig(zathura)
+BuildRequires:  pkgconfig(zathura) >= 0.3.8
 Requires:       zathura
 Provides:       zathura-djvu-plugin
 
@@ -39,7 +39,7 @@
 %setup -q -n %{realname}-%{version}
 
 %build
-%meson
+%meson -Dtests=disabled
 %meson_build
 
 %install

++++++ zathura-djvu-0.2.9.tar.xz -> zathura-djvu-0.2.10.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/.clang-format 
new/zathura-djvu-0.2.10/.clang-format
--- old/zathura-djvu-0.2.9/.clang-format        1970-01-01 01:00:00.000000000 
+0100
+++ new/zathura-djvu-0.2.10/.clang-format       2024-08-04 10:33:34.000000000 
+0200
@@ -0,0 +1,15 @@
+---
+Language: Cpp
+BasedOnStyle: LLVM
+AlignConsecutiveAssignments: true
+AllowShortFunctionsOnASingleLine: Empty
+AllowShortIfStatementsOnASingleLine: false
+AlwaysBreakTemplateDeclarations: true
+BreakBeforeBraces: Attach
+ConstructorInitializerIndentWidth: 2
+NamespaceIndentation: All
+PointerAlignment: Left
+TabWidth: 2
+ColumnLimit: 120
+SortIncludes: false
+...
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/.gitignore 
new/zathura-djvu-0.2.10/.gitignore
--- old/zathura-djvu-0.2.9/.gitignore   1970-01-01 01:00:00.000000000 +0100
+++ new/zathura-djvu-0.2.10/.gitignore  2024-08-04 10:33:34.000000000 +0200
@@ -0,0 +1,5 @@
+*.o
+*~
+djvu.so
+*swp
+build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/LICENSE 
new/zathura-djvu-0.2.10/LICENSE
--- old/zathura-djvu-0.2.9/LICENSE      2020-01-06 11:00:18.000000000 +0100
+++ new/zathura-djvu-0.2.10/LICENSE     2024-08-04 10:33:34.000000000 +0200
@@ -1,4 +1,4 @@
-Copyright (c) 2010-2017 pwmt.org
+Copyright (c) 2010-2020 pwmt.org
 
 This software is provided 'as-is', without any express or implied
 warranty. In no event will the authors be held liable for any damages
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/data/meson.build 
new/zathura-djvu-0.2.10/data/meson.build
--- old/zathura-djvu-0.2.9/data/meson.build     2020-01-06 11:00:18.000000000 
+0100
+++ new/zathura-djvu-0.2.10/data/meson.build    2024-08-04 10:33:34.000000000 
+0200
@@ -1,2 +1,18 @@
 install_data('org.pwmt.zathura-djvu.metainfo.xml', install_dir: metainfodir)
 install_data('org.pwmt.zathura-djvu.desktop', install_dir: desktopdir)
+
+desktop_file_validate = find_program('desktop-file-validate', required: 
get_option('tests'), native: true)
+if desktop_file_validate.found()
+  test('validate-desktop',
+    desktop_file_validate,
+    args: [join_paths(meson.current_source_dir(), 
'org.pwmt.zathura-djvu.desktop')]
+  )
+endif
+
+appstream_util = find_program('appstream-util', required: get_option('tests'), 
native: true)
+if appstream_util.found()
+  test('validate-appdata',
+    appstream_util,
+    args: ['validate-relax', '--nonet', join_paths(meson.current_source_dir(), 
'org.pwmt.zathura-djvu.metainfo.xml')]
+  )
+endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/zathura-djvu-0.2.9/data/org.pwmt.zathura-djvu.desktop 
new/zathura-djvu-0.2.10/data/org.pwmt.zathura-djvu.desktop
--- old/zathura-djvu-0.2.9/data/org.pwmt.zathura-djvu.desktop   2020-01-06 
11:00:18.000000000 +0100
+++ new/zathura-djvu-0.2.10/data/org.pwmt.zathura-djvu.desktop  2024-08-04 
10:33:34.000000000 +0200
@@ -4,6 +4,7 @@
 Name=Zathura
 Comment=A minimalistic document viewer
 Exec=zathura %U
+Icon=org.pwmt.zathura
 Terminal=false
 NoDisplay=true
 Categories=Office;Viewer;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/meson.build 
new/zathura-djvu-0.2.10/meson.build
--- old/zathura-djvu-0.2.9/meson.build  2020-01-06 11:00:18.000000000 +0100
+++ new/zathura-djvu-0.2.10/meson.build 2024-08-04 10:33:34.000000000 +0200
@@ -1,7 +1,7 @@
 project('zathura-djvu', 'c',
-  version: '0.2.9',
-  meson_version: '>=0.43',
-  default_options: 'c_std=c11'
+  version: '0.2.10',
+  meson_version: '>=0.61',
+  default_options: ['c_std=c17', 'warning_level=3']
 )
 
 version = meson.project_version()
@@ -23,7 +23,7 @@
 build_dependencies = [zathura, girara, glib, cairo, djvu]
 
 if get_option('plugindir') == ''
-  plugindir = zathura.get_pkgconfig_variable('plugindir')
+  plugindir = zathura.get_variable(pkgconfig: 'plugindir')
 else
   plugindir = get_option('plugindir')
 endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/meson_options.txt 
new/zathura-djvu-0.2.10/meson_options.txt
--- old/zathura-djvu-0.2.9/meson_options.txt    2020-01-06 11:00:18.000000000 
+0100
+++ new/zathura-djvu-0.2.10/meson_options.txt   2024-08-04 10:33:34.000000000 
+0200
@@ -3,3 +3,8 @@
   value: '',
   description: 'Install to a different location than Zathura\'s plugin 
directory'
 )
+option('tests',
+  type: 'feature',
+  value: 'auto',
+  description: 'run tests'
+)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/zathura-djvu/djvu.c 
new/zathura-djvu-0.2.10/zathura-djvu/djvu.c
--- old/zathura-djvu-0.2.9/zathura-djvu/djvu.c  2020-01-06 11:00:18.000000000 
+0100
+++ new/zathura-djvu-0.2.10/zathura-djvu/djvu.c 2024-08-04 10:33:34.000000000 
+0200
@@ -13,36 +13,31 @@
 
 /* forward declarations */
 static const char* get_extension(const char* path);
-static void build_index(djvu_document_t *djvu_document, miniexp_t expression, 
girara_tree_node_t* root);
+static void build_index(djvu_document_t* djvu_document, miniexp_t expression, 
girara_tree_node_t* root);
 static bool exp_to_str(miniexp_t expression, const char** string);
 static bool exp_to_int(miniexp_t expression, int* integer);
 static bool exp_to_rect(miniexp_t expression, zathura_rectangle_t* rect);
 
-ZATHURA_PLUGIN_REGISTER_WITH_FUNCTIONS(
-  "djvu",
-  VERSION_MAJOR, VERSION_MINOR, VERSION_REV,
-  ZATHURA_PLUGIN_FUNCTIONS({
-    .document_open           = djvu_document_open,
-    .document_free           = djvu_document_free,
-    .document_index_generate = djvu_document_index_generate,
-    .document_save_as        = djvu_document_save_as,
-    .page_init               = djvu_page_init,
-    .page_clear              = djvu_page_clear,
-    .page_search_text        = djvu_page_search_text,
-    .page_get_text           = djvu_page_get_text,
-    .page_links_get          = djvu_page_links_get,
-    .page_render             = djvu_page_render,
-    .page_render_cairo       = djvu_page_render_cairo
-  }),
-  ZATHURA_PLUGIN_MIMETYPES({
-    "image/vnd.djvu",
-    "image/vnd.djvu+multipage"
-  })
-)
-
-zathura_error_t
-djvu_document_open(zathura_document_t* document)
-{
+ZATHURA_PLUGIN_REGISTER_WITH_FUNCTIONS("djvu", VERSION_MAJOR, VERSION_MINOR, 
VERSION_REV,
+                                       ZATHURA_PLUGIN_FUNCTIONS({
+                                           .document_open           = 
djvu_document_open,
+                                           .document_free           = 
djvu_document_free,
+                                           .document_index_generate = 
djvu_document_index_generate,
+                                           .document_save_as        = 
djvu_document_save_as,
+                                           .page_init               = 
djvu_page_init,
+                                           .page_clear              = 
djvu_page_clear,
+                                           .page_search_text        = 
djvu_page_search_text,
+                                           .page_get_text           = 
djvu_page_get_text,
+                                           .page_get_selection      = 
djvu_page_get_selection,
+                                           .page_links_get          = 
djvu_page_links_get,
+                                           .page_render_cairo       = 
djvu_page_render_cairo,
+                                       }),
+                                       ZATHURA_PLUGIN_MIMETYPES({
+                                           "image/vnd.djvu",
+                                           "image/vnd.djvu+multipage",
+                                       }))
+
+zathura_error_t djvu_document_open(zathura_document_t* document) {
   zathura_error_t error = ZATHURA_ERROR_OK;
 
   if (document == NULL) {
@@ -57,9 +52,14 @@
   }
 
   /* setup format */
-  static unsigned int masks[4] = {0x00FF0000, 0x0000FF00, 0x000000FF, 
0xFF000000};
-  djvu_document->format = ddjvu_format_create(DDJVU_FORMAT_RGBMASK32, 4, 
masks);
+  unsigned int masks[4] = {
+      0x00FF0000,
+      0x0000FF00,
+      0x000000FF,
+      0xFF000000,
+  };
 
+  djvu_document->format = ddjvu_format_create(DDJVU_FORMAT_RGBMASK32, 4, 
masks);
   if (djvu_document->format == NULL) {
     error = ZATHURA_ERROR_UNKNOWN;
     goto error_free;
@@ -77,11 +77,7 @@
 
   /* setup document */
   djvu_document->document =
-    ddjvu_document_create_by_filename(
-        djvu_document->context,
-        zathura_document_get_path(document),
-        FALSE
-    );
+      ddjvu_document_create_by_filename(djvu_document->context, 
zathura_document_get_path(document), FALSE);
 
   if (djvu_document->document == NULL) {
     error = ZATHURA_ERROR_UNKNOWN;
@@ -92,8 +88,7 @@
   ddjvu_message_t* msg;
   ddjvu_message_wait(djvu_document->context);
 
-  while ((msg = ddjvu_message_peek(djvu_document->context)) &&
-         (msg->m_any.tag != DDJVU_DOCINFO)) {
+  while ((msg = ddjvu_message_peek(djvu_document->context)) && (msg->m_any.tag 
!= DDJVU_DOCINFO)) {
     if (msg->m_any.tag == DDJVU_ERROR) {
       error = ZATHURA_ERROR_UNKNOWN;
       goto error_free;
@@ -110,8 +105,7 @@
   }
 
   zathura_document_set_data(document, djvu_document);
-  zathura_document_set_number_of_pages(document,
-      ddjvu_document_get_pagenum(djvu_document->document));
+  zathura_document_set_number_of_pages(document, 
ddjvu_document_get_pagenum(djvu_document->document));
 
   return error;
 
@@ -132,9 +126,7 @@
   return error;
 }
 
-zathura_error_t
-djvu_document_free(zathura_document_t* document, void* data)
-{
+zathura_error_t djvu_document_free(zathura_document_t* document, void* data) {
   djvu_document_t* djvu_document = data;
   if (document == NULL) {
     return ZATHURA_ERROR_INVALID_ARGUMENTS;
@@ -150,9 +142,7 @@
   return ZATHURA_ERROR_OK;
 }
 
-girara_tree_node_t*
-djvu_document_index_generate(zathura_document_t* document, void* data, 
zathura_error_t* error)
-{
+girara_tree_node_t* djvu_document_index_generate(zathura_document_t* document, 
void* data, zathura_error_t* error) {
   djvu_document_t* djvu_document = data;
   if (document == NULL || djvu_document == NULL) {
     if (error != NULL) {
@@ -162,8 +152,7 @@
   }
 
   miniexp_t outline = miniexp_dummy;
-  while ((outline = ddjvu_document_get_outline(djvu_document->document)) ==
-      miniexp_dummy) {
+  while ((outline = ddjvu_document_get_outline(djvu_document->document)) == 
miniexp_dummy) {
     handle_messages(djvu_document, true);
   }
 
@@ -184,9 +173,7 @@
   return root;
 }
 
-zathura_error_t
-djvu_document_save_as(zathura_document_t* document, void* data, const char* 
path)
-{
+zathura_error_t djvu_document_save_as(zathura_document_t* document, void* 
data, const char* path) {
   djvu_document_t* djvu_document = data;
   if (document == NULL || djvu_document == NULL || path == NULL) {
     return ZATHURA_ERROR_INVALID_ARGUMENTS;
@@ -206,7 +193,7 @@
     job = ddjvu_document_save(djvu_document->document, fp, 0, NULL);
   }
   while (ddjvu_job_done(job) != true) {
-      handle_messages(djvu_document, true);
+    handle_messages(djvu_document, true);
   }
 
   fclose(fp);
@@ -214,9 +201,7 @@
   return ZATHURA_ERROR_OK;
 }
 
-zathura_error_t
-djvu_page_init(zathura_page_t* page)
-{
+zathura_error_t djvu_page_init(zathura_page_t* page) {
   if (page == NULL) {
     return ZATHURA_ERROR_INVALID_ARGUMENTS;
   }
@@ -228,8 +213,7 @@
   ddjvu_pageinfo_t page_info;
 
   unsigned int index = zathura_page_get_index(page);
-  while ((status = ddjvu_document_get_pageinfo(djvu_document->document, index,
-          &page_info)) < DDJVU_JOB_OK) {
+  while ((status = ddjvu_document_get_pageinfo(djvu_document->document, index, 
&page_info)) < DDJVU_JOB_OK) {
     handle_messages(djvu_document, true);
   }
 
@@ -238,15 +222,13 @@
     return ZATHURA_ERROR_UNKNOWN;
   }
 
-  zathura_page_set_width(page,  ZATHURA_DJVU_SCALE * page_info.width);
+  zathura_page_set_width(page, ZATHURA_DJVU_SCALE * page_info.width);
   zathura_page_set_height(page, ZATHURA_DJVU_SCALE * page_info.height);
 
   return ZATHURA_ERROR_OK;
 }
 
-zathura_error_t
-djvu_page_clear(zathura_page_t* page, void* UNUSED(data))
-{
+zathura_error_t djvu_page_clear(zathura_page_t* page, void* UNUSED(data)) {
   if (page == NULL) {
     return ZATHURA_ERROR_INVALID_ARGUMENTS;
   }
@@ -254,9 +236,8 @@
   return ZATHURA_ERROR_OK;
 }
 
-girara_list_t*
-djvu_page_search_text(zathura_page_t* page, void* UNUSED(data), const char* 
text, zathura_error_t* error)
-{
+girara_list_t* djvu_page_search_text(zathura_page_t* page, void* UNUSED(data), 
const char* text,
+                                     zathura_error_t* error) {
   if (page == NULL || text == NULL || strlen(text) == 0) {
     if (error != NULL) {
       *error = ZATHURA_ERROR_INVALID_ARGUMENTS;
@@ -300,10 +281,8 @@
   return NULL;
 }
 
-char*
-djvu_page_get_text(zathura_page_t* page, void* UNUSED(data), 
zathura_rectangle_t
-    rectangle, zathura_error_t* error)
-{
+char* djvu_page_get_text(zathura_page_t* page, void* UNUSED(data), 
zathura_rectangle_t rectangle,
+                         zathura_error_t* error) {
   if (page == NULL) {
     if (error != NULL) {
       *error = ZATHURA_ERROR_INVALID_ARGUMENTS;
@@ -323,37 +302,37 @@
     goto error_ret;
   }
 
-  double tmp = 0;
+  double tmp         = 0;
   double page_height = zathura_page_get_height(page);
   double page_width  = zathura_page_get_width(page);
 
   switch (zathura_document_get_rotation(document)) {
-    case 90:
-      tmp = rectangle.x1;
-      rectangle.x1 = rectangle.y1;
-      rectangle.y1 = tmp;
-      tmp = rectangle.x2;
-      rectangle.x2 = rectangle.y2;
-      rectangle.y2 = tmp;
-      break;
-    case 180:
-      tmp = rectangle.x1;
-      rectangle.x1 = (page_width  - rectangle.x2);
-      rectangle.x2 = (page_width  - tmp);
-      break;
-    case 270:
-      tmp = rectangle.y2;
-      rectangle.y2 = (page_height - rectangle.x1);
-      rectangle.x1 = (page_width  - tmp);
-      tmp = rectangle.y1;
-      rectangle.y1 = (page_height - rectangle.x2);
-      rectangle.x2 = (page_width  - tmp);
-      break;
-    default:
-      tmp = rectangle.y1;
-      rectangle.y1 = (page_height - rectangle.y2);
-      rectangle.y2 = (page_height - tmp);
-      break;
+  case 90:
+    tmp          = rectangle.x1;
+    rectangle.x1 = rectangle.y1;
+    rectangle.y1 = tmp;
+    tmp          = rectangle.x2;
+    rectangle.x2 = rectangle.y2;
+    rectangle.y2 = tmp;
+    break;
+  case 180:
+    tmp          = rectangle.x1;
+    rectangle.x1 = (page_width - rectangle.x2);
+    rectangle.x2 = (page_width - tmp);
+    break;
+  case 270:
+    tmp          = rectangle.y2;
+    rectangle.y2 = (page_height - rectangle.x1);
+    rectangle.x1 = (page_width - tmp);
+    tmp          = rectangle.y1;
+    rectangle.y1 = (page_height - rectangle.x2);
+    rectangle.x2 = (page_width - tmp);
+    break;
+  default:
+    tmp          = rectangle.y1;
+    rectangle.y1 = (page_height - rectangle.y2);
+    rectangle.y2 = (page_height - tmp);
+    break;
   }
 
   /* adjust to scale */
@@ -377,9 +356,30 @@
   return NULL;
 }
 
-girara_list_t*
-djvu_page_links_get(zathura_page_t* page, void* UNUSED(data), zathura_error_t* 
error)
-{
+girara_list_t* djvu_page_get_selection(zathura_page_t* UNUSED(page), void* 
UNUSED(data), zathura_rectangle_t rectangle,
+                                       zathura_error_t* error) {
+  girara_list_t* list = girara_list_new2(g_free);
+  if (list == NULL) {
+    if (error != NULL) {
+      *error = ZATHURA_ERROR_OUT_OF_MEMORY;
+    }
+    goto error_free;
+  }
+
+  zathura_rectangle_t* rect = g_malloc0(sizeof(zathura_rectangle_t));
+  *rect                     = rectangle;
+  girara_list_append(list, rect);
+
+  return list;
+
+error_free:
+  if (list != NULL) {
+    girara_list_free(list);
+  }
+  return NULL;
+}
+
+girara_list_t* djvu_page_links_get(zathura_page_t* page, void* UNUSED(data), 
zathura_error_t* error) {
   if (page == NULL) {
     if (error != NULL) {
       *error = ZATHURA_ERROR_INVALID_ARGUMENTS;
@@ -392,7 +392,7 @@
     goto error_ret;
   }
 
-  girara_list_t* list = girara_list_new2((girara_free_function_t) 
zathura_link_free);
+  girara_list_t* list = 
girara_list_new2((girara_free_function_t)zathura_link_free);
   if (list == NULL) {
     if (error != NULL) {
       *error = ZATHURA_ERROR_OUT_OF_MEMORY;
@@ -403,8 +403,8 @@
   djvu_document_t* djvu_document = zathura_document_get_data(document);
 
   miniexp_t annotations = miniexp_nil;
-  while ((annotations = ddjvu_document_get_pageanno(djvu_document->document,
-          zathura_page_get_index(page))) == miniexp_dummy) {
+  while ((annotations = ddjvu_document_get_pageanno(djvu_document->document, 
zathura_page_get_index(page))) ==
+         miniexp_dummy) {
     handle_messages(djvu_document, true);
   }
 
@@ -439,32 +439,33 @@
     /* extract link area */
     inner = miniexp_cdr(inner);
 
-    zathura_rectangle_t rect = { 0, 0, 0, 0 };
+    zathura_rectangle_t rect = {0, 0, 0, 0};
     if (exp_to_rect(miniexp_car(inner), &rect) == false) {
       continue;
     }
 
     /* update rect */
     unsigned int page_height = zathura_page_get_height(page) / 
ZATHURA_DJVU_SCALE;
-    rect.x1 = rect.x1 * ZATHURA_DJVU_SCALE;
-    rect.x2 = rect.x2 * ZATHURA_DJVU_SCALE;
-    double tmp = rect.y1;
-    rect.y1 = (page_height - rect.y2) * ZATHURA_DJVU_SCALE;
-    rect.y2 = (page_height - tmp)     * ZATHURA_DJVU_SCALE;
+    rect.x1                  = rect.x1 * ZATHURA_DJVU_SCALE;
+    rect.x2                  = rect.x2 * ZATHURA_DJVU_SCALE;
+    double tmp               = rect.y1;
+    rect.y1                  = (page_height - rect.y2) * ZATHURA_DJVU_SCALE;
+    rect.y2                  = (page_height - tmp) * ZATHURA_DJVU_SCALE;
 
     /* create zathura link */
-    zathura_link_type_t type = ZATHURA_LINK_INVALID;
-    zathura_link_target_t target = { ZATHURA_LINK_DESTINATION_UNKNOWN, NULL, 
0, -1, -1, -1, -1, 0 };;
+    zathura_link_type_t type     = ZATHURA_LINK_INVALID;
+    zathura_link_target_t target = {ZATHURA_LINK_DESTINATION_UNKNOWN, NULL, 0, 
-1, -1, -1, -1, 0};
+    ;
 
     /* goto page */
     if (target_string[0] == '#' && target_string[1] == 'p') {
-      type = ZATHURA_LINK_GOTO_DEST;
+      type               = ZATHURA_LINK_GOTO_DEST;
       target.page_number = atoi(target_string + 2) - 1;
-    /* url or other? */
+      /* url or other? */
     } else if (strstr(target_string, "//") != NULL) {
-      type = ZATHURA_LINK_URI;
-      target.value = (char*) target_string;
-    /* TODO: Parse all different links */
+      type         = ZATHURA_LINK_URI;
+      target.value = (char*)target_string;
+      /* TODO: Parse all different links */
     } else {
       continue;
     }
@@ -488,10 +489,8 @@
   return NULL;
 }
 
-zathura_error_t
-djvu_page_render_cairo(zathura_page_t* page, void* UNUSED(data), cairo_t* 
cairo,
-    bool GIRARA_UNUSED(printing))
-{
+zathura_error_t djvu_page_render_cairo(zathura_page_t* page, void* 
UNUSED(data), cairo_t* cairo,
+                                       bool GIRARA_UNUSED(printing)) {
   if (page == NULL || cairo == NULL) {
     return ZATHURA_ERROR_INVALID_ARGUMENTS;
   }
@@ -515,20 +514,19 @@
 
   cairo_surface_t* surface = cairo_get_target(cairo);
 
-  if (surface == NULL ||
-      cairo_surface_status(surface) != CAIRO_STATUS_SUCCESS ||
+  if (surface == NULL || cairo_surface_status(surface) != CAIRO_STATUS_SUCCESS 
||
       cairo_surface_get_type(surface) != CAIRO_SURFACE_TYPE_IMAGE) {
     ddjvu_page_release(djvu_page);
     return ZATHURA_ERROR_UNKNOWN;
   }
 
   unsigned int page_width  = cairo_image_surface_get_width(surface);
-  unsigned int page_height = cairo_image_surface_get_height(surface);;
+  unsigned int page_height = cairo_image_surface_get_height(surface);
 
-  ddjvu_rect_t rrect = { 0, 0, page_width, page_height };
-  ddjvu_rect_t prect = { 0, 0, page_width, page_height };
+  ddjvu_rect_t rrect = {0, 0, page_width, page_height};
+  ddjvu_rect_t prect = {0, 0, page_width, page_height};
 
-  char* surface_data = (char*) cairo_image_surface_get_data(surface);
+  char* surface_data = (char*)cairo_image_surface_get_data(surface);
 
   if (surface_data == NULL) {
     ddjvu_page_release(djvu_page);
@@ -536,91 +534,15 @@
   }
 
   /* render page */
-  ddjvu_page_render(djvu_page, DDJVU_RENDER_COLOR, &prect, &rrect,
-      djvu_document->format, cairo_image_surface_get_stride(surface), 
surface_data);
+  ddjvu_page_render(djvu_page, DDJVU_RENDER_COLOR, &prect, &rrect, 
djvu_document->format,
+                    cairo_image_surface_get_stride(surface), surface_data);
 
   ddjvu_page_release(djvu_page);
 
   return ZATHURA_ERROR_OK;
 }
 
-zathura_image_buffer_t*
-djvu_page_render(zathura_page_t* page, void* UNUSED(data), zathura_error_t* 
error)
-{
-  if (page == NULL) {
-    if (error != NULL) {
-      *error = ZATHURA_ERROR_INVALID_ARGUMENTS;
-    }
-    return NULL;
-  }
- 
-  zathura_document_t* document = zathura_page_get_document(page);
-  if (document == NULL) {
-    return NULL;
-  }
-
-  /* calculate sizes */
-  unsigned int page_width  = zathura_document_get_scale(document) * 
zathura_page_get_width(page);
-  unsigned int page_height = zathura_document_get_scale(document) * 
zathura_page_get_height(page);
-
-  if (page_width == 0 || page_height == 0) {
-    if (error != NULL) {
-      *error = ZATHURA_ERROR_UNKNOWN;
-    }
-    goto error_out;
-  }
-
-  /* init ddjvu render data */
-  djvu_document_t* djvu_document = zathura_document_get_data(document);
-  ddjvu_page_t* djvu_page        = ddjvu_page_create_by_pageno(
-      djvu_document->document, zathura_page_get_index(page));
-
-  if (djvu_page == NULL) {
-    if (error != NULL) {
-      *error = ZATHURA_ERROR_UNKNOWN;
-    }
-    goto error_out;
-  }
-
-  while (!ddjvu_page_decoding_done(djvu_page)) {
-    handle_messages(djvu_document, true);
-  }
-
-  ddjvu_rect_t rrect = { 0, 0, page_width, page_height };
-  ddjvu_rect_t prect = { 0, 0, page_width, page_height };
-
-  zathura_image_buffer_t* image_buffer =
-    zathura_image_buffer_create(page_width, page_height);
-
-  if (image_buffer == NULL) {
-    if (error != NULL) {
-      *error = ZATHURA_ERROR_OUT_OF_MEMORY;
-    }
-    goto error_free;
-  }
-
-  /* set rotation */
-  ddjvu_page_set_rotation(djvu_page, DDJVU_ROTATE_0);
-
-  /* render page */
-  ddjvu_page_render(djvu_page, DDJVU_RENDER_COLOR, &prect, &rrect,
-      djvu_document->format, 3 * page_width, (char*) image_buffer->data);
-
-  return image_buffer;
-
-error_free:
-
-    ddjvu_page_release(djvu_page);
-    zathura_image_buffer_free(image_buffer);
-
-error_out:
-
-  return NULL;
-}
-
-static const char*
-get_extension(const char* path)
-{
+static const char* get_extension(const char* path) {
   if (path == NULL) {
     return NULL;
   }
@@ -641,9 +563,7 @@
   return path + i + 1;
 }
 
-void
-handle_messages(djvu_document_t* document, bool wait)
-{
+void handle_messages(djvu_document_t* document, bool wait) {
   if (document == NULL || document->context == NULL) {
     return;
   }
@@ -660,24 +580,19 @@
   }
 }
 
-static void
-build_index(djvu_document_t *djvu_document, miniexp_t expression, 
girara_tree_node_t* root)
-{
+static void build_index(djvu_document_t* djvu_document, miniexp_t expression, 
girara_tree_node_t* root) {
   if (expression == miniexp_nil || root == NULL) {
     return;
   }
 
-  int fileno = ddjvu_document_get_filenum(djvu_document->document);
+  int fileno  = ddjvu_document_get_filenum(djvu_document->document);
   int curfile = 0;
 
   while (miniexp_consp(expression) != 0) {
     miniexp_t inner = miniexp_car(expression);
 
-    if (miniexp_consp(inner)
-        && miniexp_consp(miniexp_cdr(inner))
-        && miniexp_stringp(miniexp_car(inner))
-        && miniexp_stringp(miniexp_car(inner))
-       ) {
+    if (miniexp_consp(inner) && miniexp_consp(miniexp_cdr(inner)) && 
miniexp_stringp(miniexp_car(inner)) &&
+        miniexp_stringp(miniexp_car(inner))) {
       const char* name = miniexp_to_str(miniexp_car(inner));
       const char* link = miniexp_to_str(miniexp_cadr(inner));
 
@@ -687,13 +602,13 @@
         continue;
       }
 
-      zathura_link_type_t type = ZATHURA_LINK_GOTO_DEST;
-      zathura_rectangle_t rect = { 0 };
-      zathura_link_target_t target = { 0 };
-      target.destination_type = ZATHURA_LINK_DESTINATION_XYZ;
+      zathura_link_type_t type     = ZATHURA_LINK_GOTO_DEST;
+      zathura_rectangle_t rect     = {0};
+      zathura_link_target_t target = {0};
+      target.destination_type      = ZATHURA_LINK_DESTINATION_XYZ;
 
       /* Check if link+1 contains a number */
-      bool number = true;
+      bool number          = true;
       const size_t linklen = strlen(link);
       for (unsigned int k = 1; k < linklen; k++) {
         if (!isdigit(link[k])) {
@@ -709,17 +624,17 @@
         /* otherwise assume it is an id for a page */
         ddjvu_fileinfo_t info;
         int f, i;
-        for (i=0; i < fileno; i++) {
+        for (i = 0; i < fileno; i++) {
           f = (curfile + i) % fileno;
           ddjvu_document_get_fileinfo(djvu_document->document, f, &info);
-          if (info.id != NULL && !strcmp(link+1, info.id)) {
+          if (info.id != NULL && !strcmp(link + 1, info.id)) {
             break;
           }
         }
 
         /* got a page */
         if (i < fileno && info.pageno >= 0) {
-          curfile = (f+1) % fileno;
+          curfile            = (f + 1) % fileno;
           target.page_number = info.pageno;
         } else {
           /* give up */
@@ -749,9 +664,7 @@
   }
 }
 
-static bool
-exp_to_str(miniexp_t expression, const char** string)
-{
+static bool exp_to_str(miniexp_t expression, const char** string) {
   if (string == NULL) {
     return false;
   }
@@ -764,9 +677,7 @@
   return false;
 }
 
-static bool
-exp_to_int(miniexp_t expression, int* integer)
-{
+static bool exp_to_int(miniexp_t expression, int* integer) {
   if (integer == NULL) {
     return false;
   }
@@ -779,12 +690,9 @@
   return false;
 }
 
-static bool
-exp_to_rect(miniexp_t expression, zathura_rectangle_t* rect)
-{
-  if ((miniexp_car(expression) == miniexp_symbol("rect")
-        || miniexp_car(expression) == miniexp_symbol("oval"))
-      && miniexp_length(expression) == 5) {
+static bool exp_to_rect(miniexp_t expression, zathura_rectangle_t* rect) {
+  if ((miniexp_car(expression) == miniexp_symbol("rect") || 
miniexp_car(expression) == miniexp_symbol("oval")) &&
+      miniexp_length(expression) == 5) {
     int min_x  = 0;
     int min_y  = 0;
     int width  = 0;
@@ -811,8 +719,7 @@
     rect->x2 = min_x + width;
     rect->y1 = min_y;
     rect->y2 = min_y + height;
-  } else if (miniexp_car(expression) == miniexp_symbol("poly")
-      && miniexp_length(expression) >= 5) {
+  } else if (miniexp_car(expression) == miniexp_symbol("poly") && 
miniexp_length(expression) >= 5) {
     int min_x = 0;
     int min_y = 0;
     int max_x = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/zathura-djvu/djvu.h 
new/zathura-djvu-0.2.10/zathura-djvu/djvu.h
--- old/zathura-djvu-0.2.9/zathura-djvu/djvu.h  2020-01-06 11:00:18.000000000 
+0100
+++ new/zathura-djvu-0.2.10/zathura-djvu/djvu.h 2024-08-04 10:33:34.000000000 
+0200
@@ -11,11 +11,10 @@
 /**
  * DjVu document
  */
-typedef struct djvu_document_s
-{
-  ddjvu_context_t*  context; /**< Document context */
+typedef struct djvu_document_s {
+  ddjvu_context_t* context;   /**< Document context */
   ddjvu_document_t* document; /**< Document */
-  ddjvu_format_t*   format; /**< Format */
+  ddjvu_format_t* format;     /**< Format */
 } djvu_document_t;
 
 /**
@@ -45,8 +44,8 @@
  * @return Tree node object or NULL if an error occurred (e.g.: the document 
has
  *   no index)
  */
-GIRARA_HIDDEN girara_tree_node_t* 
djvu_document_index_generate(zathura_document_t* document,
-    void* djvu_document, zathura_error_t* error);
+GIRARA_HIDDEN girara_tree_node_t* 
djvu_document_index_generate(zathura_document_t* document, void* djvu_document,
+                                                               
zathura_error_t* error);
 
 /**
  * Saves the document to the given path
@@ -56,7 +55,8 @@
  * @return ZATHURA_ERROR_OK when no error occurred, otherwise see
  *    zathura_error_t
  */
-GIRARA_HIDDEN zathura_error_t djvu_document_save_as(zathura_document_t* 
document, void* djvu_document, const char* path);
+GIRARA_HIDDEN zathura_error_t djvu_document_save_as(zathura_document_t* 
document, void* djvu_document,
+                                                    const char* path);
 
 /**
  * Initializes the page
@@ -85,7 +85,8 @@
  *   error occurred
  * @return List of search results or NULL if an error occurred
  */
-GIRARA_HIDDEN girara_list_t* djvu_page_search_text(zathura_page_t* page, void* 
data, const char* text, zathura_error_t* error);
+GIRARA_HIDDEN girara_list_t* djvu_page_search_text(zathura_page_t* page, void* 
data, const char* text,
+                                                   zathura_error_t* error);
 
 /**
  * Get text for selection
@@ -96,7 +97,11 @@
  * occurred
  * @return The selected text (needs to be deallocated with g_free)
  */
-GIRARA_HIDDEN char* djvu_page_get_text(zathura_page_t* page, void* data, 
zathura_rectangle_t rectangle, zathura_error_t* error);
+GIRARA_HIDDEN char* djvu_page_get_text(zathura_page_t* page, void* data, 
zathura_rectangle_t rectangle,
+                                       zathura_error_t* error);
+
+GIRARA_HIDDEN girara_list_t* djvu_page_get_selection(zathura_page_t* page, 
void* data, zathura_rectangle_t rectangle,
+                                                     zathura_error_t* error);
 
 /**
  * Returns list of links
@@ -106,19 +111,7 @@
  * @param error Error code
  * @return List of links or NULL if an error occurred
  */
-GIRARA_HIDDEN girara_list_t* djvu_page_links_get(zathura_page_t* page, void* 
data,
-    zathura_error_t* error);
-
-/**
- * Renders a page and returns a allocated image buffer which has to be freed
- * with zathura_image_buffer_free
- *
- * @param page Page
- * @param error Set to an error value (see zathura_error_t) if an
- *   error occurred
- * @return Image buffer or NULL if an error occurred
- */
-GIRARA_HIDDEN zathura_image_buffer_t* djvu_page_render(zathura_page_t* page, 
void* data, zathura_error_t* error);
+GIRARA_HIDDEN girara_list_t* djvu_page_links_get(zathura_page_t* page, void* 
data, zathura_error_t* error);
 
 /**
  * Renders a page onto a cairo object
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/zathura-djvu/page-text.c 
new/zathura-djvu-0.2.10/zathura-djvu/page-text.c
--- old/zathura-djvu-0.2.9/zathura-djvu/page-text.c     2020-01-06 
11:00:18.000000000 +0100
+++ new/zathura-djvu-0.2.10/zathura-djvu/page-text.c    2024-08-04 
10:33:34.000000000 +0200
@@ -13,28 +13,20 @@
  */
 typedef struct text_position_s {
   unsigned int position; /**< Index */
-  miniexp_t exp; /**< Correspondending expression */
+  miniexp_t exp;         /**< Correspondending expression */
 } text_position_t;
 
 /* forward declaration */
-static void djvu_page_text_content_append(djvu_page_text_t* page_text,
-    miniexp_t exp);
-static miniexp_t text_position_get_exp(djvu_page_text_t* page_text,
-    unsigned int index);
-static bool djvu_page_text_build_rectangle(djvu_page_text_t* page_text,
-    miniexp_t exp, miniexp_t start, miniexp_t end);
-static bool djvu_page_text_build_rectangle_process(djvu_page_text_t* page_text,
-    miniexp_t exp, miniexp_t start, miniexp_t end);
-static void djvu_page_text_limit(djvu_page_text_t* page_text, miniexp_t exp,
-    zathura_rectangle_t* rectangle);
-static void djvu_page_text_limit_process(djvu_page_text_t* page_text,
-    miniexp_t exp, zathura_rectangle_t* rectangle);
-static bool djvu_page_text_select_content(djvu_page_text_t* page_text,
-    miniexp_t exp, int delimiter);
-
-djvu_page_text_t*
-djvu_page_text_new(djvu_document_t* document, zathura_page_t* page)
-{
+static void djvu_page_text_content_append(djvu_page_text_t* page_text, 
miniexp_t exp);
+static miniexp_t text_position_get_exp(djvu_page_text_t* page_text, unsigned 
int index);
+static bool djvu_page_text_build_rectangle(djvu_page_text_t* page_text, 
miniexp_t exp, miniexp_t start, miniexp_t end);
+static bool djvu_page_text_build_rectangle_process(djvu_page_text_t* 
page_text, miniexp_t exp, miniexp_t start,
+                                                   miniexp_t end);
+static void djvu_page_text_limit(djvu_page_text_t* page_text, miniexp_t exp, 
zathura_rectangle_t* rectangle);
+static void djvu_page_text_limit_process(djvu_page_text_t* page_text, 
miniexp_t exp, zathura_rectangle_t* rectangle);
+static bool djvu_page_text_select_content(djvu_page_text_t* page_text, 
miniexp_t exp, int delimiter);
+
+djvu_page_text_t* djvu_page_text_new(djvu_document_t* document, 
zathura_page_t* page) {
   if (document == NULL || document->document == NULL || page == NULL) {
     goto error_ret;
   }
@@ -52,8 +44,7 @@
 
   /* read page text */
   while ((page_text->text_information =
-        ddjvu_document_get_pagetext(document->document, 
zathura_page_get_index(page), "char"))
-      == miniexp_dummy) {
+              ddjvu_document_get_pagetext(document->document, 
zathura_page_get_index(page), "char")) == miniexp_dummy) {
     handle_messages(document, true);
   }
 
@@ -74,16 +65,13 @@
   return NULL;
 }
 
-void
-djvu_page_text_free(djvu_page_text_t* page_text)
-{
+void djvu_page_text_free(djvu_page_text_t* page_text) {
   if (page_text == NULL) {
     return;
   }
 
   if (page_text->text_information != miniexp_nil && page_text->document != 
NULL) {
-    ddjvu_miniexp_release(page_text->document->document,
-        page_text->text_information);
+    ddjvu_miniexp_release(page_text->document->document, 
page_text->text_information);
   }
 
   if (page_text->content != NULL) {
@@ -101,9 +89,7 @@
   free(page_text);
 }
 
-girara_list_t*
-djvu_page_text_search(djvu_page_text_t* page_text, const char* text)
-{
+girara_list_t* djvu_page_text_search(djvu_page_text_t* page_text, const char* 
text) {
   if (page_text == NULL || text == NULL) {
     goto error_ret;
   }
@@ -120,16 +106,14 @@
   }
 
   /* create result list */
-  girara_list_t* results = girara_list_new2(
-      (girara_free_function_t) free);
+  girara_list_t* results = girara_list_new2((girara_free_function_t)free);
 
   if (results == NULL) {
     goto error_ret;
   }
 
   /* create list */
-  page_text->text_positions = girara_list_new2(
-      (girara_free_function_t) free);
+  page_text->text_positions = girara_list_new2((girara_free_function_t)free);
 
   if (page_text->text_positions == NULL) {
     goto error_free;
@@ -144,7 +128,7 @@
 
   /* search through content */
   int search_length = strlen(text);
-  char* tmp  = page_text->content;
+  char* tmp         = page_text->content;
 
   while ((tmp = strcasestr(tmp, text)) != NULL) {
     int start_pointer = tmp - page_text->content;
@@ -159,8 +143,7 @@
       page_text->rectangle = NULL;
     }
 
-    djvu_page_text_build_rectangle(page_text, page_text->text_information,
-        start, end);
+    djvu_page_text_build_rectangle(page_text, page_text->text_information, 
start, end);
 
     if (page_text->rectangle == NULL) {
       tmp += search_length;
@@ -174,7 +157,7 @@
     page_text->rectangle->y2 = ZATHURA_DJVU_SCALE * page_text->rectangle->y2;
 
     /* invert */
-    int y1 = zathura_page_get_height(page_text->page) - 
page_text->rectangle->y1;
+    int y1                   = zathura_page_get_height(page_text->page) - 
page_text->rectangle->y1;
     page_text->rectangle->y1 = zathura_page_get_height(page_text->page) - 
page_text->rectangle->y2;
     page_text->rectangle->y2 = y1;
 
@@ -217,9 +200,7 @@
   return NULL;
 }
 
-static void
-djvu_page_text_content_append(djvu_page_text_t* page_text, miniexp_t exp)
-{
+static void djvu_page_text_content_append(djvu_page_text_t* page_text, 
miniexp_t exp) {
   if (page_text == NULL || exp == miniexp_nil) {
     return;
   }
@@ -241,15 +222,14 @@
           continue;
         }
 
-        position->position = (page_text->content != NULL) ?
-          strlen(page_text->content) : 0;
-        position->exp = exp;
+        position->position = (page_text->content != NULL) ? 
strlen(page_text->content) : 0;
+        position->exp      = exp;
 
         girara_list_append(page_text->text_positions, position);
       }
 
       /* append text */
-      char* text = (char*) miniexp_to_str(data);
+      char* text = (char*)miniexp_to_str(data);
 
       if (page_text->content == NULL) {
         page_text->content = g_strdup(text);
@@ -258,7 +238,7 @@
         g_free(page_text->content);
         page_text->content = tmp;
       }
-    /* not a string, recursive call */
+      /* not a string, recursive call */
     } else {
       djvu_page_text_content_append(page_text, data);
     }
@@ -268,9 +248,7 @@
   }
 }
 
-static miniexp_t
-text_position_get_exp(djvu_page_text_t* page_text, unsigned int index)
-{
+static miniexp_t text_position_get_exp(djvu_page_text_t* page_text, unsigned 
int index) {
   if (page_text == NULL || page_text->text_positions == NULL) {
     goto error_ret;
   }
@@ -312,10 +290,8 @@
   return miniexp_nil;
 }
 
-static bool
-djvu_page_text_build_rectangle_process(djvu_page_text_t* page_text, miniexp_t 
exp,
-    miniexp_t start, miniexp_t end)
-{
+static bool djvu_page_text_build_rectangle_process(djvu_page_text_t* 
page_text, miniexp_t exp, miniexp_t start,
+                                                   miniexp_t end) {
   if (page_text == NULL) {
     goto error_ret;
   }
@@ -365,10 +341,7 @@
   return false;
 }
 
-static bool
-djvu_page_text_build_rectangle(djvu_page_text_t* page_text, miniexp_t exp,
-    miniexp_t start, miniexp_t end)
-{
+static bool djvu_page_text_build_rectangle(djvu_page_text_t* page_text, 
miniexp_t exp, miniexp_t start, miniexp_t end) {
   if (page_text == NULL) {
     goto error_ret;
   }
@@ -382,8 +355,7 @@
     miniexp_t data = miniexp_car(inner);
 
     if (miniexp_stringp(data) != 0) {
-      if (djvu_page_text_build_rectangle_process(page_text,
-            exp, start, end) == false) {
+      if (djvu_page_text_build_rectangle_process(page_text, exp, start, end) 
== false) {
         goto error_ret;
       }
     } else {
@@ -402,9 +374,7 @@
   return false;
 }
 
-char*
-djvu_page_text_select(djvu_page_text_t* page_text, zathura_rectangle_t 
rectangle)
-{
+char* djvu_page_text_select(djvu_page_text_t* page_text, zathura_rectangle_t 
rectangle) {
   if (page_text == NULL) {
     return NULL;
   }
@@ -415,18 +385,15 @@
   return (page_text->content != NULL) ? g_strdup(page_text->content) : NULL;
 }
 
-static void
-djvu_page_text_limit_process(djvu_page_text_t* page_text, miniexp_t exp,
-    zathura_rectangle_t* rectangle)
-{
+static void djvu_page_text_limit_process(djvu_page_text_t* page_text, 
miniexp_t exp, zathura_rectangle_t* rectangle) {
   zathura_rectangle_t current_rectangle;
   current_rectangle.x1 = miniexp_to_int(miniexp_nth(1, exp));
   current_rectangle.y1 = miniexp_to_int(miniexp_nth(2, exp));
   current_rectangle.x2 = miniexp_to_int(miniexp_nth(3, exp));
   current_rectangle.y2 = miniexp_to_int(miniexp_nth(4, exp));
 
-  if (current_rectangle.x2 >= rectangle->x1 && current_rectangle.y1 <= 
rectangle->y2
-      && current_rectangle.x1 <= rectangle->x2 && current_rectangle.y2 >= 
rectangle->y1) {
+  if (current_rectangle.x2 >= rectangle->x1 && current_rectangle.y1 <= 
rectangle->y2 &&
+      current_rectangle.x1 <= rectangle->x2 && current_rectangle.y2 >= 
rectangle->y1) {
     if (page_text->begin == miniexp_nil) {
       page_text->begin = exp;
     }
@@ -435,10 +402,7 @@
   }
 }
 
-static void
-djvu_page_text_limit(djvu_page_text_t* page_text, miniexp_t exp,
-    zathura_rectangle_t* rectangle)
-{
+static void djvu_page_text_limit(djvu_page_text_t* page_text, miniexp_t exp, 
zathura_rectangle_t* rectangle) {
   if (page_text == NULL || rectangle == NULL) {
     return;
   }
@@ -459,12 +423,9 @@
 
     inner = miniexp_cdr(inner);
   }
-
 }
 
-static bool
-djvu_page_text_select_content(djvu_page_text_t* page_text, miniexp_t exp, int 
delimiter)
-{
+static bool djvu_page_text_select_content(djvu_page_text_t* page_text, 
miniexp_t exp, int delimiter) {
   if (page_text == NULL) {
     return false;
   }
@@ -483,15 +444,13 @@
 
     if (miniexp_stringp(data) != 0) {
       if (page_text->content != NULL || exp == page_text->begin) {
-        char* token_content = (char*) miniexp_to_str(miniexp_nth(5, exp));
+        char* token_content = (char*)miniexp_to_str(miniexp_nth(5, exp));
 
         if (page_text->content != NULL) {
-          char* content = g_strjoin(
-              (delimiter & 2) ? "\n" : (delimiter & 1) ? " " : NULL,
-              page_text->content,
-              token_content,
-              NULL
-              );
+          char* content = g_strjoin((delimiter & 2)   ? "\n"
+                                    : (delimiter & 1) ? " "
+                                                      : NULL,
+                                    page_text->content, token_content, NULL);
           g_free(page_text->content);
           page_text->content = content;
         } else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/zathura-djvu-0.2.9/zathura-djvu/page-text.h 
new/zathura-djvu-0.2.10/zathura-djvu/page-text.h
--- old/zathura-djvu-0.2.9/zathura-djvu/page-text.h     2020-01-06 
11:00:18.000000000 +0100
+++ new/zathura-djvu-0.2.10/zathura-djvu/page-text.h    2024-08-04 
10:33:34.000000000 +0200
@@ -15,15 +15,15 @@
  */
 typedef struct djvu_page_text_s {
   miniexp_t text_information; /**< Text by ddjvu_document_get_pagetext */
-  char* content; /**< Actual content */
+  char* content;              /**< Actual content */
 
-  miniexp_t begin; /**< Begin index */
-  miniexp_t end; /**< End index */
-  girara_list_t* text_positions; /**< Position/Expression duple */
+  miniexp_t begin;                /**< Begin index */
+  miniexp_t end;                  /**< End index */
+  girara_list_t* text_positions;  /**< Position/Expression duple */
   zathura_rectangle_t* rectangle; /**< Rectangle */
 
   djvu_document_t* document; /**< Correspondening document */
-  zathura_page_t* page; /**< Correspondening page */
+  zathura_page_t* page;      /**< Correspondening page */
 } djvu_page_text_t;
 
 /**
@@ -33,8 +33,7 @@
  * @param page_number The number of the page
  * @return The page object or NULL if an error occurred
  */
-GIRARA_HIDDEN djvu_page_text_t* djvu_page_text_new(djvu_document_t* document,
-    zathura_page_t* page);
+GIRARA_HIDDEN djvu_page_text_t* djvu_page_text_new(djvu_document_t* document, 
zathura_page_t* page);
 
 /**
  * Frees a djvu page object
@@ -50,8 +49,7 @@
  * @param text The text to search
  * @return List of results or NULL if an error occurred
  */
-GIRARA_HIDDEN girara_list_t* djvu_page_text_search(djvu_page_text_t* page_text,
-    const char* text);
+GIRARA_HIDDEN girara_list_t* djvu_page_text_search(djvu_page_text_t* 
page_text, const char* text);
 
 /**
  * Returns the text on the page under the given rectangle
@@ -60,7 +58,6 @@
  * @param rectangle The area of where the text should be copied
  * @return Copy of the text or NULL if an error occurred or if the area is 
empty
  */
-GIRARA_HIDDEN char* djvu_page_text_select(djvu_page_text_t* page_text,
-    zathura_rectangle_t rectangle);
+GIRARA_HIDDEN char* djvu_page_text_select(djvu_page_text_t* page_text, 
zathura_rectangle_t rectangle);
 
 #endif // DJVU_PAGE_H

Reply via email to