polybar/include/utils/restack.hpp

24 lines
724 B
C++

#pragma once
#include <xcb/xcb.h>
#include "x11/connection.hpp"
#include "x11/ewmh.hpp"
POLYBAR_NS
namespace restack_util {
using params = std::pair<xcb_window_t, xcb_stack_mode_t>;
static constexpr params NONE_PARAMS = {XCB_NONE, XCB_STACK_MODE_ABOVE};
void restack_relative(connection& conn, xcb_window_t win, xcb_window_t sibling, xcb_stack_mode_t stack_mode);
string stack_mode_to_string(xcb_stack_mode_t mode);
bool are_siblings(connection& conn, xcb_window_t win, xcb_window_t sibling);
params get_bottom_params(connection& conn, xcb_window_t bar_window);
params get_ewmh_params(connection& conn);
params get_generic_params(connection& conn, xcb_window_t bar_window);
} // namespace restack_util
POLYBAR_NS_END