diff --git a/libs/ui/KisMainWindow.cpp b/libs/ui/KisMainWindow.cpp --- a/libs/ui/KisMainWindow.cpp +++ b/libs/ui/KisMainWindow.cpp @@ -137,6 +137,9 @@ #include +#ifdef Q_OS_WIN + #include +#endif class ToolDockerFactory : public KoDockFactoryBase { @@ -495,6 +498,11 @@ d->viewManager->updateGUI(); d->viewManager->updateIcons(); +#ifdef Q_OS_WIN + auto w = qApp->activeWindow(); + if (w) QWindowsWindowFunctions::setHasBorderInFullScreen(w->windowHandle(), true); +#endif + QTimer::singleShot(1000, this, SLOT(checkSanity())); { @@ -505,6 +513,9 @@ d->tabSwitchCompressor.reset( new KisSignalCompressorWithParam(500, callback, KisSignalCompressor::FIRST_INACTIVE)); } + + + } void KisMainWindow::setNoCleanup(bool noCleanup) @@ -1779,17 +1790,13 @@ void KisMainWindow::viewFullscreen(bool fullScreen) { KisConfig cfg; -#ifdef Q_OS_WIN - cfg.setFullscreenMode(false); -#else cfg.setFullscreenMode(fullScreen); if (fullScreen) { setWindowState(windowState() | Qt::WindowFullScreen); // set } else { setWindowState(windowState() & ~Qt::WindowFullScreen); // reset } -#endif } void KisMainWindow::slotProgress(int value) @@ -2317,9 +2324,8 @@ actionManager->createStandardAction(KStandardAction::Open, this, SLOT(slotFileOpen())); actionManager->createStandardAction(KStandardAction::Quit, this, SLOT(slotFileQuit())); actionManager->createStandardAction(KStandardAction::ConfigureToolbars, this, SLOT(slotConfigureToolbars())); -#ifndef Q_OS_WIN actionManager->createStandardAction(KStandardAction::FullScreen, this, SLOT(viewFullscreen(bool))); -#endif + d->recentFiles = KStandardAction::openRecent(this, SLOT(slotFileOpenRecent(QUrl)), actionCollection()); connect(d->recentFiles, SIGNAL(recentListCleared()), this, SLOT(saveRecentFiles())); KSharedConfigPtr configPtr = KSharedConfig::openConfig(); diff --git a/libs/ui/KisViewManager.cpp b/libs/ui/KisViewManager.cpp --- a/libs/ui/KisViewManager.cpp +++ b/libs/ui/KisViewManager.cpp @@ -1040,15 +1040,15 @@ action->setChecked(!toggled); } } -#ifndef Q_OS_WIN + if (cfg.hideTitlebarFullscreen() && !cfg.fullscreenMode()) { if(toggled) { main->setWindowState( main->windowState() | Qt::WindowFullScreen); } else { main->setWindowState( main->windowState() & ~Qt::WindowFullScreen); } } -#endif + if (cfg.hideMenuFullscreen()) { if (!toggled) { if (main->menuBar()->dynamicPropertyNames().contains("wasvisible")) { diff --git a/libs/ui/dialogs/kis_dlg_preferences.cc b/libs/ui/dialogs/kis_dlg_preferences.cc --- a/libs/ui/dialogs/kis_dlg_preferences.cc +++ b/libs/ui/dialogs/kis_dlg_preferences.cc @@ -782,9 +782,6 @@ chkMenu->setChecked(cfg.hideMenuFullscreen()); chkScrollbars->setChecked(cfg.hideScrollbarsFullscreen()); chkStatusbar->setChecked(cfg.hideStatusbarFullscreen()); -#ifdef Q_OS_WINDOWS - chkTitlebar->setVisible(false); -#endif chkTitlebar->setChecked(cfg.hideTitlebarFullscreen()); chkToolbar->setChecked(cfg.hideToolbarFullscreen()); diff --git a/libs/ui/kis_config.cc b/libs/ui/kis_config.cc --- a/libs/ui/kis_config.cc +++ b/libs/ui/kis_config.cc @@ -1114,11 +1114,7 @@ bool KisConfig::hideTitlebarFullscreen(bool defaultValue) const { -#ifdef Q_OS_WIN - return false; -#else return (defaultValue ? true : m_cfg.readEntry("hideTitleBarFullscreen", true)); -#endif } void KisConfig::setHideTitlebarFullscreen(const bool value) const