Skip to content

Commit d7b3a68

Browse files
committed
Allow slowing down Animations::Simple globally.
1 parent ba27a01 commit d7b3a68

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

ui/effects/animation_value.cpp

+11
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ namespace anim {
1414
namespace {
1515

1616
rpl::variable<bool> AnimationsDisabled = false;
17+
int SlowMultiplierMinusOne/* = 0*/;
1718

1819
} // namespace
1920

@@ -76,6 +77,16 @@ void SetDisabled(bool disabled) {
7677
AnimationsDisabled = disabled;
7778
}
7879

80+
int SlowMultiplier() {
81+
return (SlowMultiplierMinusOne + 1);
82+
}
83+
84+
void SetSlowMultiplier(int multiplier) {
85+
Expects(multiplier > 0);
86+
87+
SlowMultiplierMinusOne = multiplier - 1;
88+
}
89+
7990
void DrawStaticLoading(
8091
QPainter &p,
8192
QRectF rect,

ui/effects/animation_value.h

+2
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,8 @@ QPainterPath path(QPointF (&from)[N]) {
351351
rpl::producer<bool> Disables();
352352
bool Disabled();
353353
void SetDisabled(bool disabled);
354+
int SlowMultiplier();
355+
void SetSlowMultiplier(int multiplier); // 1 - default, 10 - slow x10.
354356

355357
void DrawStaticLoading(
356358
QPainter &p,

ui/effects/animations.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -410,7 +410,7 @@ inline void Simple::startPrepared(
410410
anim::transition transition) {
411411
_data->from = _data->value;
412412
_data->delta = to - _data->from;
413-
_data->duration = duration;
413+
_data->duration = duration * anim::SlowMultiplier();
414414
_data->transition = transition;
415415
_data->animation.start();
416416
}

0 commit comments

Comments
 (0)