--- ./panel-plugin/netload.c.orig 2005-10-09 12:08:01.000000000 +0300 +++ ./panel-plugin/netload.c 2009-05-23 20:50:22.000000000 +0300 @@ -30,8 +30,6 @@ #include -static GtkTooltips *tooltips = NULL; - #define BORDER 8 /* Defaults */ @@ -219,7 +217,7 @@ "Incoming: %s kByte/s\nOutgoing: %s kByte/s\nTotal: %s kByte/s"), get_name(&(global->monitor->data)), ip ? ip : _("no IP address"), HISTSIZE_CALCULATE, buffer[IN], buffer[OUT], buffer[TOT]); - gtk_tooltips_set_tip(tooltips, GTK_WIDGET(global->ebox), caption, NULL); + gtk_widget_set_tooltip_text(GTK_WIDGET(global->ebox), caption); } return TRUE; @@ -237,6 +235,14 @@ if (global->monitor->options.update_interval > 0) { +#if GLIB_CHECK_VERSION( 2,14,0 ) + if (global->monitor->options.update_interval % 1000 == 0) + { + global->timeout_id = g_timeout_add_seconds(global->monitor-> + options.update_interval / 1000, (GtkFunction)update_monitors, global); + } + else +#endif global->timeout_id = g_timeout_add( global->monitor->options.update_interval, (GtkFunction)update_monitors, global); } @@ -368,11 +374,6 @@ global->plugin = plugin; xfce_panel_plugin_add_action_widget (plugin, global->ebox); - if (!tooltips) - { - tooltips = gtk_tooltips_new(); - } - global->monitor = g_new(t_monitor, 1); global->monitor->options.label_text = g_strdup(DEFAULT_TEXT); global->monitor->options.network_device = g_strdup(""); @@ -819,6 +820,10 @@ GtkWidget *sep1, *sep2; GtkBox *update_hbox; GtkWidget *update_label, *update_unit_label; +#if GLIB_CHECK_VERSION( 2,14,0 ) + GtkBox *update_hint_hbox; + GtkWidget *update_hint_label; +#endif GtkWidget *color_label[SUM]; GtkWidget *align; GtkBox *color_hbox[SUM]; @@ -935,7 +940,7 @@ gtk_misc_set_alignment(GTK_MISC(update_label), 0, 0.5); gtk_box_pack_start(GTK_BOX(update_hbox), GTK_WIDGET(update_label), FALSE, FALSE, 0); - global->monitor->update_spinner = gtk_spin_button_new_with_range (0.1, 10.0, 0.05); + global->monitor->update_spinner = gtk_spin_button_new_with_range (1.0, 10.0, 0.25); gtk_spin_button_set_digits( GTK_SPIN_BUTTON(global->monitor->update_spinner), 2 ); gtk_spin_button_set_value( GTK_SPIN_BUTTON(global->monitor->update_spinner), global->monitor->options.update_interval / 1000.0 ); @@ -948,6 +953,18 @@ gtk_widget_show_all(GTK_WIDGET(update_hbox)); gtk_size_group_add_widget(sg, update_label); + +#if GLIB_CHECK_VERSION( 2,14,0 ) + /* Update interval hint */ + update_hint_hbox = GTK_BOX(gtk_hbox_new(FALSE, 5)); + update_hint_label = gtk_label_new(_("Note: Whole seconds are more power-efficient")); + gtk_label_set_line_wrap(GTK_LABEL(update_hint_label), TRUE); + gtk_box_pack_start(GTK_BOX(update_hint_hbox), GTK_WIDGET(update_hint_label), + FALSE, FALSE, 0); + gtk_box_pack_start(GTK_BOX(global->monitor->opt_vbox), + GTK_WIDGET(update_hint_hbox), FALSE, FALSE, 0); + gtk_widget_show_all(GTK_WIDGET(update_hint_hbox)); +#endif sep1 = gtk_hseparator_new();