mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-25 23:05:58 +01:00
dispatchers: add Fullscreen without sending fullscreen to application (#4720)
* Add extra option to fullscreen * Remove useless branch fixes #1817 --------- Co-authored-by: matteo bob <matteo4375@gmail.com>
This commit is contained in:
parent
294e51a857
commit
289d952a6e
3 changed files with 15 additions and 11 deletions
|
@ -1064,7 +1064,7 @@ bool CWindow::canBeTorn() {
|
||||||
|
|
||||||
bool CWindow::shouldSendFullscreenState() {
|
bool CWindow::shouldSendFullscreenState() {
|
||||||
const auto MODE = g_pCompositor->getWorkspaceByID(m_iWorkspaceID)->m_efFullscreenMode;
|
const auto MODE = g_pCompositor->getWorkspaceByID(m_iWorkspaceID)->m_efFullscreenMode;
|
||||||
return m_bFakeFullscreenState || (m_bIsFullscreen && (MODE == FULLSCREEN_FULL));
|
return m_bDontSendFullscreen ? false : (m_bFakeFullscreenState || (m_bIsFullscreen && (MODE == FULLSCREEN_FULL)));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CWindow::setSuspended(bool suspend) {
|
void CWindow::setSuspended(bool suspend) {
|
||||||
|
|
|
@ -240,16 +240,17 @@ class CWindow {
|
||||||
bool m_bIsPseudotiled = false;
|
bool m_bIsPseudotiled = false;
|
||||||
Vector2D m_vPseudoSize = Vector2D(0, 0);
|
Vector2D m_vPseudoSize = Vector2D(0, 0);
|
||||||
|
|
||||||
bool m_bFirstMap = false; // for layouts
|
bool m_bFirstMap = false; // for layouts
|
||||||
bool m_bIsFloating = false;
|
bool m_bIsFloating = false;
|
||||||
bool m_bDraggingTiled = false; // for dragging around tiled windows
|
bool m_bDraggingTiled = false; // for dragging around tiled windows
|
||||||
bool m_bIsFullscreen = false;
|
bool m_bIsFullscreen = false;
|
||||||
bool m_bWasMaximized = false;
|
bool m_bDontSendFullscreen = false;
|
||||||
uint64_t m_iMonitorID = -1;
|
bool m_bWasMaximized = false;
|
||||||
std::string m_szTitle = "";
|
uint64_t m_iMonitorID = -1;
|
||||||
std::string m_szInitialTitle = "";
|
std::string m_szTitle = "";
|
||||||
std::string m_szInitialClass = "";
|
std::string m_szInitialTitle = "";
|
||||||
int m_iWorkspaceID = -1;
|
std::string m_szInitialClass = "";
|
||||||
|
int m_iWorkspaceID = -1;
|
||||||
|
|
||||||
bool m_bIsMapped = false;
|
bool m_bIsMapped = false;
|
||||||
|
|
||||||
|
|
|
@ -964,6 +964,9 @@ void CKeybindManager::fullscreenActive(std::string args) {
|
||||||
if (g_pCompositor->isWorkspaceSpecial(PWINDOW->m_iWorkspaceID))
|
if (g_pCompositor->isWorkspaceSpecial(PWINDOW->m_iWorkspaceID))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
PWINDOW->m_bDontSendFullscreen = false;
|
||||||
|
if (args == "2")
|
||||||
|
PWINDOW->m_bDontSendFullscreen = true;
|
||||||
g_pCompositor->setWindowFullscreen(PWINDOW, !PWINDOW->m_bIsFullscreen, args == "1" ? FULLSCREEN_MAXIMIZED : FULLSCREEN_FULL);
|
g_pCompositor->setWindowFullscreen(PWINDOW, !PWINDOW->m_bIsFullscreen, args == "1" ? FULLSCREEN_MAXIMIZED : FULLSCREEN_FULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue