aboutsummaryrefslogtreecommitdiff
path: root/src/button.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/button.c')
-rw-r--r--src/button.c31
1 files changed, 3 insertions, 28 deletions
diff --git a/src/button.c b/src/button.c
index b313f8a..9a7df67 100644
--- a/src/button.c
+++ b/src/button.c
@@ -66,38 +66,13 @@ void button_set_padding(Button *btn, int padding)
bool button_set_animation(Button *btn, Animation *anim)
{
- if (btn->anim) return false;
+ if (btn->anim != NULL)
+ return false;
+
btn->anim = anim;
return true;
}
-// Wrapper for animation sources
-static gboolean anim_handler(gpointer data)
-{
- Button *btn = data;
- if (btn->anim->handler(btn->anim))
- return G_SOURCE_CONTINUE;
-
- g_free(btn->anim);
- btn->anim = NULL;
- return G_SOURCE_REMOVE;
-}
-
-void button_start_animation(Button *btn)
-{
- // Maybe error out
- if (btn->anim == NULL) {
- log_warning("Button animation was not set");
- return;
- }
-
- const int fps = 60;
- if (btn->anim->handler(btn->anim))
- g_timeout_add(1000 / 60, anim_handler, btn);
-
- log_debug("Started animation [type=%d, button=%p]", btn->anim->type, btn);
-}
-
void button_destroy(Button *btn)
{
if (btn->simple) g_free(CAST(btn, ButtonSimple)->text);