Fix fullscreen

This commit is contained in:
BasioMeusPuga
2017-11-13 13:43:35 +05:30
parent cee1afbf02
commit 65c1f61660
2 changed files with 23 additions and 16 deletions

View File

@@ -31,6 +31,7 @@
✓ Substitute textedit for another widget ✓ Substitute textedit for another widget
✓ Theming ✓ Theming
✓ Keep fontsize and margins consistent - Let page increase in length ✓ Keep fontsize and margins consistent - Let page increase in length
✓ Fullscreening
All ebooks should first be added to the database and then returned as HTML All ebooks should first be added to the database and then returned as HTML
Pagination Pagination
Set context menu for definitions and the like Set context menu for definitions and the like
@@ -283,20 +284,10 @@ class MainUI(QtWidgets.QMainWindow, mainwindow.Ui_MainWindow):
current_tab_widget = self.tabWidget.widget(current_tab) current_tab_widget = self.tabWidget.widget(current_tab)
self.current_contentView = current_tab_widget.findChildren(QtWidgets.QTextBrowser)[0] self.current_contentView = current_tab_widget.findChildren(QtWidgets.QTextBrowser)[0]
self.exit_shortcut = QtWidgets.QShortcut(
QtGui.QKeySequence('Escape'), self.current_contentView)
self.exit_shortcut.activated.connect(self.set_normalsize)
self.current_contentView.setWindowFlags(QtCore.Qt.Window) self.current_contentView.setWindowFlags(QtCore.Qt.Window)
self.current_contentView.setWindowState(QtCore.Qt.WindowFullScreen) self.current_contentView.setWindowState(QtCore.Qt.WindowFullScreen)
self.current_contentView.show()
self.hide() self.hide()
self.current_contentView.show()
def set_normalsize(self):
self.current_contentView.setWindowState(QtCore.Qt.WindowNoState)
self.current_contentView.setWindowFlags(QtCore.Qt.Widget)
self.show()
self.current_contentView.show()
def list_doubleclick(self, myindex): def list_doubleclick(self, myindex):
index = self.listView.model().index(myindex.row(), 0) index = self.listView.model().index(myindex.row(), 0)
@@ -418,9 +409,12 @@ class MainUI(QtWidgets.QMainWindow, mainwindow.Ui_MainWindow):
current_tab_widget = self.tabWidget.widget(current_tab) current_tab_widget = self.tabWidget.widget(current_tab)
current_contentView = current_tab_widget.findChildren(QtWidgets.QTextBrowser)[0] current_contentView = current_tab_widget.findChildren(QtWidgets.QTextBrowser)[0]
# This allows for the scrollbar to always be at the edge of the screen
current_contentView.setViewportMargins(padding, 0, padding, 0)
current_contentView.setStyleSheet( current_contentView.setStyleSheet(
"QTextEdit {{font-family: {0}; font-size: {1}px; padding-left: {2}; padding-right: {2}; color: {3}; background-color: {4}}}".format( "QTextEdit {{font-family: {0}; font-size: {1}px; color: {2}; background-color: {3}}}".format(
font, font_size, padding, foreground, background)) font, font_size, foreground, background))
def closeEvent(self, event=None): def closeEvent(self, event=None):
# All tabs must be iterated upon here # All tabs must be iterated upon here

View File

@@ -258,7 +258,6 @@ class Tab(QtWidgets.QWidget):
def __init__(self, metadata, parent=None): def __init__(self, metadata, parent=None):
# TODO # TODO
# A horizontal slider to control flow # A horizontal slider to control flow
# Keyboard shortcuts
# Take hint from a position function argument to open the book # Take hint from a position function argument to open the book
# at a specific page # at a specific page
@@ -273,19 +272,33 @@ class Tab(QtWidgets.QWidget):
self.contentView.setFrameShape(QtWidgets.QFrame.NoFrame) self.contentView.setFrameShape(QtWidgets.QFrame.NoFrame)
self.contentView.setObjectName("contentView") self.contentView.setObjectName("contentView")
self.contentView.verticalScrollBar().setSingleStep(7) self.contentView.verticalScrollBar().setSingleStep(7)
self.contentView.setHorizontalScrollBarPolicy(
QtCore.Qt.ScrollBarAlwaysOff)
title = self.metadata['title'] title = self.metadata['title']
position = self.metadata['position'] position = self.metadata['position']
# TODO
# Chapter position and vertical scrollbar position
if not position: if not position:
first_chapter_name = list(self.metadata['content'])[0] first_chapter_name = list(self.metadata['content'])[0]
first_chapter_content = self.metadata['content'][first_chapter_name] first_chapter_content = self.metadata['content'][first_chapter_name]
self.contentView.setHtml(first_chapter_content) self.contentView.setHtml(first_chapter_content)
self.contentView.setHorizontalScrollBarPolicy(
QtCore.Qt.ScrollBarAlwaysOff)
self.gridLayout.addWidget(self.contentView, 0, 0, 1, 1) self.gridLayout.addWidget(self.contentView, 0, 0, 1, 1)
self.parent.addTab(self, title) self.parent.addTab(self, title)
self.exit_fs = QtWidgets.QShortcut(
QtGui.QKeySequence('Escape'), self.contentView)
self.exit_fs.setContext(QtCore.Qt.ApplicationShortcut)
self.exit_fs.activated.connect(self.exit_fullscreen)
def exit_fullscreen(self):
self.contentView.setWindowFlags(QtCore.Qt.Widget)
self.contentView.setWindowState(QtCore.Qt.WindowNoState)
self.contentView.show()
self.window().show()
class LibraryDelegate(QtWidgets.QStyledItemDelegate): class LibraryDelegate(QtWidgets.QStyledItemDelegate):
def __init__(self, parent=None): def __init__(self, parent=None):