Esempio n. 1
0
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 });
}
Esempio n. 2
0
/** 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;
}