Age | Commit message (Collapse) | Author | Files | Lines |
|
Make sure not to move the caret in the wrong direction when restoring
the visual line X offset, in case the visual and logical order is
slightly different.
The algorithm used to move the cursor on the next line and restore the
X position across lines works as follows:
1. Move `cursor_offset` to the next line by incrementing it until
reaching a line break;
2. Find the Y coordinate corresponding to the new cursor_offset;
3. Find the text closest to the new Y coordinate and the previous X
coordinate.
4. Move cursor_offset to the text at this new (X, Y) location.
The issue lies in step 3, which can find a position on a different line
than expected in case several lines have a nearly the same Y position.
Evince references:
* https://gitlab.gnome.org/GNOME/evince/issues/889
* https://gitlab.gnome.org/GNOME/evince/merge_requests/81
* https://gitlab.gnome.org/GNOME/evince/commit/dddd98b4c7922e2906bba6a31afa07837ae6c39c
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=38528f9
|
|
So it can be styled with CSS.
https://bugzilla.gnome.org/show_bug.cgi?id=653294
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=7a6b53a
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=4657961
|
|
This modifies ev_page_accessible_get_range_for_boundary to ensure that
the start and end offsets it returns are within the allowed range.
https://bugzilla.gnome.org/show_bug.cgi?id=777992
origin commit:
https://git.gnome.org/browse/evince/commit/?id=e95a4e3
|
|
ev_page_accessible_get_substring gets called with out of bounds values
leading to a crash. Clamp start_offset to a valid range.
https://bugzilla.gnome.org/show_bug.cgi?id=777992
origin commit:
https://git.gnome.org/browse/evince/commit/?id=b34f357
|
|
inspired by:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=a56186e
|
|
taken from:
https://github.com/GNOME/evince/commit/91ac78bc587eb2ac931136c9da9609b142410209
|
|
Fixes https://github.com/mate-desktop/atril/issues/308
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=693749
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=53d6a3
|
|
It wasn't correctly set as modal.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-2&id=987aab6
|
|
....in ev-view-presentation
This was introduced again in previous commit.
|
|
Create rendering jobs with a scale that incorporate the scale factor of
the widget, and then use cairo_surface_set_device_scale() to make the
resulting surfaces render at the correct size. Handle changes to the scale
factor both for the cached surfaces, and also for the monitor dimensions,
which are reported in scaled coordinates.
https://bugzilla.gnome.org/show_bug.cgi?id=723431
origin commit:
https://git.gnome.org/browse/evince/commit/?id=37c13b
|
|
Fail when device scale is not 1 if hidpi is not available, we were doing
the opposite.
origin commit:
https://git.gnome.org/browse/evince/commit/?id=90a258
|
|
Make EvPixbufCache generate surfaces with extra resolution based on
gtk_widget_get_scale_factor(). Handle cairo surfaces with a device
scale in ev_view_draw(). Trigger an update of the pixbuf cache when
the scale factor changes.
https://bugzilla.gnome.org/show_bug.cgi?id=723431
origin commit:
https://git.gnome.org/browse/evince/commit/?id=a612f8
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
origin commit:
https://github.com/linuxmint/xreader/commit/6ed0ee1
Note: origin commit causes some serious build warnings,
......fixed.
|
|
origin commit:
https://github.com/linuxmint/xreader/commit/43acb8f
|
|
|
|
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
|
|
|
|
a location"
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1525313
This reverts commit e64064d40b451011dba2f891be454f65439df18d.
|
|
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
|
|
* 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
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=728475
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=d707486
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=728475
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=aea890c
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=728475
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=004b199
|
|
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
|
|
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
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=728996
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=fc031f7
|
|
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
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=728673
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=7d1bf5a
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=728189
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=7cf4c80
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=724965
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=b5fc924
|
|
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
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=724965
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=f6ae6b7
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=724965
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=750f20d
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=724965
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=2a458a9
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=724965
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=c1cdf84
|
|
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
|
|
* 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
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=726310
https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=5e4d9f8
|
|
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
|
|
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
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=701746
from:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=9809525
|