[gnome-music/wip/cdavis/hdywindow-hdyviewswitcher: 2/5] Use HdyViewSwitcher
- From: Jean Felder <jfelder src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-music/wip/cdavis/hdywindow-hdyviewswitcher: 2/5] Use HdyViewSwitcher
- Date: Sat, 22 May 2021 14:53:21 +0000 (UTC)
commit efc5c7207342680cd465ed0072939cb70b3221c3
Author: Christopher Davis <brainblasted disroot org>
Date: Wed Feb 3 23:04:36 2021 -0800
Use HdyViewSwitcher
Apps are now moving to use HdyViewSwitcher instead of
GtkStackSwitcher for their main navigation.
gnome-music.in | 4 +++-
gnomemusic/views/albumsview.py | 3 +++
gnomemusic/views/artistsview.py | 3 +++
gnomemusic/views/playlistsview.py | 3 +++
gnomemusic/views/songsview.py | 3 +++
gnomemusic/widgets/headerbar.py | 4 ++--
gnomemusic/window.py | 2 ++
meson.build | 1 +
8 files changed, 20 insertions(+), 3 deletions(-)
---
diff --git a/gnome-music.in b/gnome-music.in
index 7b93e60a3..ca1a3ddac 100755
--- a/gnome-music.in
+++ b/gnome-music.in
@@ -43,9 +43,11 @@ import gi
gi.require_version('Gtk', '3.0')
gi.require_version('GIRepository', '2.0')
gi.require_version('Gst', '1.0')
-from gi.repository import GIRepository, Gio, Gtk, Gst
+gi.require_version("Handy", "1")
+from gi.repository import GIRepository, Gio, Gtk, Gst, Handy
Gst.init(None)
+Handy.init()
LOCALE_DIR = '@localedir@'
PKGDATA_DIR = '@pkgdatadir@'
diff --git a/gnomemusic/views/albumsview.py b/gnomemusic/views/albumsview.py
index 0b2f0ab8a..533e35947 100644
--- a/gnomemusic/views/albumsview.py
+++ b/gnomemusic/views/albumsview.py
@@ -41,6 +41,9 @@ class AlbumsView(Gtk.Stack):
__gtype_name__ = "AlbumsView"
+ icon_name = GObject.Property(
+ type=str, default="media-optical-cd-audio-symbolic",
+ flags=GObject.ParamFlags.READABLE)
search_mode_active = GObject.Property(type=bool, default=False)
selection_mode = GObject.Property(type=bool, default=False)
title = GObject.Property(
diff --git a/gnomemusic/views/artistsview.py b/gnomemusic/views/artistsview.py
index 7666b6ce2..c32069397 100644
--- a/gnomemusic/views/artistsview.py
+++ b/gnomemusic/views/artistsview.py
@@ -39,6 +39,9 @@ class ArtistsView(Gtk.Box):
__gtype_name__ = "ArtistsView"
+ icon_name = GObject.Property(
+ type=str, default="system-users-symbolic",
+ flags=GObject.ParamFlags.READABLE)
title = GObject.Property(
type=str, default=_("Artists"), flags=GObject.ParamFlags.READABLE)
diff --git a/gnomemusic/views/playlistsview.py b/gnomemusic/views/playlistsview.py
index 9f4bde820..a6db6e964 100644
--- a/gnomemusic/views/playlistsview.py
+++ b/gnomemusic/views/playlistsview.py
@@ -37,6 +37,9 @@ class PlaylistsView(Gtk.Box):
__gtype_name__ = "PlaylistsView"
+ icon_name = GObject.Property(
+ type=str, default="view-list-symbolic",
+ flags=GObject.ParamFlags.READABLE)
title = GObject.Property(
type=str, default=_("Playlists"), flags=GObject.ParamFlags.READABLE)
diff --git a/gnomemusic/views/songsview.py b/gnomemusic/views/songsview.py
index d347d5dce..ee7752ee4 100644
--- a/gnomemusic/views/songsview.py
+++ b/gnomemusic/views/songsview.py
@@ -40,6 +40,9 @@ class SongsView(Gtk.ScrolledWindow):
__gtype_name__ = "SongsView"
+ icon_name = GObject.Property(
+ type=str, default="emblem-music-symbolic",
+ flags=GObject.ParamFlags.READABLE)
title = GObject.Property(
type=str, default=_("Songs"), flags=GObject.ParamFlags.READABLE)
diff --git a/gnomemusic/widgets/headerbar.py b/gnomemusic/widgets/headerbar.py
index ee1639637..37b98eeda 100644
--- a/gnomemusic/widgets/headerbar.py
+++ b/gnomemusic/widgets/headerbar.py
@@ -25,7 +25,7 @@
from enum import IntEnum
from gettext import gettext as _, ngettext
-from gi.repository import GObject, Gtk
+from gi.repository import GObject, Gtk, Handy
from gnomemusic.widgets.appmenu import AppMenu
@@ -108,7 +108,7 @@ class HeaderBar(Gtk.HeaderBar):
self._selection_mode = False
- self._stack_switcher = Gtk.StackSwitcher(
+ self._stack_switcher = Handy.ViewSwitcher(
can_focus=False, halign="center")
self._stack_switcher.show()
diff --git a/gnomemusic/window.py b/gnomemusic/window.py
index b4ca3676d..fcfa038f2 100644
--- a/gnomemusic/window.py
+++ b/gnomemusic/window.py
@@ -258,6 +258,8 @@ class Window(Gtk.ApplicationWindow):
for i in self.views[View.ALBUM:]:
if i.props.title:
self._stack.add_titled(i, i.props.name, i.props.title)
+ self._stack.child_set_property(
+ i, "icon-name", i.props.icon_name)
else:
self._stack.add_named(i, i.props.name)
diff --git a/meson.build b/meson.build
index c9f54f396..23b5c225c 100644
--- a/meson.build
+++ b/meson.build
@@ -45,6 +45,7 @@ dependency('glib-2.0', version: '>= 2.67.1')
dependency('goa-1.0', version: '>= 3.35.90')
dependency('gobject-introspection-1.0', version: '>= 1.35.0')
dependency('gtk+-3.0', version: '>= 3.24.13')
+dependency('libhandy-1', version: '>= 1.0.0')
dependency('libdazzle-1.0', version: '>= 3.28.0')
dependency('libmediaart-2.0', version: '>= 1.9.1')
dependency('libsoup-2.4')
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]