mirror of
https://github.com/YACReader/yacreader
synced 2025-06-04 01:28:55 -04:00
Added hack for fixing fullscreen context menus with QOpenGLWidget in YACReaderLibrary (Windows). Tested and working in Qt5.7.
This commit is contained in:
parent
dd64e013be
commit
aa50f6cdda
@ -2022,6 +2022,48 @@ void LibraryWindow::toggleFullScreen()
|
|||||||
fullscreen = !fullscreen;
|
fullscreen = !fullscreen;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef Q_OS_WIN //fullscreen mode in Windows for preventing this bug: QTBUG-41309 https://bugreports.qt.io/browse/QTBUG-41309
|
||||||
|
void LibraryWindow::toFullScreen()
|
||||||
|
{
|
||||||
|
fromMaximized = this->isMaximized();
|
||||||
|
|
||||||
|
sideBar->hide();
|
||||||
|
libraryToolBar->hide();
|
||||||
|
|
||||||
|
previousWindowFlags = windowFlags();
|
||||||
|
previousPos = pos();
|
||||||
|
previousSize = size();
|
||||||
|
|
||||||
|
showNormal();
|
||||||
|
setWindowFlags(previousWindowFlags | Qt::FramelessWindowHint);
|
||||||
|
|
||||||
|
const QRect r = windowHandle()->screen()->geometry();
|
||||||
|
|
||||||
|
move(r.x(), r.y());
|
||||||
|
resize(r.width(),r.height()+1);
|
||||||
|
show();
|
||||||
|
|
||||||
|
comicsViewsManager->comicsView->toFullScreen();
|
||||||
|
}
|
||||||
|
|
||||||
|
void LibraryWindow::toNormal()
|
||||||
|
{
|
||||||
|
sideBar->show();
|
||||||
|
libraryToolBar->show();
|
||||||
|
|
||||||
|
setWindowFlags(previousWindowFlags);
|
||||||
|
move(previousPos);
|
||||||
|
resize(previousSize);
|
||||||
|
show();
|
||||||
|
|
||||||
|
if(fromMaximized)
|
||||||
|
showMaximized();
|
||||||
|
|
||||||
|
comicsViewsManager->comicsView->toNormal();
|
||||||
|
}
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
void LibraryWindow::toFullScreen()
|
void LibraryWindow::toFullScreen()
|
||||||
{
|
{
|
||||||
fromMaximized = this->isMaximized();
|
fromMaximized = this->isMaximized();
|
||||||
@ -2057,6 +2099,8 @@ void LibraryWindow::toNormal()
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
void LibraryWindow::setSearchFilter(const YACReader::SearchModifiers modifier, QString filter)
|
void LibraryWindow::setSearchFilter(const YACReader::SearchModifiers modifier, QString filter)
|
||||||
{
|
{
|
||||||
if(!filter.isEmpty())
|
if(!filter.isEmpty())
|
||||||
|
@ -375,6 +375,12 @@ public slots:
|
|||||||
void onAddComicsToLabel();
|
void onAddComicsToLabel();
|
||||||
void setToolbarTitle(const QModelIndex & modelIndex);
|
void setToolbarTitle(const QModelIndex & modelIndex);
|
||||||
void saveSelectedCoversTo();
|
void saveSelectedCoversTo();
|
||||||
|
|
||||||
|
private:
|
||||||
|
//fullscreen mode in Windows for preventing this bug: QTBUG-41309 https://bugreports.qt.io/browse/QTBUG-41309
|
||||||
|
Qt::WindowFlags previousWindowFlags;
|
||||||
|
QPoint previousPos;
|
||||||
|
QSize previousSize;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user