summaryrefslogtreecommitdiff
path: root/libview
AgeCommit message (Collapse)AuthorFilesLines
2018-03-22libview: use css to draw the background of presentationsraveit651-25/+16
With the recent changes in gtk+, widgets have to draw themselves, causing the current use of gdk_window_set_background_rgba to fail. https://bugzilla.gnome.org/show_bug.cgi?id=765557 view: Redraw ev-view-presentation when setting normal and black mode. The black and normal mode are the same from the CSS point of view. The difference is that in the draw function the page is not drawn in black mode. Hence, we need to explicitly queue a redraw in these cases. Since setting the white mode add a CSS class, this queues the redraw for us. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=772390. origin commits: https://git.gnome.org/browse/evince/commit/?id=2b352b3 https://git.gnome.org/browse/evince/commit/?id=b3f49f4 Fixes https://github.com/mate-desktop/atril/issues/232
2018-03-22libview: Check number of pages when processing button eventsMarek Kasik1-1/+1
Check whether there are some pages in the opened document when processing button events to avoid crash. https://bugzilla.gnome.org/show_bug.cgi?id=769700 origin commit: https://git.gnome.org/browse/evince/commit/?id=f30aed7
2018-03-22libview: Add check for pageless documents to ev_view_accessible_focus_changedJoanmarie Diggs1-1/+1
Without this check, Evince will crash when opening a document that, for whatever reason, has no pages. https://bugzilla.gnome.org/show_bug.cgi?id=731046 origin commit: https://git.gnome.org/browse/evince/commit/?id=c0ecc95
2018-03-22libview: Check number of pages on ev_view_document_changed_cbGermán Poo-Caamaño1-2/+5
Fix crash on corrupted PDF with no pages. Thanks to Juha Kylmänen from OUSPG who were testing robutness. (CVE-2013-3718). libview: Fix warning on ev_view_document_changed_cb There was an introduction of a warning when fixing the bug https://bugzilla.gnome.org/show_bug.cgi?id=701302 If ev_view_document_changed_cb () is emitted when there is no previous document, the check fails. This patch change the order of the condition checks. origin commits: https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=62b1585 https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=5431595
2018-03-22Use GtkOverlay to show the loading messageCarlos Garcia Campos5-444/+33
Remove the EvLoadingWindow from libview and move the implementation to the shell using a EvLoadingMessage widget and GtkOverlay. EvView has now a is-loading property that allows the users to implement their own loading notification system. This fixes several realted to the loading window. origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=035c1cb
2018-03-19libview: save inverted colors in a documentPiiit1-0/+3
The web-view callback for inverted colors got called, and if it did not find a web-view open it defaulted to FALSE for inverted colors. origin commit: https://github.com/linuxmint/xreader/commit/abb5060 https://github.com/linuxmint/xreader/issues/38
2018-03-19Save/restore context when getting colors for a different stateraveit651-0/+7
Getting colors for a state different from the current state of the corresponding widget without saving the context might trigger an invalidation and a redraw. Because this was happening from the draw function this resulted in a redraw loop and constant high CPU usage. This could be triggered by selecting text or searching. https://bugzilla.gnome.org/show_bug.cgi?id=755442 inspired by: https://git.gnome.org/browse/evince/commit/?id=1987f04 https://github.com/linuxmint/xreader/commit/e76a18d
2018-03-16epub: fix loading epub thumbnailsMickael Albertus1-24/+23
origin commit: https://github.com/linuxmint/xreader/commit/6ed0ee1 Note: origin commit causes some serious build warnings, ......fixed.
2018-03-16Check legal boundaries of accessible pagesGermán Poo-Caamaño1-0/+7
Fixes https://github.com/mate-desktop/atril/issues/302 Keep the accessible view end page under the limits of the document. Sometimes when a document is reloaded, it may have less pages making the end page higher than the actual number of pages. Fix end_page reset after reload a page When a document is reloaded, and the accessible end_page is higher than the number of pages, it must be re-initialized to the number of pages minus one because it refers to elements in an array. Fix https://bugzilla.gnome.org/show_bug.cgi?id=735744 origin commits: https://git.gnome.org/browse/evince/commit/?id=feff531 https://git.gnome.org/browse/evince/commit/?id=e6e0d29
2018-03-15Add zoom resetLars Mueller4-0/+20
origin commit: https://github.com/linuxmint/xreader/commit/43acb8f
2018-02-16avoid deprecated GtkStockPablo Barciela1-1/+1
2018-01-31require GTK+ 3.22 and GLib 2.50monsta3-41/+2
2018-01-02Revert "libview: Update the current page also when pending scroll is to find ↵raveit651-2/+1
a location" Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1525313 This reverts commit e64064d40b451011dba2f891be454f65439df18d.
2017-12-10WidthOfScreen and HeightOfScreen implementationPablo Barciela2-14/+8
This commit reverts: https://github.com/mate-desktop/atril/commit/d9fffe2dc0e33d6777099c18635b7b75f54d3d35 And it applies an alternative to fix the deprecated functions: gdk_screen_get_width gdk_screen_get_height
2017-11-27ev-link-accessible: Improve efficiency of methods to get start and end indicesJoanmarie Diggs1-5/+22
* Store the value to eliminate unnecessary iteration through character rects * Calculate the end index forward from the start index rather than backwards from the last character on the page https://bugzilla.gnome.org/show_bug.cgi?id=732340 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=1a6c9df
2017-11-27Expose form fields as AtkObject children of the pageJoanmarie Diggs6-9/+314
https://bugzilla.gnome.org/show_bug.cgi?id=728475 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=d707486
2017-11-27Expose images as AtkObject children of the pageJoanmarie Diggs4-2/+272
https://bugzilla.gnome.org/show_bug.cgi?id=728475 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=aea890c
2017-11-27Expose links as AtkObject children of the pageraveit652-1/+224
https://bugzilla.gnome.org/show_bug.cgi?id=728475 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=004b199
2017-11-27ev-view-accessible: Add a method to determine if a given doc rect is showingJoanmarie Diggs2-0/+29
The Accessibility code needs to know this to set and update ATK_STATE_SHOWING. https://bugzilla.gnome.org/show_bug.cgi?id=728475 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=5c2ce4e
2017-11-27ev-page-cache: Add method to check if a given page has been cachedJoanmarie Diggs2-0/+16
The Accessibility code will expose child objects (links, images, form fields) of the page, but can only do so after that page has been cached. https://bugzilla.gnome.org/show_bug.cgi?id=728475 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=a898d96
2017-11-27libview: Update the caret cursor when jumping to a find resultJoanmarie Diggs1-0/+3
https://bugzilla.gnome.org/show_bug.cgi?id=728996 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=fc031f7
2017-11-27libview: Update ATK_STATE_SHOWING when the visible page range changesJoanmarie Diggs3-0/+37
https://bugzilla.gnome.org/show_bug.cgi?id=728664 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=110a98a https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=c4e98b3
2017-11-27libview: Implement AtkComponent for pagesJoanmarie Diggs3-0/+79
https://bugzilla.gnome.org/show_bug.cgi?id=728673 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=7d1bf5a
2017-11-27libview: Fix shift+click text selectionJoanmarie Diggs1-7/+16
https://bugzilla.gnome.org/show_bug.cgi?id=728189 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=7cf4c80
2017-11-27a11y: ensure text cached when you request an EvPageAccessibleAlejandro Piñeiro3-0/+22
https://bugzilla.gnome.org/show_bug.cgi?id=724965 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=b5fc924
2017-11-27a11y: managing atk states on EvPageAccessibleAlejandro Piñeiro3-0/+97
This includes: * Implements ref_state_set on EvPageAccessible * Notify FOCUSED state changes https://bugzilla.gnome.org/show_bug.cgi?id=724965 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=c421a90
2017-11-27a11y: add if applies ATK_RELATION_FLOWS_TO/FROM on EvPageAccessibleAlejandro Piñeiro3-1/+58
https://bugzilla.gnome.org/show_bug.cgi?id=724965 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=f6ae6b7
2017-11-27a11y: move AtkHyperText implementation from EvViewAccessible to EvPageAccessibleAlejandro Piñeiro4-163/+135
https://bugzilla.gnome.org/show_bug.cgi?id=724965 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=750f20d
2017-11-27a11y: move AtkText implementation from EvViewAccessible to EvPageAccessibleAlejandro Piñeiro3-738/+695
https://bugzilla.gnome.org/show_bug.cgi?id=724965 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=2a458a9
2017-11-27a11y: expose EvPageAccessible as children of EvViewAccessibleAlejandro Piñeiro1-7/+70
https://bugzilla.gnome.org/show_bug.cgi?id=724965 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=c1cdf84
2017-11-27a11y: new EvPageAccessibleAlejandro Piñeiro3-0/+222
Basic skeleton for a new accessible class, that represents each individual page. https://bugzilla.gnome.org/show_bug.cgi?id=724965 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=c489d3f
2017-11-27libview: Fix some broken aspects EvViewAccessible text supportJoanmarie Diggs3-173/+230
* Stop using GtkTextBuffer: It was a hack more than a real solution * Fix setting and clearing of selection via AtkText for the current page * Strip newline chars out of the sentence strings: Newlines break TTS prosody * Add some logic to heuristically distinguish soft and hard returns https://bugzilla.gnome.org/show_bug.cgi?id=725003 https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=03afe27
2017-11-27libview: Take caret navigation into account when getting AtkHyperlink indicesJoanmarie Diggs1-2/+8
https://bugzilla.gnome.org/show_bug.cgi?id=726310 https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=5e4d9f8
2017-11-27a11y: cleaning implementation for atk_text_get_caret_offsetAlejandro Piñeiro1-15/+2
If caret access is not enabled (or in any other error) caret_offset should be -1, and not one based on the gtktextbuffer. Based on a previous patch by Joanmarie Diggs https://bugzilla.gnome.org/show_bug.cgi?id=701746 https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=3b63aa8
2017-11-27a11y: fixing implementation for atk_text_set_caret_offsetAlejandro Piñeiro1-8/+5
It uses the recently added ev_view_set_caret_cursor_position https://bugzilla.gnome.org/show_bug.cgi?id=701746 https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=912d9d5
2017-11-27view: set_caret_cursor_position should emit "cursor-moved" if appliesAlejandro Piñeiro1-0/+3
https://bugzilla.gnome.org/show_bug.cgi?id=701746 from: https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=9809525
2017-11-27Remove support for deprecated atk_text_get_text_{before,after}_offset()Joanmarie Diggs1-28/+0
See https://mail.gnome.org/archives/commits-list/2013-June/msg04117.html for the associated commit to ATK. https://bugzilla.gnome.org/show_bug.cgi?id=725162 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=b327461
2017-11-27a11y: implement AtkDocument on EvViewAccessibleAlejandro Piñeiro1-0/+54
https://bugzilla.gnome.org/show_bug.cgi?id=719507 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=c5c528d
2017-11-27a11y: with caret navigation enabled, accessibility current page is cursor pageAlejandro Piñeiro1-16/+27
https://bugzilla.gnome.org/show_bug.cgi?id=711862 https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=b0bf4b6
2017-11-27ev-view-accessible: call document_changed_cb when setting the modelJoanmarie Diggs1-0/+6
When an application embedding an EvView reuses that view to display a new document, the content of last page viewed from the previous document is exposed to assistive technologies. In order to get the content of the current document, the user must change pages. This problem resulted from the assumption that the document would be set after the model was set. https://bugzilla.gnome.org/show_bug.cgi?id=709375 https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=3d06f42
2017-11-27ev-view-accessible: Fix a crash in ev_view_accessible_get_linkAntia Puentes1-0/+6
Check array limits returning early if the link index is out of range. https://bugzilla.gnome.org/show_bug.cgi?id=705155 https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=7eac53f
2017-11-27ev-view-accessible: Clear the cached data when the current pageAntia Puentes3-22/+78
or document is updated. https://bugzilla.gnome.org/show_bug.cgi?id=704621 https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=d71e0d7
2017-11-02fix crash when selecting text in djvu documentsmonsta1-2/+4
fixes https://github.com/mate-desktop/atril/issues/283 taken from: https://git.gnome.org/browse/evince/commit/?id=c5a338c00253aeb88901c574ea150b3bd83634e7
2017-09-06libview: Add ev_view_set_caret_cursor_positionCarlos Garcia Campos2-0/+21
origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=b2597d
2017-09-06libview: Update the current page also when pending scroll is to find a locationCarlos Garcia Campos1-1/+2
Pending scroll SCROLL_TO_FIND_LOCATION, can jump to another page if the location is in a different page. We should change the current page in the model in this case too. Origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=8709b39
2017-09-06libview: Do not schedule a redraw when enabling/disabling caret navigationCarlos Garcia Campos1-1/+3
If the cursor is not in a visible page origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=c187766
2017-09-06libview: Stop caret cursor blinking when cursor is not in a visible pageCarlos Garcia Campos1-0/+14
origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=570927e
2017-09-06libview: Add ev_view_supports_caret_navigation()Antia Puentes2-0/+16
https://bugzilla.gnome.org/show_bug.cgi?id=702079 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=6127a36
2017-09-06ev-link-accesible: Return the index/offset after the last character in the linkJoanmarie Diggs1-1/+1
https://bugzilla.gnome.org/show_bug.cgi?id=704616 origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=830dd4e
2017-09-06libview: Fix selections starting/ending in page marginsCarlos Garcia Campos1-0/+8
Do not take into account the page area borders when looking the pages where the selection starts or ends. This allows to start a new selection from a page margin and prevents selection from disappearing when selecting multiple pages and releasing the mouse between two pages. origin commit: https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=4969e2b