mirror of
https://github.com/hyprwm/Hyprland
synced 2025-12-20 04:30:12 +01:00
layouts: fix maximize size
This commit is contained in:
parent
cedadf4fdc
commit
d3c9c54b79
3 changed files with 33 additions and 2 deletions
|
|
@ -344,6 +344,35 @@ static bool testWindowFocusOnFullscreenConflict() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void testMaximizeSize() {
|
||||||
|
NLog::log("{}Testing maximize size", Colors::GREEN);
|
||||||
|
|
||||||
|
EXPECT(spawnKitty("kitty_A"), true);
|
||||||
|
|
||||||
|
// check kitty properties. Maximizing shouldnt change its size
|
||||||
|
{
|
||||||
|
auto str = getFromSocket("/clients");
|
||||||
|
EXPECT(str.contains("at: 22,22"), true);
|
||||||
|
EXPECT(str.contains("size: 1876,1036"), true);
|
||||||
|
EXPECT(str.contains("fullscreen: 0"), true);
|
||||||
|
}
|
||||||
|
|
||||||
|
OK(getFromSocket("/dispatch fullscreen 1"));
|
||||||
|
|
||||||
|
{
|
||||||
|
auto str = getFromSocket("/clients");
|
||||||
|
EXPECT(str.contains("at: 22,22"), true);
|
||||||
|
EXPECT(str.contains("size: 1876,1036"), true);
|
||||||
|
EXPECT(str.contains("fullscreen: 0"), true);
|
||||||
|
}
|
||||||
|
|
||||||
|
NLog::log("{}Killing all windows", Colors::YELLOW);
|
||||||
|
Tests::killAllWindows();
|
||||||
|
|
||||||
|
NLog::log("{}Expecting 0 windows", Colors::YELLOW);
|
||||||
|
EXPECT(Tests::windowCount(), 0);
|
||||||
|
}
|
||||||
|
|
||||||
static bool test() {
|
static bool test() {
|
||||||
NLog::log("{}Testing windows", Colors::GREEN);
|
NLog::log("{}Testing windows", Colors::GREEN);
|
||||||
|
|
||||||
|
|
@ -714,6 +743,8 @@ static bool test() {
|
||||||
|
|
||||||
testGroupRules();
|
testGroupRules();
|
||||||
|
|
||||||
|
testMaximizeSize();
|
||||||
|
|
||||||
NLog::log("{}Reloading config", Colors::YELLOW);
|
NLog::log("{}Reloading config", Colors::YELLOW);
|
||||||
OK(getFromSocket("/reload"));
|
OK(getFromSocket("/reload"));
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -570,7 +570,7 @@ void CHyprDwindleLayout::calculateWorkspace(const PHLWORKSPACE& pWorkspace) {
|
||||||
SP<SDwindleNodeData> fakeNode = makeShared<SDwindleNodeData>();
|
SP<SDwindleNodeData> fakeNode = makeShared<SDwindleNodeData>();
|
||||||
fakeNode->self = fakeNode;
|
fakeNode->self = fakeNode;
|
||||||
fakeNode->pWindow = PFULLWINDOW;
|
fakeNode->pWindow = PFULLWINDOW;
|
||||||
fakeNode->box = PMONITOR->logicalBoxMinusReserved();
|
fakeNode->box = workAreaOnWorkspace(pWorkspace);
|
||||||
fakeNode->workspaceID = pWorkspace->m_id;
|
fakeNode->workspaceID = pWorkspace->m_id;
|
||||||
PFULLWINDOW->m_position = fakeNode->box.pos();
|
PFULLWINDOW->m_position = fakeNode->box.pos();
|
||||||
PFULLWINDOW->m_size = fakeNode->box.size();
|
PFULLWINDOW->m_size = fakeNode->box.size();
|
||||||
|
|
|
||||||
|
|
@ -322,7 +322,7 @@ void CHyprMasterLayout::calculateWorkspace(PHLWORKSPACE pWorkspace) {
|
||||||
} else if (pWorkspace->m_fullscreenMode == FSMODE_MAXIMIZED) {
|
} else if (pWorkspace->m_fullscreenMode == FSMODE_MAXIMIZED) {
|
||||||
SMasterNodeData fakeNode;
|
SMasterNodeData fakeNode;
|
||||||
fakeNode.pWindow = PFULLWINDOW;
|
fakeNode.pWindow = PFULLWINDOW;
|
||||||
const auto WORKAREA = PMONITOR->logicalBoxMinusReserved();
|
const auto WORKAREA = workAreaOnWorkspace(pWorkspace);
|
||||||
fakeNode.position = WORKAREA.pos();
|
fakeNode.position = WORKAREA.pos();
|
||||||
fakeNode.size = WORKAREA.size();
|
fakeNode.size = WORKAREA.size();
|
||||||
fakeNode.workspaceID = pWorkspace->m_id;
|
fakeNode.workspaceID = pWorkspace->m_id;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue