by roundabout, Saturday, 27 December 2025, 20:50:12 (1766868612), pushed by roundabout, Saturday, 27 December 2025, 20:50:16 (1766868616)
Author identity: Vlad <vlad.muntoiu@gmail.com>
52c2dbebe25273958dc5cf8d7120f3e5398b0052
applets/wf-window-list/__init__.py
@@ -537,20 +537,25 @@ class WFWindowList(panorama_panel.Applet):
self.remove(button)
# Find the position where to insert the applet
# Probably we could use the assumption that buttons are homogeneous here for efficiency
print(f"drop received at {x}")
child = self.get_first_child()
while child:
allocation = child.get_allocation()
child_x, child_y = self.translate_coordinates(self, 0, 0)
if self.get_orientation() == Gtk.Orientation.HORIZONTAL:
midpoint = child_x + allocation.width / 2
if x < midpoint:
button.insert_before(self, child)
break
elif self.get_orientation() == Gtk.Orientation.VERTICAL:
midpoint = child_y + allocation.height / 2
if y < midpoint:
button.insert_before(self, child)
break
if isinstance(child, WindowButton):
allocation = child.get_allocation()
child_x, child_y = child.translate_coordinates(self, 0, 0)
print(child_x, child_y)
if self.get_orientation() == Gtk.Orientation.HORIZONTAL:
midpoint = child_x + allocation.width / 2
print(midpoint)
if x < midpoint:
print("chosen")
button.insert_before(self, child)
break
elif self.get_orientation() == Gtk.Orientation.VERTICAL:
midpoint = child_y + allocation.height / 2
if y < midpoint:
button.insert_before(self, child)
break
child = child.get_next_sibling()
else:
self.append(button)
main.py
@@ -379,7 +379,7 @@ class AppletArea(Gtk.Box):
child = self.get_first_child()
while child:
allocation = child.get_allocation()
child_x, child_y = self.translate_coordinates(self, 0, 0)
child_x, child_y = child.translate_coordinates(self, 0, 0)
if self.get_orientation() == Gtk.Orientation.HORIZONTAL:
midpoint = child_x + allocation.width / 2
if x < midpoint: