BOINFNDI3IZEW4AMYS5P2PNVQGIF5Y7LZVVMT3QFUUHT7CY6736QC
QKVRBSFOOQUQMZ3P7CMPA7QCVQW5TXAKWH6NDL3K7Q3Z4GMXOVPQC
A37WAPYRXHQZLFAMACWUQATUG6SO2YZPPHS7VEWYXZNX2KTUXSEAC
4EAPUE3PYXWN62H7UVTYJIQYQJBQ7YUWLK2UPTXP5LIWFVF22RPAC
DVZNMII7NCB2B6GOP33NWWNND3JDUR3UR2MXVLEOG2DNEP5OOBPAC
T5LZF6MAZN3S2CDRSWJTJRNOTM24DRE4NQBQI6F2ALYC5ZU74PTAC
RE7BLLEBV2AVIBDYUESOIKI5ZPDJ47272ZWJFVEE4MD7LE7OF45AC
NC56KN4JMD4LGGP73GW73SKVLISXZQBNE4LT3VV6FFWAITNBUOOAC
FUZEZTLBNTVGUNLBGFLMVZOHLGMMHFPQD7USP4JYMGGVXBL2EUBQC
7QP2Q5MUDMETQEZD2FRAVIFPIFNURQDKWJ32LJCK3XJU56BCPFFAC
7B74AT3BXYB7PVW4F6SGQNPMHOU5TEV5TZ54CG6VSQI46XSEKWXQC
VJ6T4L76LPIIV25GCFWUSFZXEFIBQ2EMRU2WHF3YFJHXSAMHNO5AC
XXOC2AY53ZWML6TVPKX6BHGKZJNRET4IWRSTCVMJQJZMK3MFD3TQC
EPPTZMTAFXNPO62VJ66ZDLACQRU5K2WSDFSCH7K6IGXKKPKCOEYQC
RYEGK6T65T2JERD364BNLAFJO2KERYHN52HB6EKRPOY3G6VCJSEQC
FEU4KJII73TAZ433FXJBWCQG6QGRDFYBE4LG2F7NSKLZ5CUBMZ7AC
HUEKJA2MHTP6CPNBLKNHT775NLRKNNURXA355X6YWP77OYDYNTNQC
34ZVZ4LWAOYLVXC2VO5QZLJHCH4ZKLDJUPILGNFFEPJ6BLTAN3HAC
4QDLLONBTF3RRJHEJ5EVCWU5YBKREPHG7NCEA2C7OMHL55K2G7NAC
24ZMBWYLMODPBAVLT4XNOSETHQXVLXNASYXUIGG2435IT7WIZC5AC
2GP4MXKEDQMZ7E6TCRSMV2AGN7HLEAHR3QEAC2QFCQQNPMNJSIHQC
IWSIO23DR44ZS2MBV66XNR2MIDID2KUNBRUTCEQRE4P5OMVZHSNAC
CSPAH4L2TN5OJPO5VXUUBKKBUQLSEZITRDTYA3YLZQE35KUN7PYAC
Q3BFKMS4YCHJ66QGNXGPCBEL5HOL5VXNJNR7MZEY4TPO2XH2C4KAC
KZZ5LJHBHFEDJPJEFFXY6LHABTMPE3LUO2VCH2I4VRGLE2QYRR5QC
KSU7NI4ZRW6YORQTAUVG3YSBSDM55RF6SG2SMOTW7SNAQFEHFVBQC
layers[LyrDragIcon] = wlr_scene_tree_create(&scene->tree);
/* First remove from the layout the disabled monitors */
wl_list_for_each(m, &mons, link) {
if (m->wlr_output->enabled)
continue;
config_head = wlr_output_configuration_head_v1_create(config, m->wlr_output);
config_head->state.enabled = 0;
/* Remove this output from the layout to avoid cursor enter inside it */
wlr_output_layout_remove(output_layout, m->wlr_output);
closemon(m);
memset(&m->m, 0, sizeof(m->m));
memset(&m->w, 0, sizeof(m->w));
}
/* Insert outputs that need to */
wl_list_for_each(m, &mons, link)
if (m->wlr_output->enabled
&& !wlr_output_layout_get(output_layout, m->wlr_output))
wlr_output_layout_add_auto(output_layout, m->wlr_output);
/* Now that we update the output layout we can get its box */
/* First remove from the layout the disabled monitors */
wl_list_for_each(m, &mons, link) {
if (m->wlr_output->enabled)
continue;
config_head = wlr_output_configuration_head_v1_create(config, m->wlr_output);
config_head->state.enabled = 0;
/* Remove this output from the layout to avoid cursor enter inside it */
wlr_output_layout_remove(output_layout, m->wlr_output);
closemon(m);
memset(&m->m, 0, sizeof(m->m));
memset(&m->w, 0, sizeof(m->w));
}
/* Insert outputs that need to */
wl_list_for_each(m, &mons, link)
if (m->wlr_output->enabled
&& !wlr_output_layout_get(output_layout, m->wlr_output))
wlr_output_layout_add_auto(output_layout, m->wlr_output);
/* Now that we update the output layout we can get its box */
if (client_is_unmanaged(c)) {
if (c == exclusive_focus)
exclusive_focus = NULL;
if (client_surface(c) == seat->keyboard_state.focused_surface)
focusclient(selclient(), 1);
} else {
wl_list_remove(&c->link);
setmon(c, NULL, 0);
wl_list_remove(&c->flink);
}
wl_list_remove(&c->commit.link);
/* Ideally we should do this in createnotify{,x11} but at that moment
* wlr_xwayland_surface doesn't have wlr_surface yet
*/
LISTEN(&client_surface(c)->events.commit, &c->commit, commitnotify);
}