Skip to content

Commit

Permalink
Pdf viewer: add remember postion and remember jump functions.
Browse files Browse the repository at this point in the history
  • Loading branch information
manateelazycat committed Jul 23, 2018
1 parent 85dc02a commit cc9a46b
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 0 deletions.
2 changes: 2 additions & 0 deletions README.md
Expand Up @@ -104,6 +104,8 @@ Please don't run EAF with root user, root user just can access DBus's system bus
| | | 0 | Zoomn reset |
| | | g | Goto page |
| | | p | Goto to percent |
| | | [ | Remember position |
| | | ] | Remember jump |
| Camera | Type 'eaf-camera' | | |
| Demo | Type 'eaf-demo' | | |
| File Transfer | Type 'eaf-show-file-qrcode' | | |
Expand Down
20 changes: 20 additions & 0 deletions app/pdfviewer/buffer.py
Expand Up @@ -110,6 +110,22 @@ def __init__(self, url, background_color):

self.is_page_just_changed = False

self.remember_offset = None

def remember_current_position(self):
self.remember_offset = self.scroll_offset
self.message_to_emacs.emit("EAF pdf viewer: remember position.")

def remember_jump(self):
if self.remember_offset is None:
self.message_to_emacs.emit("EAF pdf viewer: no position can jump.")
else:
current_scroll_offset = self.scroll_offset
self.scroll_offset = self.remember_offset
self.update()

self.remember_offset = current_scroll_offset

def get_page_pixmap(self, index, scale):
# Just return cache pixmap when found match index and scale in cache dict.
if self.page_cache_scale == scale:
Expand Down Expand Up @@ -258,6 +274,10 @@ def keyPressEvent(self, event):
self.send_input_message("Jump to: ", "jump_page")
elif event.key() == Qt.Key_P:
self.send_input_message("Jump to percent: ", "jump_percent")
elif event.key() == Qt.Key_BracketLeft:
self.remember_current_position()
elif event.key() == Qt.Key_BracketRight:
self.remember_jump()

def get_start_page_index(self):
return int(self.scroll_offset * 1.0 / self.scale / self.page_height)
Expand Down
2 changes: 2 additions & 0 deletions core/fake_key_event.py
Expand Up @@ -66,6 +66,8 @@
'''+''': Qt.Key_Plus,
'''-''': Qt.Key_Minus,
'''=''': Qt.Key_Equal,
'''[''': Qt.Key_BracketLeft,
''']''': Qt.Key_BracketRight,
'''@''': Qt.Key_At,
'''"''': Qt.Key_QuoteDbl,
'''$''': Qt.Key_Dollar,
Expand Down

0 comments on commit cc9a46b

Please sign in to comment.