[gnome-music] Port player and selection bar to GtkActionBar
- From: Vadim Rutkovsky <vrutkovsky src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-music] Port player and selection bar to GtkActionBar
- Date: Wed, 30 Jul 2014 11:37:34 +0000 (UTC)
commit 8a4572a57985479461f92615b37eb1283249ba77
Author: Arnel Borja <arnelborja src gnome org>
Date: Mon Jul 28 17:29:56 2014 +0200
Port player and selection bar to GtkActionBar
This also bumps required GTK+ version to 3.12.
https://bugzilla.gnome.org/show_bug.cgi?id=732150
configure.ac | 2 +-
data/PlayerToolbar.ui | 379 +++++++++++++++++++++-------------------------
data/SelectionToolbar.ui | 70 +++------
data/application.css | 20 ---
gnomemusic/player.py | 8 +-
gnomemusic/view.py | 8 +-
gnomemusic/widgets.py | 8 +-
gnomemusic/window.py | 8 +-
8 files changed, 208 insertions(+), 295 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 7b773d4..b66532e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -31,7 +31,7 @@ PKG_PROG_PKG_CONFIG([0.22])
GLIB_GSETTINGS
GOBJECT_INTROSPECTION_REQUIRE([1.35.9])
-PKG_CHECK_MODULES([GTK], [gtk+-3.0 >= 3.10])
+PKG_CHECK_MODULES([GTK], [gtk+-3.0 >= 3.12])
PKG_CHECK_MODULES(MEDIAART, [libmediaart-1.0])
GLIB_COMPILE_RESOURCES=`$PKG_CONFIG --variable glib_compile_resources gio-2.0`
diff --git a/data/PlayerToolbar.ui b/data/PlayerToolbar.ui
index fd13557..ffd3d43 100644
--- a/data/PlayerToolbar.ui
+++ b/data/PlayerToolbar.ui
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface domain="gnome-music">
- <requires lib="gtk+" version="3.10"/>
+ <requires lib="gtk+" version="3.12"/>
<menu id="repeatMenu">
<item>
<attribute name="label" translatable="yes">Shuffle</attribute>
@@ -51,73 +51,80 @@
<property name="icon_name">media-skip-backward-symbolic</property>
<property name="icon_size">1</property>
</object>
- <object class="GtkEventBox" id="eventBox">
+ <object class="GtkActionBar" id="actionbar">
<property name="can_focus">False</property>
<property name="no_show_all">True</property>
<child>
- <object class="GtkBox" id="player">
+ <object class="GtkBox" id="buttons">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="border_width">9</property>
- <property name="spacing">12</property>
<child>
- <object class="GtkBox" id="buttons">
+ <object class="GtkButton" id="previous_button">
+ <property name="width_request">42</property>
+ <property name="visible">True</property>
+ <property name="sensitive">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">previous_image</property>
+ <property name="always_show_image">True</property>
+ <property name="tooltip_text" translatable="yes">Previous</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="play_button">
+ <property name="width_request">60</property>
+ <property name="visible">True</property>
+ <property name="sensitive">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">play_image</property>
+ <property name="always_show_image">True</property>
+ <property name="tooltip_text" translatable="yes">Play</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton" id="next_button">
+ <property name="width_request">42</property>
+ <property name="visible">True</property>
+ <property name="sensitive">False</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="image">next_image</property>
+ <property name="always_show_image">True</property>
+ <property name="tooltip_text" translatable="yes">Next</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <style>
+ <class name="linked"/>
+ </style>
+ </object>
+ </child>
+ <child>
+ <object class="GtkBox" id="nowplaying">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">center</property>
+ <property name="valign">center</property>
+ <property name="spacing">8</property>
+ <child>
+ <object class="GtkImage" id="cover">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <child>
- <object class="GtkButton" id="previous_button">
- <property name="width_request">42</property>
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <property name="image">previous_image</property>
- <property name="always_show_image">True</property>
- <property name="tooltip_text" translatable="yes">Previous</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="play_button">
- <property name="width_request">60</property>
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <property name="image">play_image</property>
- <property name="always_show_image">True</property>
- <property name="tooltip_text" translatable="yes">Play</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="next_button">
- <property name="width_request">42</property>
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <property name="image">next_image</property>
- <property name="always_show_image">True</property>
- <property name="tooltip_text" translatable="yes">Next</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">2</property>
- </packing>
- </child>
- <style>
- <class name="linked"/>
- </style>
</object>
<packing>
<property name="expand">False</property>
@@ -126,72 +133,47 @@
</packing>
</child>
<child>
- <object class="GtkBox" id="nowplaying">
+ <object class="GtkBox" id="nowplaying_labels">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">center</property>
<property name="valign">center</property>
- <property name="spacing">8</property>
+ <property name="orientation">vertical</property>
+ <property name="homogeneous">True</property>
<child>
- <object class="GtkImage" id="cover">
+ <object class="GtkLabel" id="artist">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="valign">start</property>
+ <property name="xalign">0</property>
+ <property name="ellipsize">middle</property>
+ <property name="width_chars">8</property>
+ <property name="max_width_chars">12</property>
+ <attributes>
+ <attribute name="weight" value="bold"/>
+ <attribute name="scale" value="0.90000000000000002"/>
+ </attributes>
</object>
<packing>
<property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkBox" id="nowplaying_labels">
+ <object class="GtkLabel" id="title">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="halign">center</property>
- <property name="valign">center</property>
- <property name="orientation">vertical</property>
- <property name="homogeneous">True</property>
- <child>
- <object class="GtkLabel" id="artist">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="valign">start</property>
- <property name="xalign">0</property>
- <property name="ellipsize">middle</property>
- <property name="width_chars">8</property>
- <property name="max_width_chars">12</property>
- <attributes>
- <attribute name="weight" value="bold"/>
- <attribute name="scale" value="0.90000000000000002"/>
- </attributes>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="title">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="valign">start</property>
- <property name="xalign">0</property>
- <property name="ellipsize">middle</property>
- <property name="width_chars">8</property>
- <property name="max_width_chars">12</property>
- <attributes>
- <attribute name="scale" value="0.90000000000000002"/>
- </attributes>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
+ <property name="halign">start</property>
+ <property name="valign">start</property>
+ <property name="xalign">0</property>
+ <property name="ellipsize">middle</property>
+ <property name="width_chars">8</property>
+ <property name="max_width_chars">12</property>
+ <attributes>
+ <attribute name="scale" value="0.90000000000000002"/>
+ </attributes>
</object>
<packing>
<property name="expand">False</property>
@@ -206,144 +188,125 @@
<property name="position">1</property>
</packing>
</child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkScale" id="progress_scale">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="valign">center</property>
+ <property name="hexpand">True</property>
+ <property name="draw_value">False</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkBox" id="timer">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
+ <property name="valign">center</property>
+ <property name="spacing">6</property>
<child>
- <object class="GtkScale" id="progress_scale">
+ <object class="GtkLabel" id="playback">
<property name="visible">True</property>
- <property name="can_focus">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">start</property>
<property name="valign">center</property>
- <property name="hexpand">True</property>
- <property name="draw_value">False</property>
+ <property name="label">0:00</property>
</object>
<packing>
- <property name="expand">True</property>
- <property name="fill">True</property>
- <property name="position">2</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <object class="GtkBox" id="timer">
+ <object class="GtkLabel" id="separator">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">start</property>
<property name="valign">center</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkLabel" id="playback">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="valign">center</property>
- <property name="label">0:00</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="separator">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="valign">center</property>
- <property name="label">/</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel" id="duration">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="valign">center</property>
- <property name="label">0:00</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
- </child>
+ <property name="label">/</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">3</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
- <object class="GtkBox" id="menuBox">
- <property name="height_request">34</property>
+ <object class="GtkLabel" id="duration">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="halign">end</property>
+ <property name="halign">start</property>
<property name="valign">center</property>
+ <property name="label">0:00</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkBox" id="menuBox">
+ <property name="height_request">34</property>
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">end</property>
+ <property name="valign">center</property>
+ <child>
+ <object class="GtkMenuButton" id="menuButton">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_popover">True</property>
+ <property name="menu_model">repeatMenu</property>
<child>
- <object class="GtkMenuButton" id="menuButton">
+ <object class="GtkBox" id="replayBox">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <property name="use_popover">True</property>
- <property name="menu_model">repeatMenu</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkImage" id="playlistRepeat">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">media-playlist-consecutive-symbolic</property>
+ <property name="icon_size">1</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
<child>
- <object class="GtkBox" id="replayBox">
+ <object class="GtkImage" id="downArrow">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="spacing">6</property>
- <child>
- <object class="GtkImage" id="playlistRepeat">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">media-playlist-consecutive-symbolic</property>
- <property name="icon_size">1</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkImage" id="downArrow">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">go-down-symbolic</property>
- <property name="icon_size">1</property>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">1</property>
- </packing>
- </child>
+ <property name="icon_name">go-down-symbolic</property>
+ <property name="icon_size">1</property>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
</child>
</object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="pack_type">end</property>
- <property name="position">0</property>
- </packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="pack_type">end</property>
- <property name="position">4</property>
+ <property name="position">0</property>
</packing>
</child>
</object>
</child>
- <style>
- <class name="play-bar"/>
- </style>
</object>
<object class="GtkRadioMenuItem" id="radiomenuitem1">
<property name="visible">True</property>
diff --git a/data/SelectionToolbar.ui b/data/SelectionToolbar.ui
index 9b61cac..84d3934 100644
--- a/data/SelectionToolbar.ui
+++ b/data/SelectionToolbar.ui
@@ -1,59 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface domain="gnome-music">
- <!-- interface-requires gtk+ 3.10 -->
- <object class="GtkEventBox" id="eventbox1">
- <property name="width_request">-1</property>
- <property name="height_request">-1</property>
+ <!-- interface-requires gtk+ 3.12 -->
+ <object class="GtkActionBar" id="actionbar">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="hexpand">True</property>
- <property name="vexpand">False</property>
- <style>
- <class name="select-bar"/>
- </style>
<child>
- <object class="GtkButtonBox" id="buttonbox1">
+ <object class="GtkButton" id="button1">
+ <property name="label" translatable="yes">Add to Playlist</property>
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">start</property>
- <property name="valign">start</property>
- <property name="margin_left">10</property>
- <property name="margin_top">10</property>
- <property name="margin_bottom">10</property>
- <property name="orientation">vertical</property>
- <property name="layout_style">start</property>
- <child>
- <object class="GtkButton" id="button1">
- <property name="label" translatable="yes">Add to Playlist</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <style>
- <class name="text-button"/>
- </style>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <object class="GtkButton" id="button2">
- <property name="label" translatable="yes">Remove from Playlist</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <style>
- <class name="text-button"/>
- </style>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="position">0</property>
- </packing>
- </child>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <style>
+ <class name="text-button"/>
+ </style>
+ </object>
+ </child>
+ <child>
+ <object class="GtkButton" id="button2">
+ <property name="label" translatable="yes">Remove from Playlist</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <style>
+ <class name="text-button"/>
+ </style>
</object>
</child>
</object>
diff --git a/data/application.css b/data/application.css
index 8240137..d46121f 100644
--- a/data/application.css
+++ b/data/application.css
@@ -66,26 +66,6 @@ GtkTreeView{
background-color: @theme_bg_color;
}
-.play-bar {
- border-style: solid;
- border-color: shade(@borders, 0.5);
-
- box-shadow: inset 0 1.0px shade(@theme_bg_color, 0.6);
- background-image: -gtk-gradient(linear, left top, left bottom,
- from(shade(@theme_bg_color, 1.01)),
- to(shade(@theme_bg_color, 0.9)));
-}
-
-.select-bar {
- border-style: solid;
- border-color: shade(@borders, 0.5);
-
- box-shadow: inset 0 1.0px shade(@theme_bg_color, 0.6);
- background-image: -gtk-gradient(linear, left top, left bottom,
- from(shade(@theme_bg_color, 1.01)),
- to(shade(@theme_bg_color, 0.9)));
-}
-
.music-selection-mode {
background-image: -gtk-gradient(linear, left top, left bottom,
from(@music_selection_box_a),
diff --git a/gnomemusic/player.py b/gnomemusic/player.py
index 262c8d7..b703ab8 100644
--- a/gnomemusic/player.py
+++ b/gnomemusic/player.py
@@ -367,7 +367,7 @@ class Player(GObject.GObject):
@log
def set_playing(self, value):
- self.eventBox.show()
+ self.actionbar.show()
if value:
self.play()
@@ -537,7 +537,7 @@ class Player(GObject.GObject):
def _setup_view(self):
self._ui = Gtk.Builder()
self._ui.add_from_resource('/org/gnome/Music/PlayerToolbar.ui')
- self.eventBox = self._ui.get_object('eventBox')
+ self.actionbar = self._ui.get_object('actionbar')
self.prevBtn = self._ui.get_object('previous_button')
self.playBtn = self._ui.get_object('play_button')
self.nextBtn = self._ui.get_object('next_button')
@@ -760,7 +760,7 @@ class SelectionToolbar():
def __init__(self):
self._ui = Gtk.Builder()
self._ui.add_from_resource('/org/gnome/Music/SelectionToolbar.ui')
- self.eventbox = self._ui.get_object('eventbox1')
+ self.actionbar = self._ui.get_object('actionbar')
self._add_to_playlist_button = self._ui.get_object('button1')
self._remove_from_playlist_button = self._ui.get_object('button2')
- self.eventbox.set_visible(False)
+ self.actionbar.set_visible(False)
diff --git a/gnomemusic/view.py b/gnomemusic/view.py
index 2441ba9..96778f0 100644
--- a/gnomemusic/view.py
+++ b/gnomemusic/view.py
@@ -161,15 +161,15 @@ class ViewContainer(Gtk.Stack):
if button.get_active():
self.view.set_selection_mode(True)
self.header_bar.set_selection_mode(True)
- self.player.eventBox.set_visible(False)
- self.selection_toolbar.eventbox.set_visible(True)
+ self.player.actionbar.set_visible(False)
+ self.selection_toolbar.actionbar.set_visible(True)
self.selection_toolbar._add_to_playlist_button.set_sensitive(False)
self.selection_toolbar._remove_from_playlist_button.set_sensitive(False)
else:
self.view.set_selection_mode(False)
self.header_bar.set_selection_mode(False)
- self.player.eventBox.set_visible(self.player.currentTrack is not None)
- self.selection_toolbar.eventbox.set_visible(False)
+ self.player.actionbar.set_visible(self.player.currentTrack is not None)
+ self.selection_toolbar.actionbar.set_visible(False)
@log
def _on_cancel_button_clicked(self, button):
diff --git a/gnomemusic/widgets.py b/gnomemusic/widgets.py
index 312d836..31f58fa 100644
--- a/gnomemusic/widgets.py
+++ b/gnomemusic/widgets.py
@@ -237,17 +237,17 @@ class AlbumWidget(Gtk.EventBox):
if button.get_active():
self.view.set_selection_mode(True)
self.header_bar.set_selection_mode(True)
- self.player.eventBox.set_visible(False)
- self.selection_toolbar.eventbox.set_visible(True)
+ self.player.actionbar.set_visible(False)
+ self.selection_toolbar.actionbar.set_visible(True)
self.selection_toolbar._add_to_playlist_button.set_sensitive(False)
self.header_bar.header_bar.set_custom_title(self.header_bar._selection_menu_button)
else:
self.view.set_selection_mode(False)
self.header_bar.set_selection_mode(False)
self.header_bar.title = self.album
- self.selection_toolbar.eventbox.set_visible(False)
+ self.selection_toolbar.actionbar.set_visible(False)
if(self.player.get_playback_status() != 2):
- self.player.eventBox.set_visible(True)
+ self.player.actionbar.set_visible(True)
@log
def _on_discovered(self, info, error, _iter):
diff --git a/gnomemusic/window.py b/gnomemusic/window.py
index 7479dbe..0e73b2f 100644
--- a/gnomemusic/window.py
+++ b/gnomemusic/window.py
@@ -192,8 +192,8 @@ class Window(Gtk.ApplicationWindow):
self.set_titlebar(self.toolbar.header_bar)
self._box.pack_start(self.toolbar.searchbar, False, False, 0)
self._box.pack_start(self._overlay, True, True, 0)
- self._box.pack_start(self.player.eventBox, False, False, 0)
- self._box.pack_start(self.selection_toolbar.eventbox, False, False, 0)
+ self._box.pack_start(self.player.actionbar, False, False, 0)
+ self._box.pack_start(self.selection_toolbar.actionbar, False, False, 0)
self.add(self._box)
count = 1
cursor = tracker.query(Query.all_songs_count(), None)
@@ -216,7 +216,7 @@ class Window(Gtk.ApplicationWindow):
self.toolbar.set_state(ToolbarState.MAIN)
self.toolbar.header_bar.show()
self._overlay.show()
- self.player.eventBox.show_all()
+ self.player.actionbar.show_all()
self._box.show()
self.show()
@@ -322,7 +322,7 @@ class Window(Gtk.ApplicationWindow):
self.toolbar.searchbar.show_bar(True)
else:
if not self.toolbar.searchbar.get_reveal_child():
- if event.keyval == Gdk.KEY_space and self.player.eventBox.get_visible():
+ if event.keyval == Gdk.KEY_space and self.player.actionbar.get_visible():
self.player.play_pause()
@log
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]