def __on_button_press_event(self, widget, event): """ Show current track menu @param widget as Gtk.Widget @param event as Gdk.Event """ if event.button == 1: if App().player.current_track.id == Type.RADIOS: from lollypop.pop_tunein import TuneinPopover popover = TuneinPopover() popover.populate() elif App().player.current_track.id is not None: from lollypop.pop_information import InformationPopover popover = InformationPopover() popover.populate() popover.set_relative_to(self._infobox) popover.popup() else: from lollypop.pop_menu import ToolbarMenu menu = ToolbarMenu(App().player.current_track) if App().player.current_track.id >= 0: from lollypop.pop_menu import TrackMenuPopover popover = TrackMenuPopover(App().player.current_track, menu) popover.set_relative_to(self._infobox) elif App().player.current_track.id == Type.RADIOS: popover = Popover.new_from_model(self._infobox, menu) popover.popup() return True
def __popup_menu(self): """ Show contextual menu """ if App().window.is_adaptive or not self._artwork.get_visible(): return from lollypop.menu_toolbar import ToolbarMenu menu = ToolbarMenu(App().player.current_track) if App().player.current_track.id >= 0: from lollypop.pop_menu import TrackMenuPopover popover = TrackMenuPopover(App().player.current_track, menu) popover.set_relative_to(self._infobox) elif App().player.current_track.id == Type.RADIOS: popover = Popover.new_from_model(self._infobox, menu) popover.popup()
def _on_button_release(self, eventbox, event): """ Handle album mouse click @param eventbox as Gtk.EventBox @param event as Gdk.EventButton """ if event.button != 1: from lollypop.menu_objects import AlbumMenu popover = Popover.new_from_model( self._artwork, AlbumMenu(self._album, ViewType.ALBUM)) popover.set_position(Gtk.PositionType.BOTTOM) rect = Gdk.Rectangle() rect.x = event.x rect.y = event.y rect.width = rect.height = 1 popover.set_pointing_to(rect) popover.popup()
def _on_button_press(self, eventbox, event): """ Handle album mouse click @param eventbox as Gtk.EventBox @param event as Gdk.EventButton """ if event.button != 1: from lollypop.pop_menu import AlbumMenu popover = Popover.new_from_model( self._artwork, AlbumMenu(self._album, self._artist_ids == [])) popover.set_position(Gtk.PositionType.BOTTOM) rect = Gdk.Rectangle() rect.x = event.x rect.y = event.y rect.width = rect.height = 1 popover.set_pointing_to(rect) popover.connect("closed", self._on_album_popover_closed) popover.popup()