Changed tooltip for services

pull/90/head
parent 258a4be06d
commit 564b63d508

@ -1487,7 +1487,6 @@ gboolean on_tooltip_show(GtkWidget*, gint x, gint y, gboolean, GtkTooltip* toolt
GtkTreeIter iter;
if (gtk_tree_model_get_iter(model, &iter, path)) {
gchar *name, *description, *state, *name_target;
gint64 activa, deactiva;
int size;
gtk_tree_model_get(model, &iter, 5, &name, 6, &description, 11, &state, -1);
name_target = yon_char_new(name);
@ -1503,8 +1502,6 @@ gboolean on_tooltip_show(GtkWidget*, gint x, gint y, gboolean, GtkTooltip* toolt
yon_char_remove_last_symbol(target[1], '\n');
free(yon_char_divide_search(target[2], "=", -1));
yon_char_remove_last_symbol(target[2], '\n');
activa = g_ascii_strtoll(target[1], NULL, 10);
deactiva = g_ascii_strtoll(target[1], NULL, 10);
gtk_label_set_text(GTK_LABEL(widgets->UnitLabel), target[0]);
}
gtk_label_set_text(GTK_LABEL(widgets->NameLabel), name);
@ -1516,21 +1513,35 @@ gboolean on_tooltip_show(GtkWidget*, gint x, gint y, gboolean, GtkTooltip* toolt
free(state);
if (target){
gchar *formatted_activa = NULL;
gchar *formatted_deactiva = NULL;
if (activa) {
GDateTime *datetime = g_date_time_new_from_unix_local(activa);
formatted_activa = g_date_time_format(datetime, "%d:%m:%Y %T");
g_date_time_unref(datetime);
} else {
formatted_activa = g_strdup(NULL_LABEL);
}
if (deactiva) {
GDateTime *datetime = g_date_time_new_from_unix_local(deactiva);
formatted_deactiva = g_date_time_format(datetime, "%d:%m:%Y %T");
g_date_time_unref(datetime);
} else {
formatted_deactiva = g_strdup(NULL_LABEL);
gchar *formatted_activa = g_strdup(NULL_LABEL);//!yon_char_is_empty(target[1])&&strcmp(target[1],"0")?target[1]:g_strdup(NULL_LABEL);
gchar *formatted_deactiva = g_strdup(NULL_LABEL);//!yon_char_is_empty(target[2])&&strcmp(target[2],"0")?target[2]:g_strdup(NULL_LABEL);
if (strcmp(target[1],"0")){
int activated_size;
config_str activated_parsed = yon_char_parse(target[1],&activated_size," ");
int date_size;
config_str date_parsed = yon_char_parse(activated_parsed[1],&date_size,"-");
if (date_size>2){
char *temp = date_parsed[0];
date_parsed[0]=date_parsed[2];
date_parsed[2]=temp;
formatted_deactiva = yon_char_unite(date_parsed?yon_char_parsed_to_string(date_parsed,date_size,"."):""," ",activated_parsed[2],NULL);
if (date_size) yon_char_parsed_free(date_parsed,date_size);
}
if (activated_size) yon_char_parsed_free(activated_parsed,activated_size);
}
if (strcmp(target[2],"0")){
int deactivated_size;
config_str deactivated_parsed = yon_char_parse(target[2],&deactivated_size," ");
int date_size;
config_str date_parsed = yon_char_parse(deactivated_parsed[1],&date_size,"-");
if (date_size>=2){
char *temp = date_parsed[0];
date_parsed[0]=date_parsed[2];
date_parsed[2]=temp;
formatted_deactiva = yon_char_unite(date_parsed?yon_char_parsed_to_string(date_parsed,date_size,"."):""," ",deactivated_parsed[2],NULL);
if (date_size) yon_char_parsed_free(date_parsed,date_size);
}
if (deactivated_size) yon_char_parsed_free(deactivated_parsed,deactivated_size);
}
gtk_label_set_text(GTK_LABEL(widgets->ActivateLabel), formatted_activa);

@ -77,7 +77,7 @@
#define list_of_sockets_command "systemctl list-sockets --all --no-pager| sed -e 's/ */;/g'"
#define list_of_timers_command "systemctl list-timers --all --no-pager| sed -e 's/ */;/g'"
#define list_of_session_command "while IFS=\" \" read -r GET_SESSION GET_UID GET_USER GET_SEAT GET_TTY; do echo -e \"${GET_SESSION} $(loginctl session-status ${GET_SESSION} --no-page | sed -Enr \"s/^\\s*State: (.*)$/\1/p\") ${GET_UID} ${GET_USER} ${GET_SEAT} ${GET_TTY}\"; done < <(loginctl list-sessions --no-legend)"
#define get_activate_deactivate_times(target) yon_char_append("systemctl show -p ActiveEnterTimestampMonotonic -p InactiveEnterTimestampMonotonic -p Names ",target)
#define get_activate_deactivate_times(target) yon_char_append("systemctl show --timestamp=utc -p Names -p ActiveEnterTimestamp -p InactiveEnterTimestampMonotonic ",target)
#define config_get_command(target) yon_char_append("cat ",target)

@ -15,15 +15,19 @@
</object>
<object class="GtkListStore" id="SessionsList">
<columns>
<!-- column-name gint2 -->
<!-- column-name Id -->
<column type="gint"/>
<!-- column-name gchararray2 -->
<!-- column-name Status -->
<column type="gchararray"/>
<!-- column-name gint1 -->
<!-- column-name User Id -->
<column type="gint"/>
<!-- column-name gchararray3 -->
<!-- column-name Username -->
<column type="gchararray"/>
<!-- column-name gchararray4 -->
<!-- column-name RenderId -->
<column type="gchararray"/>
<!-- column-name SeatId -->
<column type="gchararray"/>
<!-- column-name TTY -->
<column type="gchararray"/>
</columns>
</object>
@ -2081,7 +2085,7 @@
<child>
<object class="GtkTreeViewColumn">
<property name="min-width">20</property>
<property name="title" translatable="yes">Seat ID</property>
<property name="title" translatable="yes">Seat ID | TTY</property>
<property name="expand">True</property>
<property name="sort-column-id">4</property>
<child>

Loading…
Cancel
Save