1. 17 Aug, 2018 17 commits
  2. 16 Aug, 2018 15 commits
    • Marinus Schraal's avatar
      artistsview: Remove unneeded idle_add's · 7fd90914
      Marinus Schraal authored
    • Marinus Schraal's avatar
      grilo: Remove unneeded tracker source check · 823e9c32
      Marinus Schraal authored
      With the previous changes to only populating views when tracker is
      available, these checks become unneeded.
    • Marinus Schraal's avatar
      Populate views when opened · 0faaeea7
      Marinus Schraal authored
      Instead of populating on load, populate when actually switching views after
      the Grilo Tracker plugin has loaded. This is achieved by listening to the
      Grilo 'ready' signal, which signals the existance of the Grilo Tracker
    • Marinus Schraal's avatar
      grilo: Remove redundant idle_add's · 84bcbdb3
      Marinus Schraal authored
      The Grilo call is async, so no need to schedule it.
    • Fabio Tomat's avatar
      Update Friulian translation · f73f79ea
      Fabio Tomat authored
    • Jean Felder's avatar
      playertoolbar: Use player play_pause method · 907119a4
      Jean Felder authored
    • Jean Felder's avatar
      albumwidget: Restore currently played album · a7634b8f
      Jean Felder authored
      Closes: #111
    • Jean Felder's avatar
      albumwidget: Refactor add_item method · 555da3e7
      Jean Felder authored
      Cosmetic changes. Code should be easier to read.
    • Jean Felder's avatar
      views: Fix now-playing icon display · c2970c41
      Jean Felder authored
      Correctly display the "now-playing" icon for PlaylistView and
      SongsView. Rely on the current_song id and not the url like the other
      views and widgets.
      Closes: #203
    • Jean Felder's avatar
      player: Order signals by alphabetical order · 8a3c7af8
      Jean Felder authored
    • Jean Felder's avatar
      player: Refactor player playlist · d83b7de3
      Jean Felder authored
      Separate player logic from the playlist logic.
      Rename discovery logic to validation as this is more accurate of the
      underlying logic.
      PlayerPlaylist object handles the playlist and songs validation
      logic. Player object acts as a glue for the ui and the underlying
      logic (playlist and validation).
      Use Gobject Properties.
      There are 4 ways to launch a song:
      1. Click on a song in the current view. The set_playlist method is
      2. At the end of the current song. The next method is automatically called.
      3. click on the next buttom from the PlayerToolbar. The next method is called.
      4. click on the previous buttom from the PlayerToolbar. The previous
      method is called.
      Validation is a very expensive operation, so only do it when it's
      needed. See commit message from 6f1cb8d4.
      The Validation logic brings 3 features:
      - display an error icon if a song cannot be played
      - do not load a song that cannot be played
      - when the song changes, try to load the next possible one: if the
      next song cannot be loaded, try the one after, etc.
      In "set_playlist" method, if the song has already been played the
      validation information is already known, nothing to add. If the song
      has never been played, there is no information yet. In that case,
      validate_current_song and validate_next_song need to be called to
      trigger the validation mechanism.
      In "next" method, call validate_next_song to continue the validation
      mechanism if there is a next song.
      In "previous" method, call validate_previous_song to continue the validation
      mechanism if there is a previous song.
      Closes: #60, #154
    • Jean Felder's avatar
      playertoolbar: Use GObject property syntax · 1ea45617
      Jean Felder authored
    • Jean Felder's avatar
      playlistview: Fix star_handler reset on playlist update · f7ad2b2a
      Jean Felder authored
      Commit 7a074744 introduced a fix to reset star_render_click when a
      static playlist is updated.
      However this fix introduces a regression: it resets star_render_click
      when the favorite icon is clicked from any playlist. Therefore, it
      changes the favorite status and launches the song.
      Only reset star_render_click when the visible playlist is a static one
      to solve this issue.
    • Jean Felder's avatar
      playlists: Correctly emit the update signal at the end · f483bd61
      Jean Felder authored
      From the PlaylistView, a static playlist update sometimes completely
      clears the view (no songs displayed). That's the 'playlist-updated'
      signal is emitted before the end of the grilo query.
      Add a callback function to the update playlist query. This allows to
      emit the 'playlist-updated' signal once the operation is finished.
    • Jean Felder's avatar
      playlistview: Reset star_handler on static-playlist-update · 7a074744
      Jean Felder authored
      When a favorite status is changed from the Favorite PlaylistView, the
      view is refreshed. Therefore, the star_render_click from star_handler
      is never reset. Then, the next left click to start a song does not
      work because the  star_render_click is still active.
      Force a reset every time a static playlist is updated to solve this
  3. 15 Aug, 2018 1 commit
  4. 14 Aug, 2018 2 commits
    • Jean Felder's avatar
      playlistview: Hide songs_count label on loading · 91d8867b
      Jean Felder authored
      With the new playlistcontrols logic, the _songs_count_label is visible
      when a playlist is populated. This effect can be disturbing: it
      behaves like a counter.
      Hide the count label when a playlist is being loaded and show it once
      the operation is finished.
    • Jean Felder's avatar
      meson: Do not add a version suffix on a default build · 76e15e85
      Jean Felder authored
      The program version is visible in the About Dialog box.
      When built with the default profile, only display the project
      When built with the development profile, add a suffix (git hash or
      "devel" if the hash cannot be retrieved).
  5. 13 Aug, 2018 5 commits