def _on_menu_button_clicked(self, button):
     """
         Show album menu
         @param button as Gtk.Button
     """
     from lollypop.widgets_menu import MenuBuilder
     from lollypop.menu_artist import ArtistMenu
     from lollypop.menu_similars import SimilarsMenu
     from lollypop.menu_artwork import ArtistArtworkMenu
     menu = ArtistMenu(self.__artist_ids[0],
                       self.__storage_type,
                       self.view_type,
                       App().window.folded)
     menu_widget = MenuBuilder(menu, False)
     menu_widget.show()
     menu_ext = SimilarsMenu(self.__artist_ids[0])
     menu_ext.show()
     menu_widget.add_widget(menu_ext)
     if App().window.folded:
         menu_ext2 = ArtistArtworkMenu(self.__artist_ids[0],
                                       self.view_type,
                                       True)
         menu_ext2.connect("hidden", self.__close_artwork_menu)
         menu_ext2.show()
         menu_widget.add_widget(menu_ext2)
     popup_widget(menu_widget, button, None, None, button)
Example #2
0
 def _get_menu_widget(self, child):
     """
         Get menu widget
         @param child as AlbumSimpleWidget
         @return Gtk.Widget
     """
     from lollypop.widgets_menu import MenuBuilder
     from lollypop.menu_artist import ArtistMenu
     from lollypop.menu_similars import SimilarsMenu
     menu = ArtistMenu(child.data, self.storage_type, self.view_type,
                       App().window.folded)
     menu_widget = MenuBuilder(menu, False)
     menu_widget.show()
     menu_ext = SimilarsMenu(child.data)
     menu_ext.show()
     menu_widget.add_widget(menu_ext)
     return menu_widget
Example #3
0
 def _on_menu_button_clicked(self, button):
     """
         Show album menu
         @param button as Gtk.Button
     """
     from lollypop.widgets_menu import MenuBuilder
     from lollypop.menu_objects import AlbumMenu
     from lollypop.menu_artwork import AlbumArtworkMenu
     menu = AlbumMenu(self.__album, self.__storage_type, self.view_type)
     menu_widget = MenuBuilder(menu)
     menu_widget.show()
     if App().window.folded:
         menu_ext = AlbumArtworkMenu(self.__album, self.view_type, True)
         menu_ext.connect("hidden", self.__close_artwork_menu)
         menu_ext.show()
         menu_widget.add_widget(menu_ext, -2)
     popup_widget(menu_widget, button, None, None, button)
 def __popup_menu(self, child):
     """
         Popup menu for playlist
         @param child as PlaylistRoundedWidget
     """
     from lollypop.widgets_menu import MenuBuilder
     from lollypop.menu_playlist import PlaylistMenu, PlaylistMenuExt
     menu = PlaylistMenu(child.data, self.view_type, App().window.folded)
     menu_widget = MenuBuilder(menu)
     if child.data >= 0:
         menu_widget = MenuBuilder(menu)
         menu_ext = PlaylistMenuExt(child.data)
         menu_ext.show()
         menu_widget.add_widget(menu_ext)
     else:
         menu_widget = MenuBuilder(menu)
     menu_widget.show()
     popup_widget(menu_widget, child, None, None, None)
Example #5
0
 def __popup_menu(self):
     """
         Show contextual menu
     """
     if App().window.folded or not self.__artwork.get_visible():
         return
     track = App().player.current_track
     if track.id >= 0:
         from lollypop.menu_objects import TrackMenu, TrackMenuExt
         from lollypop.widgets_menu import MenuBuilder
         menu = TrackMenu(track, ViewType.TOOLBAR)
         menu_widget = MenuBuilder(menu)
         menu_widget.show()
         if not track.storage_type & StorageType.EPHEMERAL:
             menu_ext = TrackMenuExt(track)
             menu_ext.show()
             menu_widget.add_widget(menu_ext)
         self.set_state_flags(Gtk.StateFlags.FOCUSED, False)
         popup_widget(menu_widget, self.__eventbox, None, None, None)
 def _on_menu_button_clicked(self, button):
     """
         Show playlist menu
         @param button as Gtk.Button
     """
     from lollypop.widgets_menu import MenuBuilder
     from lollypop.menu_playlist import PlaylistMenu, PlaylistMenuExt
     menu = PlaylistMenu(self.__playlist_id, self.view_type,
                         App().window.folded)
     menu_widget = MenuBuilder(menu)
     if self.__playlist_id >= 0:
         menu_widget = MenuBuilder(menu)
         menu_ext = PlaylistMenuExt(self.__playlist_id)
         menu_ext.show()
         menu_widget.add_widget(menu_ext)
     else:
         menu_widget = MenuBuilder(menu)
     menu_widget.show()
     popup_widget(menu_widget, button, None, None, button)
Example #7
0
 def _on_badge_button_release(self, eventbox, event):
     """
         Show artist artwork manager
         @param eventbox as Gtk.EventBox
         @param event as Gdk.Event
     """
     from lollypop.widgets_menu import MenuBuilder
     from lollypop.menu_artwork import ArtistArtworkMenu
     menu = Gio.Menu()
     if App().window.folded:
         from lollypop.menu_header import ArtistMenuHeader
         menu.append_item(ArtistMenuHeader(self.__artist_ids[0]))
     menu_widget = MenuBuilder(menu, False)
     menu_widget.show()
     menu_ext = ArtistArtworkMenu(self.__artist_ids[0], self.view_type,
                                  False)
     menu_ext.connect("hidden", self.__close_artwork_menu)
     menu_ext.show()
     menu_widget.add_widget(menu_ext)
     self.__artwork_popup = popup_widget(menu_widget, eventbox, None, None,
                                         None)
Example #8
0
 def _on_primary_press_gesture(self, x, y, event):
     """
         Show artwork popover
         @param x as int
         @param y as int
         @param event as Gdk.Event
     """
     if self._view_type & ViewType.ALBUM:
         from lollypop.widgets_menu import MenuBuilder
         from lollypop.menu_artwork import AlbumArtworkMenu
         menu = Gio.Menu()
         if App().window.folded:
             from lollypop.menu_header import AlbumMenuHeader
             menu.append_item(AlbumMenuHeader(self._album))
         menu_widget = MenuBuilder(menu, False)
         menu_widget.show()
         menu_ext = AlbumArtworkMenu(self._album, self._view_type, False)
         menu_ext.connect("hidden", self.__close_artwork_menu)
         menu_ext.show()
         menu_widget.add_widget(menu_ext, False)
         self._artwork_popup = popup_widget(menu_widget, self, None, None,
                                            None)
    def popup_menu(self, parent, x=None, y=None):
        """
            Popup menu for track
            @param parent as Gtk.Widget
            @param x as int
            @param y as int
        """
        def on_hidden(widget, hide):
            self.set_indicator()

        from lollypop.menu_objects import TrackMenu, TrackMenuExt
        from lollypop.widgets_menu import MenuBuilder
        menu = TrackMenu(self._track, self.__view_type)
        menu_widget = MenuBuilder(menu)
        menu_widget.show()
        if not self._track.storage_type & StorageType.EPHEMERAL:
            menu_ext = TrackMenuExt(self._track)
            menu_ext.show()
            menu_widget.add_widget(menu_ext)
        popover = popup_widget(menu_widget, parent, x, y, self)
        if popover is None:
            menu_widget.connect("hidden", on_hidden)
        else:
            popover.connect("hidden", on_hidden)