windowrules: fix persistent_size not applying (#12441)
This commit is contained in:
parent
3d7ea9c02f
commit
475e87b351
3 changed files with 33 additions and 4 deletions
|
|
@ -130,10 +130,8 @@ CWindowRuleApplicator::SRuleResult CWindowRuleApplicator::applyDynamicRule(const
|
|||
break;
|
||||
}
|
||||
case WINDOW_RULE_EFFECT_PERSISTENT_SIZE: {
|
||||
try {
|
||||
m_persistentSize.first.set(std::stoi(effect), Types::PRIORITY_WINDOW_RULE);
|
||||
m_persistentSize.second |= rule->getPropertiesMask();
|
||||
} catch (...) { Debug::log(ERR, "CWindowRuleApplicator::applyDynamicRule: invalid rounding_power {}", effect); }
|
||||
m_persistentSize.first.set(truthy(effect), Types::PRIORITY_WINDOW_RULE);
|
||||
m_persistentSize.second |= rule->getPropertiesMask();
|
||||
break;
|
||||
}
|
||||
case WINDOW_RULE_EFFECT_ANIMATION: {
|
||||
|
|
|
|||
|
|
@ -108,6 +108,9 @@ void IHyprLayout::onWindowCreatedFloating(PHLWINDOW pWindow) {
|
|||
xy = g_pXWaylandManager->xwaylandToWaylandCoords(xy);
|
||||
desiredGeometry.x = xy.x;
|
||||
desiredGeometry.y = xy.y;
|
||||
} else if (pWindow->m_ruleApplicator->persistentSize().valueOrDefault()) {
|
||||
desiredGeometry.w = pWindow->m_lastFloatingSize.x;
|
||||
desiredGeometry.h = pWindow->m_lastFloatingSize.y;
|
||||
}
|
||||
|
||||
static auto PXWLFORCESCALEZERO = CConfigValue<Hyprlang::INT>("xwayland:force_zero_scaling");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue