updated layout in hub
This commit is contained in:
1
app/icons/bip110.svg
Normal file
1
app/icons/bip110.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><circle cx="32" cy="32" r="30" fill="#1E3A5F"/><text x="32" y="28" font-family="sans-serif" font-size="12" font-weight="bold" fill="#F7931A" text-anchor="middle">BIP</text><text x="32" y="46" font-family="sans-serif" font-size="18" font-weight="bold" fill="white" text-anchor="middle">110</text></svg>
|
||||
|
After Width: | Height: | Size: 362 B |
1
app/icons/bitcoin-core.svg
Normal file
1
app/icons/bitcoin-core.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><circle cx="32" cy="32" r="30" fill="#F7931A"/><circle cx="32" cy="32" r="22" fill="none" stroke="white" stroke-width="2"/><text x="32" y="44" font-family="sans-serif" font-size="30" font-weight="bold" fill="white" text-anchor="middle">₿</text></svg>
|
||||
|
After Width: | Height: | Size: 313 B |
@@ -22,7 +22,8 @@ Adw.init()
|
||||
# Category display order and labels
|
||||
CATEGORY_ORDER = [
|
||||
("infrastructure", "Infrastructure"),
|
||||
("bitcoin", "Bitcoin"),
|
||||
("bitcoin-base", "Bitcoin Base"),
|
||||
("bitcoin-apps", "Bitcoin Apps"),
|
||||
("communication", "Communication"),
|
||||
("apps", "Self-Hosted Apps"),
|
||||
("nostr", "Nostr"),
|
||||
@@ -57,17 +58,7 @@ class SovranHubWindow(Adw.ApplicationWindow):
|
||||
)
|
||||
|
||||
header = Adw.HeaderBar()
|
||||
|
||||
# Show active role in header
|
||||
role = config.get("role", "server_plus_desktop")
|
||||
role_label = ROLE_LABELS.get(role, role)
|
||||
role_tag = Gtk.Label(
|
||||
label=role_label,
|
||||
css_classes=["caption", "role-badge"],
|
||||
)
|
||||
header.set_title_widget(
|
||||
self._build_title_box(role_label)
|
||||
)
|
||||
header.set_title_widget(self._build_title_box())
|
||||
|
||||
refresh_btn = Gtk.Button(
|
||||
icon_name="view-refresh-symbolic",
|
||||
@@ -76,7 +67,6 @@ class SovranHubWindow(Adw.ApplicationWindow):
|
||||
refresh_btn.connect("clicked", lambda _b: self._refresh_all())
|
||||
header.pack_end(refresh_btn)
|
||||
|
||||
# Main vertical layout
|
||||
self._main_box = Gtk.Box(
|
||||
orientation=Gtk.Orientation.VERTICAL,
|
||||
spacing=0,
|
||||
@@ -100,7 +90,9 @@ class SovranHubWindow(Adw.ApplicationWindow):
|
||||
if interval and interval > 0:
|
||||
GLib.timeout_add_seconds(interval, self._auto_refresh)
|
||||
|
||||
def _build_title_box(self, role_label):
|
||||
def _build_title_box(self):
|
||||
role = self._config.get("role", "server_plus_desktop")
|
||||
role_label = ROLE_LABELS.get(role, role)
|
||||
box = Gtk.Box(
|
||||
orientation=Gtk.Orientation.VERTICAL,
|
||||
halign=Gtk.Align.CENTER,
|
||||
@@ -141,7 +133,6 @@ class SovranHubWindow(Adw.ApplicationWindow):
|
||||
)
|
||||
self._main_box.append(section_label)
|
||||
|
||||
# Separator
|
||||
sep = Gtk.Separator(
|
||||
orientation=Gtk.Orientation.HORIZONTAL,
|
||||
margin_start=24,
|
||||
@@ -150,7 +141,6 @@ class SovranHubWindow(Adw.ApplicationWindow):
|
||||
)
|
||||
self._main_box.append(sep)
|
||||
|
||||
# FlowBox for this category
|
||||
flowbox = Gtk.FlowBox(
|
||||
max_children_per_line=4,
|
||||
min_children_per_line=2,
|
||||
@@ -180,7 +170,6 @@ class SovranHubWindow(Adw.ApplicationWindow):
|
||||
|
||||
self._main_box.append(flowbox)
|
||||
|
||||
# Defer first status poll so the window renders immediately
|
||||
GLib.idle_add(self._refresh_all)
|
||||
|
||||
def _refresh_all(self):
|
||||
|
||||
Reference in New Issue
Block a user