mirror of
https://codeberg.org/dnkl/yambar.git
synced 2025-07-25 14:49:50 +02:00
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.
17 lines
592 B
C
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);
|
|
};
|