30 lines
1.0 KiB
C++
30 lines
1.0 KiB
C++
#pragma once
|
|
|
|
#include "settings.hpp"
|
|
|
|
#if not WITH_XCURSOR
|
|
#error "Not built with support for xcb-cursor..."
|
|
#endif
|
|
|
|
#include <xcb/xcb_cursor.h>
|
|
|
|
#include "common.hpp"
|
|
#include "utils/string.hpp"
|
|
#include "x11/connection.hpp"
|
|
|
|
POLYBAR_NS
|
|
|
|
namespace cursor_util {
|
|
static const std::map<string, vector<string>> cursors = {
|
|
{"pointer", {"pointing_hand", "pointer", "hand", "hand1", "hand2", "e29285e634086352946a0e7090d73106",
|
|
"9d800788f1b08800ae810202380a0822"}},
|
|
{"default", {"left_ptr", "arrow", "dnd-none", "op_left_arrow"}},
|
|
{"ns-resize", {"size_ver", "sb_v_double_arrow", "v_double_arrow", "n-resize", "s-resize", "col-resize",
|
|
"top_side", "bottom_side", "base_arrow_up", "base_arrow_down", "based_arrow_down",
|
|
"based_arrow_up", "00008160000006810000408080010102"}}};
|
|
bool valid(const string& name);
|
|
bool set_cursor(xcb_connection_t* c, xcb_screen_t* screen, xcb_window_t w, const string& name);
|
|
} // namespace cursor_util
|
|
|
|
POLYBAR_NS_END
|