初步完成动画

This commit is contained in:
DreamMaoMao 2025-11-04 11:31:04 +08:00
parent 70eb70ef0d
commit a6571c07e3
5 changed files with 81 additions and 11 deletions

View file

@ -231,6 +231,9 @@ struct dwl_animation {
bool tagouting;
bool begin_fade_in;
bool tag_from_rule;
unsigned int time_started;
int frame_duration;
struct wl_event_source *timer;
unsigned int total_frames;
unsigned int passed_frames;
unsigned int duration;
@ -705,6 +708,8 @@ static void refresh_monitors_workspaces_status(Monitor *m);
static void init_client_properties(Client *c);
static float *get_border_color(Client *c);
static void request_fresh_all_monitors(void);
static int get_fastest_output_refresh_ms(void);
static void destroy_animation_timer(Client *c);
#include "data/static_keymap.h"
#include "dispatch/bind_declare.h"
@ -5188,6 +5193,8 @@ void unmapnotify(struct wl_listener *listener, void *data) {
Monitor *m = NULL;
c->iskilling = 1;
destroy_animation_timer(c);
if (animations && !c->is_clip_to_hide && !c->isminied &&
(!c->mon || VISIBLEON(c, c->mon)))
init_fadeout_client(c);