mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-08 18:54:09 -04:00
Shortcut for toggling fullscreen
This commit is contained in:
parent
ece5180a80
commit
e58a50e7ed
@ -82,4 +82,5 @@ ui_operations = {
|
||||
'delete_book': None,
|
||||
'focus_iframe': None,
|
||||
'toggle_toc': None,
|
||||
'toggle_full_screen': None,
|
||||
}
|
||||
|
@ -19,9 +19,7 @@ from read_book.prefs.main import create_prefs_panel
|
||||
from read_book.toc import create_toc_panel
|
||||
from read_book.word_actions import create_word_actions_panel
|
||||
from session import get_device_uuid
|
||||
from utils import (
|
||||
full_screen_element, is_ios, request_full_screen, safe_set_inner_html
|
||||
)
|
||||
from utils import full_screen_element, is_ios, safe_set_inner_html
|
||||
from widgets import create_button, create_spinner
|
||||
|
||||
|
||||
@ -278,7 +276,7 @@ class MainOverlay: # {{{
|
||||
if not full_screen_element() and not is_ios:
|
||||
# No fullscreen on iOS, see http://caniuse.com/#search=fullscreen
|
||||
full_screen_actions.push(
|
||||
ac(_('Full screen'), _('Enter full screen mode'), def(): request_full_screen(), self.overlay.hide();, 'full-screen')
|
||||
ac(_('Full screen'), _('Enter full screen mode'), def(): self.overlay.hide(), ui_operations.toggle_full_screen();, 'full-screen')
|
||||
)
|
||||
if full_screen_actions.length:
|
||||
actions_div.appendChild(E.ul(*full_screen_actions))
|
||||
|
@ -186,6 +186,12 @@ SHORTCUTS = {
|
||||
'ui',
|
||||
_('Decrease font size'),
|
||||
),
|
||||
|
||||
'toggle_full_screen': desc(
|
||||
v"['F11', 'Ctrl+Shift+F']",
|
||||
'ui',
|
||||
_('Toggle full screen'),
|
||||
),
|
||||
}
|
||||
|
||||
|
||||
|
@ -17,7 +17,7 @@ from modals import create_simple_dialog_markup, error_dialog
|
||||
from read_book.db import get_db
|
||||
from read_book.globals import ui_operations
|
||||
from read_book.view import View
|
||||
from utils import debounce, human_readable
|
||||
from utils import debounce, full_screen_element, human_readable, request_full_screen
|
||||
from widgets import create_button
|
||||
|
||||
RENDER_VERSION = __RENDER_VERSION__
|
||||
@ -69,6 +69,7 @@ class ReadUI:
|
||||
ui_operations.delete_book = self.delete_book.bind(self)
|
||||
ui_operations.focus_iframe = self.focus_iframe.bind(self)
|
||||
ui_operations.toggle_toc = self.toggle_toc.bind(self)
|
||||
ui_operations.toggle_full_screen = self.toggle_full_screen.bind(self)
|
||||
|
||||
def on_resize(self):
|
||||
self.view.on_resize()
|
||||
@ -170,6 +171,12 @@ class ReadUI:
|
||||
def toggle_toc(self):
|
||||
self.view.overlay.show_toc()
|
||||
|
||||
def toggle_full_screen(self):
|
||||
if full_screen_element():
|
||||
document.exitFullscreen()
|
||||
else:
|
||||
request_full_screen(document.documentElement)
|
||||
|
||||
def update_color_scheme(self):
|
||||
self.view.update_color_scheme()
|
||||
|
||||
|
@ -241,6 +241,8 @@ class View:
|
||||
self.bump_font_size({'increase': True})
|
||||
elif data.name is 'decrease_font_size':
|
||||
self.bump_font_size({'increase': False})
|
||||
elif data.name is 'toggle_full_screen':
|
||||
ui_operations.toggle_full_screen()
|
||||
|
||||
def on_selection_change(self, data):
|
||||
self.currently_showing.selected_text = data.text
|
||||
|
@ -74,8 +74,9 @@ def encode_query_with_path(query, path):
|
||||
|
||||
def request_full_screen(elem):
|
||||
elem = elem or document.documentElement
|
||||
options = {'navigationUI': 'hide'}
|
||||
if elem.requestFullScreen:
|
||||
elem.requestFullScreen()
|
||||
elem.requestFullScreen(options)
|
||||
elif elem.webkitRequestFullScreen:
|
||||
elem.webkitRequestFullScreen()
|
||||
elif elem.mozRequestFullScreen:
|
||||
|
Loading…
x
Reference in New Issue
Block a user