Age | Commit message (Collapse) | Author | Files | Lines |
|
ev_pixbuf_cache_get_selection_surface returns the selection surface, and
new function ev_pixbuf_cache_get_selection_region returns the selection
region.
https://bugzilla.gnome.org/show_bug.cgi?id=669022
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=90d6580
|
|
Allows a fallback for backends which can implement get_selection_region
but not render_selection. Changes ev-pixbuf-cache so a redraw is only
done when the scale changes.
https://bugzilla.gnome.org/show_bug.cgi?id=669022
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=9e89fb1
|
|
Move to a helper function the code to get the exact area where the caret
should be drawn and use it to draw the care cursor and to invalidate the
area when blinking.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=f5e7eb4
|
|
I removed the line to set the current page after moving the caret cursor
by mistake. Add it back and change cursor_go_to_next/previous_page to
not update the page, but only update the cursor_page so that we have a
single place where the page is updated after caret cursor moves.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=bf85030
|
|
if the caret cursor was not updated
Move the caret cursor only when requested by the user. Keep the page
where the caret cursor is in addition to the offset inside that page.
https://bugzilla.gnome.org/show_bug.cgi?id=702068
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=4d15ab5
|
|
Based on GtkEntry and GtkTextView implementation, the caret cursor
blinks when the view is active and caret navigation is enabled. It stops
blinking after a while if there's no user interaction. It uses
GtkSettings:gtk-cursor-blink-time and
GtkSettings:gtk-cursor-blink-timeout.
https://bugzilla.gnome.org/show_bug.cgi?id=702076
taken from:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=e6f7250
|
|
taken from:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=95f661b
|
|
It returns an array of PangoLogAttr with the logical attributes of the
text for the given page.
taken from:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=6870279
|
|
Navigation by character, word, next/previous line and beginning/end of
the line using the caret cursor.
The routines to move the cursor don't use GtkTextBuffer to
avoid the duplication of the text for every page.
- Left/right arrow: Move one character to the left/right.
- Up/down arrow: Move up/down one line.
- Ctrl + left/right arrow: Move to the beginning/end of
the previous/next word.
- Home/End: Move to the beginning/end of the current line.
https://bugzilla.gnome.org/show_bug.cgi?id=638905
taken from:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=1dc10fe
|
|
The code necessary to draw a page surface or a selection
surface is the same. We factor this out to a new static method
called draw_surface
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=3ab6ac1
libview: Fix rendering of the first visible page while resizing
While we are resizing the view widget and waiting for a new
surface rendered at the right size, we use old surfaces
scaled to match the target size. When the begining of a page is not
visible, the scaled surfaces are not placed correctly.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=72f2ae4
|
|
In ev_view_get_height_to_page, the "height" or "dual_height"
pointer can be set. If dual_height is set, the dual_height buffer
is used. Using the "normal" height cache in dual view causes
an out of bounds read. So we restrict the cache accesses to their
relevant buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=771612
origin commit:
https://git.gnome.org/browse/evince/commit/?id=0d44134
|
|
This allows to move between words with CTRL+Left/Right in text form
fields instead of rotating the view.
https://bugzilla.gnome.org/show_bug.cgi?id=699630
origin commit:
https://git.gnome.org/browse/evince/commit/?id=ac22e8f
|
|
In continuous mode with dual page view, there is a chance
that the pages were outside of the scroll view. When
opening a document in such circumstances, the current
page should not be updated to a negative number when
already has the first page as default.
This fixes a crash when searching with a negative
current page.
Fix https://bugzilla.gnome.org/show_bug.cgi?id=683172
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=8fe6917
|
|
Instead of having a few different mutually exclusive booleans it
makes sense to have it be a mode with the following options:
automatic, single, dual.
This allows us to have a way to automatically determine if dual page
mode should be used when the window is large enough.
https://bugzilla.gnome.org/show_bug.cgi?id=689468
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=42f6d4b
|
|
This "Automatic" zoom mode will use fit width when
the window is smaller than 100% of the actual page size
and then use the actual page size up to the point the
window is large enough to hold two entire pages side
by side.
https://bugzilla.gnome.org/show_bug.cgi?id=689468
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=0cad875
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=689468
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=ffd3853
|
|
As a toggle option only available in dual mode.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=1078b8f
|
|
see https://developer.gnome.org/gtk3/unstable/GtkContainer.html#gtk-container-set-resize-mode
They aren’t necessary anymore since frame clocks and might introduce obscure bugs if used.
Gtk3-inspector shows me that resize-mode-is-parent (default) is used.
|
|
When an annotation is deleted, the sidebar needs to
be refreshed so that the annotation is removed from
the list
See item 3 in this comment:
https://bugzilla.gnome.org/show_bug.cgi?id=649044#c33
origin commit:
https://git.gnome.org/browse/evince/commit/?id=13defb2
|
|
This allows to specify what is dirty so that it's freed before being
cached again.
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-14&id=20c6b3b
|
|
Hide annotation windows if necessary and unset selected
element before removing an annotation.
https://bugzilla.gnome.org/show_bug.cgi?id=649044
origin commit:
https://git.gnome.org/browse/evince/commit/?id=927e956
|
|
internally
This will be needed in order to implement atk_component_grab_focus
https://bugzilla.gnome.org/show_bug.cgi?id=728475
origin commit:
https://git.gnome.org/browse/evince/commit/?id=617dc0c
|
|
Implements the functions needed to change the
opacity of the annotation windows.
https://bugzilla.gnome.org/show_bug.cgi?id=725571
origin commit:
https://git.gnome.org/browse/evince/commit/?id=b968cfb
|
|
Rewritten focus annotations in a generic way.
https://bugzilla.gnome.org/show_bug.cgi?id=706244
origin commit:
https://git.gnome.org/browse/evince/commit/?id=fddb9ee
|
|
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-10&id=90e431d
|
|
gtk_adjustment_changed has been deprecated since version 3.18 and
GTK+ emits “changed” itself whenever any of the properties (other than value) change.
see https://developer.gnome.org/gtk3/unstable/GtkAdjustment.html#gtk-adjustment-changed
|
|
Methods that use a double pointer to a GList cannot be annotated
properly, so skip them until we have a better introspectable API.
https://bugzilla.gnome.org/show_bug.cgi?id=691354
|
|
Since the latter uses varargs and will never be introspectable.
https://bugzilla.gnome.org/show_bug.cgi?id=691354
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=1d87fc5
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=691354
origin commit:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=4bc744c
|
|
avoid deprecated:
gdk_screen_get_monitor_geometry
gdk_screen_get_monitor_at_window
gdk_screen_get_monitor_at_point
|
|
|
|
|
|
Check whether currently shown page fits actual view and allow user to scroll
to previous/next page in that case (also in Dual page mode).
Allow also scrolling if only one axis fits the view and the event
happenned in the same axis.
https://bugzilla.gnome.org/show_bug.cgi?id=562257
origin commit links:
https://git.gnome.org/browse/evince/commit/?id=077bab6
https://git.gnome.org/browse/evince/commit/?id=45f527e
|
|
This enables the smooth/kinetic scrolling support found in GTK+ 3.3.18
with the document view, and handles them for the Ctrl+scroll,
Shift+scroll, and non-continuous best-fit mode scrolling cases.
https://bugzilla.gnome.org/show_bug.cgi?id=674098
origin commit link:
https://git.gnome.org/browse/evince/commit/?id=34d0d5d
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=731669
Upstream commit, Frédéric Moenne-loccoz committed with Carlos Garcia Campos on 15 Feb 2015:
https://github.com/GNOME/evince/commit/9d9e14dfa9ae782e879961b7307f55b41b2a60b3
|
|
This only applies on non-continuous mode, and the page fits with no
horizontal scrolling. The gesture is actually connected to the parent
GtkScrolledWindow (tracked through hierarchy events), so it is able
to interact with kinetic scrolling gestures there, and cancel those
if the pan gesture is recognized.
Upstream commits by garnacho on 6 May and 15 Aug 2014:
https://github.com/GNOME/evince/commit/afc50e7e07c135e22137a33cbf9913713692bf49
https://github.com/GNOME/evince/commit/2280b09ec71ee88eeeb7fd8d02adb2985d17a765
|
|
This is implicitly needed in a few places in code, so make the requirement
explicit on ::parent-set.
Upstream commit by garnacho on 11 Aug 2014:
https://github.com/GNOME/evince/commit/6288e48
|
|
This is delegated on a GtkGestureZoom. When triggered, the document
will be zoomed based on the distance changes between both fingers.
When the gesture is not active, regular event handling (text selection,
clicking, etc...) will happen.
Upstream commit from garnacho on 28 Mar 2014:
https://github.com/GNOME/evince/commit/36c7f21
|
|
We need to actually connect to a change in the correct property to update this.
In this case "rgba", not "color". We also need to prevent the system theme from
affecting the color of the annotation window.
taken from:
https://github.com/linuxmint/xreader/commit/1236d4b
|
|
Be able to start entering text right after selecting
or creating an annotation, also hide text cursor
when window goes unfocused (backdrop state).
https://bugzilla.gnome.org/show_bug.cgi?id=668446
taken from:
https://git.gnome.org/browse/evince/commit/?id=fc8fe57
|
|
Make annotation windows always accept input focus. Based on patch by
Florian Echtler.
https://bugzilla.gnome.org/show_bug.cgi?id=668446
Taken from:
https://git.gnome.org/browse/evince/commit/?id=24c1029
|
|
We were using the annotation color, but it should only be used for the
background of the annotation window.
https://bugzilla.gnome.org/show_bug.cgi?id=677471
taken from:
https://git.gnome.org/browse/evince/commit/?id=792d878
|
|
|
|
https://github.com/linuxmint/xreader/commit/c47a1f4
|
|
Based on Evince commits 8b965e769808815df9c75a10a0e4972c0904d26a
and a612f809e4e23d88a661a9604ce84f332189a658.
https://github.com/linuxmint/xreader/commit/4eccf6b
|
|
After a gtk update, the sizes of the icons on the
annotation window (close and resize handles) are
48x48. This patch fixes this by using GtkIconTheme
to force the loading of the icon on a different
size than the file
taken from:
https://git.gnome.org/browse/evince/commit/?id=63d0b4b
|
|
This is a regression from commit
https://github.com/mate-desktop/atril/commit/f8aec90
see:
https://github.com/linuxmint/xreader/commit/46298df
https://github.com/linuxmint/xreader/issues/12
|
|
|
|
use gtk_drag_begin_with_coordinates instead
|
|
taken from:
https://git.gnome.org/browse/evince/commit/?h=gnome-3-8&id=23048af
|