diff --git a/src/layout/arrange.h b/src/layout/arrange.h index 3721364..0e51e3e 100644 --- a/src/layout/arrange.h +++ b/src/layout/arrange.h @@ -768,7 +768,9 @@ arrange(Monitor *m, bool want_animation, bool from_view) { if (m->isoverview) { overviewlayout.arrange(m); } else { - m->pertag->ltidxs[m->pertag->curtag]->arrange(m); + const Layout *lt = m->pertag->ltidxs[m->pertag->curtag]; + if (lt->arrange) + lt->arrange(m); } if (!start_drag_window) { diff --git a/src/layout/layout.h b/src/layout/layout.h index f896ac2..07f54fc 100644 --- a/src/layout/layout.h +++ b/src/layout/layout.h @@ -29,6 +29,7 @@ enum { VERTICAL_DECK, RIGHT_TILE, TGMIX, + FLOATING, }; Layout layouts[] = { @@ -47,4 +48,5 @@ Layout layouts[] = { {"VG", vertical_grid, "vertical_grid", VERTICAL_GRID}, // 垂直格子布局 {"VK", vertical_deck, "vertical_deck", VERTICAL_DECK}, // 垂直卡片布局 {"TG", tgmix, "tgmix", TGMIX}, // 混合布局 -}; \ No newline at end of file + {"F", NULL, "floating", FLOATING}, +};