void window_border_refresh(window_t *window) { if(!window->border_need_update) return; window->border_need_update = false; xwindow_set_border_color(window_get(window), &window->border_color); if(window->window) xcb_configure_window(globalconf.connection, window_get(window), XCB_CONFIG_WINDOW_BORDER_WIDTH, (uint32_t[]) { window->border_width }); }
/** Set the window border color. * \param L The Lua VM state. * \param window The window object. * \return The number of elements pushed on stack. */ static int luaA_window_set_border_color(lua_State *L, window_t *window) { size_t len; const char *color_name = luaL_checklstring(L, -1, &len); if(color_name && color_init_reply(color_init_unchecked(&window->border_color, color_name, len))) { xwindow_set_border_color(window_get(window), &window->border_color); luaA_object_emit_signal(L, -3, "property::border_color", 0); } return 0; }