blob: c8806df41e6a769ae070a90dc5d310b074d84acb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#pragma once
#include <mglpp/system/vec.hpp>
#include <string>
#include <vector>
#include <X11/Xlib.h>
namespace gsr {
enum class WindowCaptureType {
FOCUSED,
CURSOR
};
struct Monitor {
mgl::vec2i position;
mgl::vec2i size;
};
Window get_focused_window(Display *dpy, WindowCaptureType cap_type);
std::string get_focused_window_name(Display *dpy, WindowCaptureType window_capture_type);
mgl::vec2i get_cursor_position(Display *dpy, Window *window);
mgl::vec2i create_window_get_center_position(Display *display);
std::string get_window_manager_name(Display *display);
bool is_compositor_running(Display *dpy, int screen);
std::vector<Monitor> get_monitors(Display *dpy);
}
|