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
|
|
inspired by:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=a56186e
|
|
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
|
|
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
|
|
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
|
|
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/43acb8f
|
|
|
|
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
|
|
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=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=728189
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=7cf4c80
|
|
* 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=701746
from:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-12&id=9809525
|
|
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
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=b2597d
|
|
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
|
|
If the cursor is not in a visible page
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=c187766
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=570927e
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=702079
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=6127a36
|
|
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
|
|
when selection starts and ends at the same point
We can use the current page range in this case, since this will only
happen when starting a new word/line selection.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=e92c98f
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=848459e
|
|
Actually return the text and offset range of the selected text in the
current page.
https://bugzilla.gnome.org/show_bug.cgi?id=704335
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=a178d26
|
|
Invalidate the previous and new regions instead.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=e39ac99
|
|
between lines
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=074dfec
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=3666096
|
|
It will be scheduled if the adjustments change.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=0597aa7
|
|
Even though the caret cursor is not shown while there are active
selections we don't want the cursor blink timeout running and scheduling
redraws.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=41c660f
|
|
All keybindings currently used by EvWindow. Having them in the view
makes them available to other EvView users and they can be overriden by
the themes.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=660b741
Fix Return key bidings
Do not use the helper function for keypad keys since Return doesn't have
a key un the keypad.
https://bugzilla.gnome.org/show_bug.cgi?id=704154
|
|
We were still using G_TYPE_BOOLEAN instead of GTK_TYPE_ORIENTATION. It
worked because both are integers in the end.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=f9a65d4
|
|
This way only the regions affected by the selection are redrawn and we
don't need to schedule a full redraw every time clear_selection is
called.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=4b4ea6c
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=4592007
|
|
If the cursor is moved with left/right arrow keys the cursor moves the
beginning/end of the selection.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=9c3816b
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=702761
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=604cd6d
|
|
This way we just need to check the pointer returned.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=bf18b54
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=1691b14
|
|
And also the caret cursor location when positioned with the mouse when
clicking on areas with no text, like margins or even the space between
columns.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=415ab07
|
|
has been moved.
https://bugzilla.gnome.org/show_bug.cgi?id=702078
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=4eecb33
|
|
Now that we always build a new damage region, we don't need to copy the
selection covered region.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=7a7ebb8
|
|
Depending on the zoom level the area actually drawn by cairo can be a
bit larger than the selected region due to rounding errors or pixel
alignment. We use the selected region to build the damage area to
invalidate when drawing selections which in many cases is not large
enough. This causes that sometimes when removing a selections some small
rectangles keep drawn because they are not redrawn. To avoid this we
grow the damage area computed from selected regions.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=a497fb4
|
|
When the region covered by old and new selection is the same, don't
schedule a new redraw for the union.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=4093541
|
|
Instead of using xor, use the union of old_sel and new_sel to find
what needs redrawing.
https://bugzilla.gnome.org/show_bug.cgi?id=703024
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=9fd3d7d
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=9a5e9df
|