mirror of
https://github.com/hyprwm/Hyprland.git
synced 2025-08-17 04:53:48 -07:00
T1C: window dance compat
This commit is contained in:
@@ -26,6 +26,7 @@ struct SWindowAdditionalConfigData {
|
|||||||
bool forceNoAnims = false;
|
bool forceNoAnims = false;
|
||||||
bool forceNoBorder = false;
|
bool forceNoBorder = false;
|
||||||
bool forceNoShadow = false;
|
bool forceNoShadow = false;
|
||||||
|
bool windowDanceCompat = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
class CWindow {
|
class CWindow {
|
||||||
|
@@ -761,6 +761,7 @@ bool windowRuleValid(const std::string& RULE) {
|
|||||||
&& RULE != "fullscreen"
|
&& RULE != "fullscreen"
|
||||||
&& RULE != "pin"
|
&& RULE != "pin"
|
||||||
&& RULE != "noanim"
|
&& RULE != "noanim"
|
||||||
|
&& RULE != "windowdance"
|
||||||
&& RULE.find("animation") != 0
|
&& RULE.find("animation") != 0
|
||||||
&& RULE.find("rounding") != 0
|
&& RULE.find("rounding") != 0
|
||||||
&& RULE.find("workspace") != 0);
|
&& RULE.find("workspace") != 0);
|
||||||
|
@@ -169,6 +169,8 @@ void Events::listener_mapWindow(void* owner, void* data) {
|
|||||||
requestsFullscreen = true;
|
requestsFullscreen = true;
|
||||||
} else if (r.szRule == "opaque") {
|
} else if (r.szRule == "opaque") {
|
||||||
PWINDOW->m_sAdditionalConfigData.forceOpaque = true;
|
PWINDOW->m_sAdditionalConfigData.forceOpaque = true;
|
||||||
|
} else if (r.szRule == "windowdance") {
|
||||||
|
PWINDOW->m_sAdditionalConfigData.windowDanceCompat = true;
|
||||||
} else if (r.szRule == "forceinput") {
|
} else if (r.szRule == "forceinput") {
|
||||||
PWINDOW->m_sAdditionalConfigData.forceAllowsInput = true;
|
PWINDOW->m_sAdditionalConfigData.forceAllowsInput = true;
|
||||||
} else if (r.szRule == "pin") {
|
} else if (r.szRule == "pin") {
|
||||||
@@ -737,6 +739,7 @@ void Events::listener_configureX11(void* owner, void* data) {
|
|||||||
|
|
||||||
PWINDOW->m_bCreatedOverFullscreen = true;
|
PWINDOW->m_bCreatedOverFullscreen = true;
|
||||||
|
|
||||||
|
if (!PWINDOW->m_sAdditionalConfigData.windowDanceCompat)
|
||||||
g_pInputManager->refocus();
|
g_pInputManager->refocus();
|
||||||
|
|
||||||
g_pHyprRenderer->damageWindow(PWINDOW);
|
g_pHyprRenderer->damageWindow(PWINDOW);
|
||||||
|
Reference in New Issue
Block a user