diff --git a/panels/fan.py b/panels/fan.py index 65c31b2a..f09512ad 100644 --- a/panels/fan.py +++ b/panels/fan.py @@ -57,7 +57,7 @@ class FanPanel(ScreenPanel): self.fan_speed[fan] = round(float(speed) * 100) self.devices[fan]['scale'].disconnect_by_func(self.set_fan_speed) self.devices[fan]['scale'].set_value(self.fan_speed[fan]) - self.devices[fan]['scale'].connect("value-changed", self.set_fan_speed, fan) + self.devices[fan]['scale'].connect("button-release-event", self.set_fan_speed, fan) else: self.fan_speed[fan] = float(speed) self.devices[fan]['scale'].set_fraction(self.fan_speed[fan]) @@ -101,7 +101,7 @@ class FanPanel(ScreenPanel): scale.set_hexpand(True) scale.set_has_origin(True) scale.get_style_context().add_class("fan_slider") - scale.connect("value-changed", self.set_fan_speed, fan) + scale.connect("button-release-event", self.set_fan_speed, fan) else: scale = Gtk.ProgressBar() scale.set_fraction(self.fan_speed[fan]) @@ -147,7 +147,7 @@ class FanPanel(ScreenPanel): continue self.add_fan(fan) - def set_fan_speed(self, widget, fan): + def set_fan_speed(self, widget, event, fan): value = self.devices[fan]['scale'].get_value() if fan == "fan": diff --git a/panels/limits.py b/panels/limits.py index fb5a65b4..656c4177 100644 --- a/panels/limits.py +++ b/panels/limits.py @@ -73,7 +73,7 @@ class LimitsPanel(ScreenPanel): self.values[option] = int(value) self.devices[option]['scale'].disconnect_by_func(self.set_opt_value) self.devices[option]['scale'].set_value(self.values[option]) - self.devices[option]['scale'].connect("value-changed", self.set_opt_value, option) + self.devices[option]['scale'].connect("button-release-event", self.set_opt_value, option) def add_option(self, option, optname, units, value): logging.info("Adding option: %s" % option) @@ -99,7 +99,7 @@ class LimitsPanel(ScreenPanel): scale.set_hexpand(True) scale.set_has_origin(True) scale.get_style_context().add_class("option_slider") - scale.connect("value-changed", self.set_opt_value, option) + scale.connect("button-release-event", self.set_opt_value, option) labels = Gtk.Box(orientation=Gtk.Orientation.VERTICAL) labels.add(name) @@ -123,7 +123,7 @@ class LimitsPanel(ScreenPanel): self.labels['devices'].attach(self.devices[option]['row'], 0, pos, 1, 1) self.labels['devices'].show_all() - def set_opt_value(self, widget, opt): + def set_opt_value(self, widget, event, opt): value = self.devices[opt]['scale'].get_value() if opt == "max_accel": diff --git a/panels/settings.py b/panels/settings.py index d0e330c7..e225c946 100644 --- a/panels/settings.py +++ b/panels/settings.py @@ -162,8 +162,8 @@ class SettingsPanel(ScreenPanel): scale = Gtk.Scale(orientation=Gtk.Orientation.HORIZONTAL, adjustment=adj) scale.set_hexpand(True) scale.set_digits(0) + scale.connect("button-release-event", self.scale_moved, option['section'], opt_name) scale.set_property("width-request", round(self._screen.width/2.2)) - scale.connect("value-changed", self.scale_moved, option['section'], opt_name) dev.add(scale) elif option['type'] == "printer": logging.debug("Option: %s" % option) @@ -230,7 +230,7 @@ class SettingsPanel(ScreenPanel): if callback is not None: callback(value) - def scale_moved(self, widget, section, option): + def scale_moved(self, widget, event, section, option): logging.debug("[%s] %s changed to %s" % (section, option, widget.get_value())) if section not in self._config.get_config().sections(): self._config.get_config().add_section(section)