yambar/bar/backend.h
Aivars Vaivods 6212f98dd3 Fixed bar not reappearing after being fully hidden
Somewhere between versions 0.16 and 0.18 wlroots implemented rendering
code optimizations. One of optimizations was to not call frame callback
for invisible surfaces. This caused bar to not reappear, if it was fully
hidden behind non-transparent window.
2025-07-11 22:49:28 +03:00

17 lines
592 B
C

#pragma once
#include <stdbool.h>
#include "bar.h"
struct backend {
bool (*setup)(struct bar *bar);
void (*cleanup)(struct bar *bar);
void (*loop)(struct bar *bar, void (*expose)(const struct bar *bar),
void (*on_mouse)(struct bar *bar, enum mouse_event event, enum mouse_button btn, int x, int y));
void (*commit)(const struct bar *bar);
void (*refresh)(const struct bar *bar);
void (*update_visibility)(const struct bar *bar);
void (*set_cursor)(struct bar *bar, const char *cursor);
const char *(*output_name)(const struct bar *bar);
};