int c_set_skip_tasklist(lua_State *lua) { int top = lua_gettop(lua); if (top != 1) { luaL_error(lua, "set_skip_tasklist: %s", one_indata_expected_error); return 0; } int type = lua_type(lua, 1); if (type != LUA_TBOOLEAN) { luaL_error(lua, "set_skip_tasklist: %s", boolean_expected_as_indata_error); return 0; } int value = lua_toboolean(lua, 1); gboolean skip_tasklist = (gboolean)(value); if (!devilspie2_emulate) { WnckWindow *window = get_current_window(); if (window) { wnck_window_set_skip_tasklist(window, skip_tasklist); } } return 0; }
void window_init(int spaceid, WnckWindow *window) { window_decorate(window, FALSE); if (configuration.tiled_skip_pager) { wnck_window_set_skip_tasklist(window, TRUE); wnck_window_set_skip_pager(window, TRUE); } window_activate(window); g_signal_connect(window, "workspace_changed", (GCallback)workspace_changed_cb, NULL); }
void window_clear(WnckWindow *window) { int signal_id = g_signal_lookup("delete-event", GTK_TYPE_WINDOW); window_decorate(window, TRUE); window_set_state(window, "_NET_WM_STATE_BELOW", FALSE); window_set_state(window, "_NET_WM_STATE_ABOVE", FALSE); if (configuration.tiled_skip_pager) { wnck_window_set_skip_pager(window, FALSE); wnck_window_set_skip_tasklist(window, FALSE); } gulong signal_handler = g_signal_handler_find(window, G_SIGNAL_MATCH_ID, signal_id, 0, NULL, NULL, NULL); if (0 != signal_handler) { g_signal_handler_disconnect(window, signal_handler); } }