2016-11-02 15:22:45 -04:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <X11/Xlib-xcb.h>
|
|
|
|
#include <xcb/xcb_util.h>
|
|
|
|
|
|
|
|
#include "common.hpp"
|
2016-12-03 10:44:08 -05:00
|
|
|
#include "utils/memory.hpp"
|
2016-11-26 00:13:20 -05:00
|
|
|
#include "x11/randr.hpp"
|
2016-11-02 15:22:45 -04:00
|
|
|
|
2016-11-19 00:22:44 -05:00
|
|
|
POLYBAR_NS
|
2016-11-02 15:22:45 -04:00
|
|
|
|
2016-11-04 13:54:33 -04:00
|
|
|
class connection;
|
2016-11-26 00:13:20 -05:00
|
|
|
class config;
|
2016-11-04 13:54:33 -04:00
|
|
|
|
2016-11-02 15:22:45 -04:00
|
|
|
namespace xutils {
|
2016-12-19 23:05:43 -05:00
|
|
|
struct xcb_connection_deleter {
|
|
|
|
void operator()(xcb_connection_t* c) {
|
|
|
|
xcb_disconnect(c);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2016-12-14 09:09:11 -05:00
|
|
|
shared_ptr<xcb_connection_t> get_connection();
|
2016-12-03 10:44:08 -05:00
|
|
|
int get_connection_fd();
|
2016-11-02 15:22:45 -04:00
|
|
|
|
|
|
|
void pack_values(uint32_t mask, const uint32_t* src, uint32_t* dest);
|
|
|
|
void pack_values(uint32_t mask, const xcb_params_cw_t* src, uint32_t* dest);
|
|
|
|
void pack_values(uint32_t mask, const xcb_params_gc_t* src, uint32_t* dest);
|
|
|
|
void pack_values(uint32_t mask, const xcb_params_configure_window_t* src, uint32_t* dest);
|
2016-11-04 13:54:33 -04:00
|
|
|
|
|
|
|
void visibility_notify(connection& conn, const xcb_window_t& win, xcb_visibility_t state);
|
2016-11-24 17:57:25 -05:00
|
|
|
|
|
|
|
void compton_shadow_exclude(connection& conn, const xcb_window_t& win);
|
2016-11-02 15:22:45 -04:00
|
|
|
}
|
|
|
|
|
2016-11-19 00:22:44 -05:00
|
|
|
POLYBAR_NS_END
|