fix(popup): forcer redraw GTK3 des sliders après réalisation
GTK3 bug : quand set_value() est appelé avant que le widget soit réalisé et que la valeur = max (100%), le nœud CSS 'highlight' calcule sa largeur à 0. Fix : re-appliquer les valeurs via idle_add après show_all() pour déclencher un recalcul correct.
This commit is contained in:
@@ -331,8 +331,20 @@ class MediaPopup(Gtk.Window):
|
|||||||
self.destroy() if e.keyval == Gdk.KEY_Escape else None)
|
self.destroy() if e.keyval == Gdk.KEY_Escape else None)
|
||||||
self.connect('focus-out-event', lambda *_: self.destroy())
|
self.connect('focus-out-event', lambda *_: self.destroy())
|
||||||
self.show_all()
|
self.show_all()
|
||||||
|
# GTK3 bug : set_value() avant réalisation → highlight width=0 à max
|
||||||
|
# Forcer un re-calcul après que les widgets sont visibles
|
||||||
|
GLib.idle_add(self._redraw_scales)
|
||||||
self.grab_focus()
|
self.grab_focus()
|
||||||
|
|
||||||
|
def _redraw_scales(self):
|
||||||
|
"""Force GTK3 à recalculer les positions highlight après réalisation."""
|
||||||
|
self._blk = True
|
||||||
|
self.sink_scale.set_value(self.sink_scale.get_value())
|
||||||
|
self.src_scale.set_value(self.src_scale.get_value())
|
||||||
|
self.bright_scale.set_value(self.bright_scale.get_value())
|
||||||
|
self._blk = False
|
||||||
|
return False
|
||||||
|
|
||||||
# ── Builders UI ───────────────────────────────────────────────────────────
|
# ── Builders UI ───────────────────────────────────────────────────────────
|
||||||
|
|
||||||
def _section_header(self, label, icon):
|
def _section_header(self, label, icon):
|
||||||
|
|||||||
Reference in New Issue
Block a user