aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/comet.c20
-rw-r--r--src/state.c1
2 files changed, 9 insertions, 12 deletions
diff --git a/src/comet.c b/src/comet.c
index 737e0f3..ece7c89 100644
--- a/src/comet.c
+++ b/src/comet.c
@@ -47,8 +47,7 @@ static gboolean disk_update(gpointer data)
size_t len1 = g_utf8_strlen(btn->text, -1);
- g_free(btn->text);
- btn->text = g_strdup_printf(" %d%%", (int)round(used * 100.0));
+ button_simple_set_text((gpointer)btn, g_strdup_printf(" %d%%", (int)round(used * 100.0)), btn->text_color);
size_t len2 = g_utf8_strlen(btn->text, -1);
@@ -71,8 +70,7 @@ static gboolean temp_update(gpointer data)
size_t len1 = g_utf8_strlen(btn->text, -1);
- g_free(btn->text);
- btn->text = g_strdup_printf(" %d °C", (int)(value / 1000));
+ button_simple_set_text((gpointer)btn, g_strdup_printf(" %d °C", (int)(value / 1000)), btn->text_color);
size_t len2 = g_utf8_strlen(btn->text, -1);
@@ -117,8 +115,7 @@ static gboolean cpu_update(gpointer data)
if (perc != NULL) {
size_t len1 = g_utf8_strlen(btn->text, -1);
- g_free(btn->text);
- btn->text = perc;
+ button_simple_set_text((gpointer)btn, perc, btn->text_color);
size_t len2 = g_utf8_strlen(btn->text, -1);
state_redraw(btn->action_data, len1 != len2);
@@ -146,9 +143,9 @@ static gboolean ram_update(gpointer data)
fclose(meminfo);
size_t len1 = g_utf8_strlen(btn->text, -1);
+ int usage = 100 * (total - unused - buffers - cached) / total;
+ button_simple_set_text((gpointer)btn, g_strdup_printf(" %d%%", usage), btn->text_color);
- g_free(btn->text);
- btn->text = g_strdup_printf(" %d%%", (int)(100 * (total - unused - buffers - cached) / total));
size_t len2 = g_utf8_strlen(btn->text, -1);
@@ -161,14 +158,13 @@ static gboolean date_update(gpointer data)
{
ButtonSimple *btn = data;
- size_t len1 = g_utf8_strlen(btn->text, -1);
- g_free(btn->text);
-
GDateTime *time = g_date_time_new_now_local();
char *date = g_date_time_format(time, "%A %d %H:%M");
g_assert(date != NULL);
- btn->text = date;
+ size_t len1 = g_utf8_strlen(btn->text, -1);
+
+ button_simple_set_text((gpointer)btn, date, btn->text_color);
size_t len2 = g_utf8_strlen(btn->text, -1);
struct {
diff --git a/src/state.c b/src/state.c
index 11ecd77..893976a 100644
--- a/src/state.c
+++ b/src/state.c
@@ -16,6 +16,7 @@ State *state_create(Window *win, Drawable *draw)
void state_add_button(State *state, Button *btn)
{
+ // insert sorted
state->btns = g_list_append(state->btns, btn);
}