opt: optimize fade in animaiton
This commit is contained in:
@@ -1083,15 +1083,16 @@ bool client_apply_focus_opacity(Client *c) {
|
|||||||
client_set_opacity(c, 1);
|
client_set_opacity(c, 1);
|
||||||
} else if (c->animation.running && c->animation.action == OPEN) {
|
} else if (c->animation.running && c->animation.action == OPEN) {
|
||||||
c->opacity_animation.running = false;
|
c->opacity_animation.running = false;
|
||||||
float percent =
|
float linear_progress =
|
||||||
animation_fade_in && !c->nofadein
|
(float)c->animation.passed_frames / c->animation.total_frames;
|
||||||
? (double)c->animation.passed_frames / c->animation.total_frames
|
|
||||||
: 1.0;
|
|
||||||
float opacity = c->isfullscreen ? 1
|
|
||||||
: c == selmon->sel ? c->focused_opacity
|
|
||||||
: c->unfocused_opacity;
|
|
||||||
|
|
||||||
float target_opacity = percent + fadein_begin_opacity;
|
float percent =
|
||||||
|
animation_fade_in && !c->nofadein ? linear_progress : 1.0;
|
||||||
|
float opacity =
|
||||||
|
c == selmon->sel ? c->focused_opacity : c->unfocused_opacity;
|
||||||
|
|
||||||
|
float target_opacity =
|
||||||
|
percent * (1.0 - fadein_begin_opacity) + fadein_begin_opacity;
|
||||||
if (target_opacity > opacity) {
|
if (target_opacity > opacity) {
|
||||||
target_opacity = opacity;
|
target_opacity = opacity;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user