diff --git a/src/Indicator/Widgets/IndicatorWidgetFrequency.vala b/src/Indicator/Widgets/IndicatorWidgetFrequency.vala index a9b91f135..5aabb5def 100644 --- a/src/Indicator/Widgets/IndicatorWidgetFrequency.vala +++ b/src/Indicator/Widgets/IndicatorWidgetFrequency.vala @@ -11,6 +11,6 @@ public class Monitor.IndicatorWidgetFrequency : Monitor.IndicatorWidget { public override void update_label (Value value) { double frequency = value.get_double (); - label.label = ("%.2f %s").printf (frequency, _("GHz")); + label.label = Utils.Strings.format_frequency (frequency); } } diff --git a/src/Resources/CPU.vala b/src/Resources/CPU.vala index 7b3aae88d..f3fcdb7fb 100644 --- a/src/Resources/CPU.vala +++ b/src/Resources/CPU.vala @@ -44,8 +44,8 @@ public class Monitor.CPU : Object { private double _frequency; public double frequency { get { - // Convert kHz to GHz - return (double) (_frequency / 1000000); + // Convert kHz to MHz + return (double) (_frequency / 1000); } } public double temperature_mean { diff --git a/src/Utils.vala b/src/Utils.vala index 6a8cfe1d0..fc5113394 100644 --- a/src/Utils.vala +++ b/src/Utils.vala @@ -49,6 +49,13 @@ public class Monitor.Utils.Strings { return pretty; } + public static string format_frequency (double mhz) { + if (mhz >= 1000.0) { + return "%.2f %s".printf (mhz / 1000.0, _("GHz")); + } + + return "%.0f %s".printf (mhz, _("MHz")); + } } public class Monitor.Utils.Colors : Object { diff --git a/src/Views/SystemView/SystemCPUView.vala b/src/Views/SystemView/SystemCPUView.vala index e8a4e471d..13aada0a2 100644 --- a/src/Views/SystemView/SystemCPUView.vala +++ b/src/Views/SystemView/SystemCPUView.vala @@ -126,7 +126,7 @@ public class Monitor.SystemCPUView : Monitor.WidgetResource { } main_metric_value = ("%d%%").printf (cpu.percentage); - cpu_frequency_label.text = ("%.2f %s").printf (cpu.frequency, _("GHz")); + cpu_frequency_label.text = Utils.Strings.format_frequency (cpu.frequency); } private Gtk.Grid grid_core_labels () {