roundabout,
created on Monday, 21 July 2025, 14:56:11 (1753109771),
received on Saturday, 26 July 2025, 07:40:05 (1753515605)
Author identity: vlad <vlad.muntoiu@gmail.com>
19d829197e8369f894e9d64cce3217e676932d82
applets/clock/__init__.py
@@ -132,3 +132,7 @@ class ClockApplet(panorama_panel.Applet):
def get_config(self): return {"formatting": self.formatting} def set_panel_position(self, position): self.popover.set_position(panorama_panel.OPPOSITE_POSITION[position]) self.button.set_direction(panorama_panel.POSITION_TO_ARROW[panorama_panel.OPPOSITE_POSITION[position]])
main.py
@@ -75,6 +75,7 @@ class PanelConfigurator(Gtk.Frame):
applet = area.get_first_child() while applet: applet.set_orientation(self.panel.get_orientation()) applet.set_panel_position(self.panel.position)applet.queue_resize() applet = applet.get_next_sibling()
@@ -383,6 +384,7 @@ class PanoramaPanel(Gtk.Application):
AppletClass = self.applets_by_name[item[0]] options = item[1] applet_widget = AppletClass(orientation=panel.get_orientation(), config=options) applet_widget.set_panel_position(panel.position)area.append(applet_widget)
shared/panorama_panel.py
@@ -19,3 +19,25 @@ class Applet(Gtk.Box):
def get_config(self): return {} def set_panel_position(self, position: Gtk.PositionType): return def get_panel_position(applet: Applet) -> Gtk.PositionType: return applet.get_root().position OPPOSITE_POSITION = { Gtk.PositionType.TOP: Gtk.PositionType.BOTTOM, Gtk.PositionType.BOTTOM: Gtk.PositionType.TOP, Gtk.PositionType.LEFT: Gtk.PositionType.RIGHT, Gtk.PositionType.RIGHT: Gtk.PositionType.LEFT, } POSITION_TO_ARROW = { Gtk.PositionType.TOP: Gtk.ArrowType.UP, Gtk.PositionType.BOTTOM: Gtk.ArrowType.DOWN, Gtk.PositionType.LEFT: Gtk.ArrowType.LEFT, Gtk.PositionType.RIGHT: Gtk.ArrowType.RIGHT, }