Split fullscreen and modeswitch controls

This commit is contained in:
Rodger Combs authored and Paulo Coelho Alves committed 2018-09-11 22:02:47 +01:00
1 parent 00f137b1f6
commit d7dde160fe
4 files changed
+12 -28

No files matched your search

+4 -4
View File
@@ -51,11 +51,11 @@
"Ctrl\\+W": "host:quit",
// application shortcuts
"Ctrl\\+Shift\\+F": "host:fullscreen",
"Meta\\+Ctrl\\+F": "host:fullscreenCurrentMode",
"Meta\\+Enter": "host:fullscreen",
"Ctrl\\+Shift\\+F": "host:toggleWebMode",
"Meta\\+Ctrl\\+F": "host:fullscreen",
"Meta\\+Enter": "host:toggleWebMode",
"F11": "host:fullscreen",
"Shift\\+F11": "host:fullscreenCurrentMode",
"Shift\\+F11": "host:fullscreen",
"Ctrl\\+Q": "host:close",
"Ctrl\\+Shift\\+R": "host:reload",
"Ctrl\\+Shift\\+D": "host:toggleDebug",
+4 -20
View File
@@ -57,7 +57,7 @@ KonvergoWindow::KonvergoWindow(QWindow* parent) :
InputComponent::Get().registerHostCommand("reload", this, "reloadWeb");
InputComponent::Get().registerHostCommand("fullscreen", this, "toggleFullscreen");
InputComponent::Get().registerHostCommand("minimize", this, "minimizeWindow");
InputComponent::Get().registerHostCommand("fullscreenCurrentMode", this, "toggleFullscreenNoSwitch");
InputComponent::Get().registerHostCommand("switchMode", this, "toggleWebMode");
#ifdef TARGET_RPI
// On RPI, we use dispmanx layering - the video is on a layer below Konvergo,
@@ -315,16 +315,12 @@ void KonvergoWindow::setFullScreen(bool enable)
}
///////////////////////////////////////////////////////////////////////////////////////////////////
void KonvergoWindow::toggleFullscreen(bool noSwitchMode)
void KonvergoWindow::toggleWebMode()
{
bool switchMode = (SettingsComponent::Get().value(SETTINGS_SECTION_MAIN, "layout").toString() == "auto" && !noSwitchMode);
if (switchMode && !m_webDesktopMode && isFullScreen())
if (!m_webDesktopMode)
SettingsComponent::Get().setValue(SETTINGS_SECTION_MAIN, "webMode", "desktop");
else if (switchMode && m_webDesktopMode && !isFullScreen())
SettingsComponent::Get().setValue(SETTINGS_SECTION_MAIN, "webMode", "tv");
else
setFullScreen(!isFullScreen());
SettingsComponent::Get().setValue(SETTINGS_SECTION_MAIN, "webMode", "tv");
}
///////////////////////////////////////////////////////////////////////////////////////////////////
@@ -391,17 +387,6 @@ void KonvergoWindow::updateMainSectionSettings(const QVariantMap& values)
}
else
{
bool oldFullscreen = SettingsComponent::Get().value(SETTINGS_SECTION_MAIN, "fullscreen").toBool();
bool newFullscreen = oldFullscreen;
if (oldDesktopMode && !newDesktopMode)
newFullscreen = true;
else if (!oldDesktopMode && newDesktopMode)
newFullscreen = false;
if (oldFullscreen != newFullscreen)
SettingsComponent::Get().setValue(SETTINGS_SECTION_MAIN, "fullscreen", newFullscreen);
if (oldDesktopMode != newDesktopMode)
{
QTimer::singleShot(0, [this, newDesktopMode]
@@ -413,7 +398,6 @@ void KonvergoWindow::updateMainSectionSettings(const QVariantMap& values)
if (m_webDesktopMode)
SystemComponent::Get().setCursorVisibility(true);
updateWindowState();
});
}
}
+2 -2
View File
@@ -66,9 +66,9 @@ public:
Q_SLOT void toggleDebug();
Q_SLOT void toggleFullscreen(bool noSwitchMode = false);
Q_SLOT void toggleFullscreen() { setFullScreen(!isFullScreen()); }
Q_SLOT void toggleFullscreenNoSwitch() { toggleFullscreen(true); }
Q_SLOT void toggleWebMode();
Q_SLOT void toggleAlwaysOnTop()
{
+2 -2
View File
@@ -26,7 +26,7 @@ KonvergoWindow
if (components.system.isMacos) return "Ctrl+Shift+F";
return "F11";
}
onTriggered: mainWindow.toggleFullscreen()
onTriggered: mainWindow.toggleWebMode()
}
Action
@@ -37,7 +37,7 @@ KonvergoWindow
if (components.system.isMacos) return "Ctrl+Meta+F"
return "Shift+F11"
}
onTriggered: mainWindow.toggleFullscreenNoSwitch()
onTriggered: mainWindow.toggleFullscreen()
}
Action