ncmpc-debian.git
8 months agoconf: throw on error
Max Kellermann [Sun, 8 Sep 2019 19:49:27 +0000 (21:49 +0200)]
conf: throw on error

8 months agoMain: catch and print C++ exceptions
Max Kellermann [Sun, 8 Sep 2019 19:45:24 +0000 (21:45 +0200)]
Main: catch and print C++ exceptions

8 months agoconf: add `noexcept`
Max Kellermann [Sun, 8 Sep 2019 19:47:38 +0000 (21:47 +0200)]
conf: add `noexcept`

8 months agoMain: use EXIT_SUCCESS
Max Kellermann [Sun, 8 Sep 2019 19:45:59 +0000 (21:45 +0200)]
Main: use EXIT_SUCCESS

8 months agoinclude cleanups (using iwyu)
Max Kellermann [Sun, 8 Sep 2019 18:39:37 +0000 (20:39 +0200)]
include cleanups (using iwyu)

8 months agosong_paint: rename source file
Max Kellermann [Sun, 8 Sep 2019 18:35:46 +0000 (20:35 +0200)]
song_paint: rename source file

8 months agocopyright year 2019
Max Kellermann [Sun, 8 Sep 2019 18:30:31 +0000 (20:30 +0200)]
copyright year 2019

8 months agopo/{en,de}.po: use ellipsis
Max Kellermann [Sun, 8 Sep 2019 11:57:34 +0000 (13:57 +0200)]
po/{en,de}.po: use ellipsis

8 months agopo: add English translation
Max Kellermann [Sun, 8 Sep 2019 11:56:54 +0000 (13:56 +0200)]
po: add English translation

To allow using Unicode characters in "translated" strings.

8 months agopo: update ncmpc.pot and *.po
Max Kellermann [Sun, 8 Sep 2019 11:56:30 +0000 (13:56 +0200)]
po: update ncmpc.pot and *.po

8 months agopo/meson.build: remove obsolete variable `langs`
Max Kellermann [Sun, 8 Sep 2019 11:54:49 +0000 (13:54 +0200)]
po/meson.build: remove obsolete variable `langs`

The "i18n" module loads the "LINGUAS" file instead.

8 months agoTranslated using Weblate (Chinese (Simplified))
Michal Čihař [Thu, 22 Aug 2019 10:22:55 +0000 (10:22 +0000)]
Translated using Weblate (Chinese (Simplified))

Currently translated at 83.1% (222 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/zh_Hans/

8 months agoTranslated using Weblate (Chinese (Simplified))
Elizabeth Sherrock [Thu, 15 Aug 2019 14:52:55 +0000 (14:52 +0000)]
Translated using Weblate (Chinese (Simplified))

Currently translated at 83.1% (222 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/zh_Hans/

8 months agoTranslated using Weblate (Chinese (Simplified))
Elizabeth Sherrock [Wed, 31 Jul 2019 17:32:20 +0000 (17:32 +0000)]
Translated using Weblate (Chinese (Simplified))

Currently translated at 80.9% (216 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/zh_Hans/

9 months agoconf: translate deprecated names in "screen-list"
Max Kellermann [Mon, 19 Aug 2019 12:18:59 +0000 (14:18 +0200)]
conf: translate deprecated names in "screen-list"

9 months agoscreen: add "pure" attribute
Max Kellermann [Mon, 19 Aug 2019 11:49:16 +0000 (13:49 +0200)]
screen: add "pure" attribute

9 months agoconf: allow escaping single quote with backslash in key bindings
Max Kellermann [Mon, 19 Aug 2019 11:42:26 +0000 (13:42 +0200)]
conf: allow escaping single quote with backslash in key bindings

Fixing part of https://github.com/MusicPlayerDaemon/ncmpc/issues/51

9 months agoconf: add `constexpr`
Max Kellermann [Mon, 19 Aug 2019 11:42:37 +0000 (13:42 +0200)]
conf: add `constexpr`

11 months agoStatusBar: require a minimum width to enable hscroll
Max Kellermann [Sat, 8 Jun 2019 10:34:02 +0000 (12:34 +0200)]
StatusBar: require a minimum width to enable hscroll

If the width goes to zero or below, an assertion may crash the process
in hscroll::Paint().

12 months agopo/meson.build: register Occidental translation
Max Kellermann [Wed, 22 May 2019 13:47:06 +0000 (15:47 +0200)]
po/meson.build: register Occidental translation

12 months agoTranslated using Weblate (Russian)
OIS [Sat, 18 May 2019 01:55:42 +0000 (01:55 +0000)]
Translated using Weblate (Russian)

Currently translated at 100.0% (267 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/ru/

12 months agoTranslated using Weblate (Occidental)
OIS [Sat, 18 May 2019 00:21:08 +0000 (00:21 +0000)]
Translated using Weblate (Occidental)

Currently translated at 89.5% (239 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/ie/

12 months agoTranslated using Weblate (German)
ssantos [Sat, 18 May 2019 10:46:47 +0000 (10:46 +0000)]
Translated using Weblate (German)

Currently translated at 100.0% (267 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/de/

12 months agoAdded translation using Weblate (Occidental)
OIS [Sat, 18 May 2019 00:20:27 +0000 (00:20 +0000)]
Added translation using Weblate (Occidental)

12 months agodefaults: fall back to "AlbumArtist" tag in the default format
Max Kellermann [Wed, 15 May 2019 11:19:39 +0000 (13:19 +0200)]
defaults: fall back to "AlbumArtist" tag in the default format

13 months agoincrement version number to 0.35
Max Kellermann [Wed, 10 Apr 2019 09:10:30 +0000 (11:10 +0200)]
increment version number to 0.35

13 months agorelease v0.34
Max Kellermann [Wed, 10 Apr 2019 09:08:34 +0000 (11:08 +0200)]
release v0.34

13 months agodoc: improve documentation for "title" and "title-bold"
Max Kellermann [Wed, 10 Apr 2019 09:04:30 +0000 (11:04 +0200)]
doc: improve documentation for "title" and "title-bold"

Closes https://github.com/MusicPlayerDaemon/ncmpc/issues/35

13 months ago{Queue,FileList}Page: show total duration of range selection in status bar
Max Kellermann [Wed, 10 Apr 2019 08:41:09 +0000 (10:41 +0200)]
{Queue,FileList}Page: show total duration of range selection in status bar

Closes https://github.com/MusicPlayerDaemon/ncmpc/issues/46

13 months agoPage: add virtual method PaintStatusBarOverride()
Max Kellermann [Wed, 10 Apr 2019 08:30:05 +0000 (10:30 +0200)]
Page: add virtual method PaintStatusBarOverride()

13 months agoStatusBar: GetWindow() returns const reference
Max Kellermann [Wed, 10 Apr 2019 08:28:13 +0000 (10:28 +0200)]
StatusBar: GetWindow() returns const reference

13 months agoListCursor: store only height, move width to class ListWindow
Max Kellermann [Wed, 10 Apr 2019 08:22:53 +0000 (10:22 +0200)]
ListCursor: store only height, move width to class ListWindow

13 months agoListWindow: use GetHeight()
Max Kellermann [Wed, 10 Apr 2019 08:21:28 +0000 (10:21 +0200)]
ListWindow: use GetHeight()

13 months agoListWindow: include cleanup
Max Kellermann [Wed, 10 Apr 2019 08:19:20 +0000 (10:19 +0200)]
ListWindow: include cleanup

13 months agoListWindow: move cursor management code to class ListCursor
Max Kellermann [Wed, 10 Apr 2019 07:44:07 +0000 (09:44 +0200)]
ListWindow: move cursor management code to class ListCursor

13 months agoListWindow: make "w" const
Max Kellermann [Wed, 10 Apr 2019 07:35:19 +0000 (09:35 +0200)]
ListWindow: make "w" const

13 months agoListWindow: make all attributes private
Max Kellermann [Wed, 10 Apr 2019 07:33:47 +0000 (09:33 +0200)]
ListWindow: make all attributes private

13 months agowreadln: add missing include for errno
Max Kellermann [Wed, 10 Apr 2019 07:03:46 +0000 (09:03 +0200)]
wreadln: add missing include for errno

Fixes regression by 79b967b6ed274fd765d7cc155286208f5c9491e4

13 months agodoc/meson.build: fix manual install dir
kaliko [Mon, 10 Dec 2018 12:46:42 +0000 (13:46 +0100)]
doc/meson.build: fix manual install dir

Closes https://github.com/MusicPlayerDaemon/ncmpc/issues/41

13 months agowreadln, screen_utils: avoid busy looping wgetch()
Max Kellermann [Tue, 9 Apr 2019 21:25:06 +0000 (23:25 +0200)]
wreadln, screen_utils: avoid busy looping wgetch()

boost::asio switches STDIN_FILENO to non-blocking mode, causing
wgetch() to always return immediately, causing EAGAIN if no key press
is pending.  This causes wreadln() and screen_getch() to busy-loop.

This commit adds poll() calls to idle while no key press is pending.

Closes https://github.com/MusicPlayerDaemon/ncmpc/issues/50

13 months agowreadln: move poll() call to WaitUserInput.hxx
Max Kellermann [Tue, 9 Apr 2019 21:17:07 +0000 (23:17 +0200)]
wreadln: move poll() call to WaitUserInput.hxx

13 months agokeyboard: split class
Max Kellermann [Tue, 9 Apr 2019 20:47:16 +0000 (22:47 +0200)]
keyboard: split class

14 months agoLyricsPage: use ScreenManager::get_io_service()
Max Kellermann [Sun, 24 Mar 2019 20:11:07 +0000 (21:11 +0100)]
LyricsPage: use ScreenManager::get_io_service()

boost::asio::steady_timer::get_io_service() has been removed in Boost
1.70, but ScreenManager has a reference to the
boost::asio::io_service.

Fixes the missing piece for https://github.com/MusicPlayerDaemon/ncmpc/issues/49

14 months agoadapt to Boost 1.70.0 API changes
Max Kellermann [Thu, 21 Mar 2019 09:37:54 +0000 (10:37 +0100)]
adapt to Boost 1.70.0 API changes

The get_io_service() method has beenn removed from various classes
(https://github.com/boostorg/asio/commit/a72fbb0b867f), so we need to
keep references instead of asking existing asio objects for their
stored reference.

Tested with Boost 1.70.0b1

Closes https://github.com/MusicPlayerDaemon/ncmpc/issues/49

14 months agoStatusBar: add missing include to fix the "mini" build
Max Kellermann [Thu, 21 Mar 2019 10:03:58 +0000 (11:03 +0100)]
StatusBar: add missing include to fix the "mini" build

14 months agoFix logic to allow for 'none' as object background color.
Jon Cox [Mon, 18 Mar 2019 23:55:45 +0000 (17:55 -0600)]
Fix logic to allow for 'none' as object background color.

Checking for color < 0 doesn't allow for the case where otherwise
valid 'none' value is specified as a background color. I have changed
this to be consistent with the check for the 'color background'
processing.

15 months agoInstance: fix wrong timer object in ScheduleCheckKeyBindings()
Max Kellermann [Fri, 25 Jan 2019 13:33:53 +0000 (14:33 +0100)]
Instance: fix wrong timer object in ScheduleCheckKeyBindings()

By using the wrong timer, ncmpc could go into an endless busy loop,
because the (unconfigured) `reconnect_timer` was scheduled over and
over without a timeout.  This caused high CPU usage.

Closes #40

16 months agoTranslated using Weblate (Korean)
Min Ho Park [Mon, 21 Jan 2019 12:49:05 +0000 (12:49 +0000)]
Translated using Weblate (Korean)

Currently translated at 100.0% (267 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/ko/

16 months agoTranslated using Weblate (French)
Nathan [Sun, 20 Jan 2019 20:46:40 +0000 (20:46 +0000)]
Translated using Weblate (French)

Currently translated at 100.0% (267 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/fr/

16 months agoTranslated using Weblate (Korean)
Min Ho Park [Thu, 3 Jan 2019 23:52:07 +0000 (23:52 +0000)]
Translated using Weblate (Korean)

Currently translated at 100.0% (267 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/ko/

16 months agoFixed a spelling error (spotted by lintian)
kaliko [Wed, 19 Dec 2018 15:37:40 +0000 (16:37 +0100)]
Fixed a spelling error (spotted by lintian)

16 months agoTranslated using Weblate (Korean)
Min Ho Park [Thu, 3 Jan 2019 06:20:10 +0000 (06:20 +0000)]
Translated using Weblate (Korean)

Currently translated at 100.0% (267 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/ko/

16 months agoTranslated using Weblate (Korean)
Min Ho Park [Thu, 3 Jan 2019 00:54:57 +0000 (00:54 +0000)]
Translated using Weblate (Korean)

Currently translated at 100.0% (267 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/ko/

18 months agoTranslated using Weblate (French)
Christophe [Fri, 2 Nov 2018 07:50:37 +0000 (07:50 +0000)]
Translated using Weblate (French)

Currently translated at 99.6% (266 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/fr/

18 months agoTranslated using Weblate (French)
ButterflyOfFire [Wed, 24 Oct 2018 17:24:27 +0000 (17:24 +0000)]
Translated using Weblate (French)

Currently translated at 98.8% (264 of 267 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/fr/

18 months agoincrement version number to 0.34
Max Kellermann [Mon, 29 Oct 2018 13:28:15 +0000 (14:28 +0100)]
increment version number to 0.34

19 months agorelease v0.33
Max Kellermann [Mon, 22 Oct 2018 17:04:35 +0000 (19:04 +0200)]
release v0.33

19 months agoLibraryPage: make tag list configurable
Max Kellermann [Wed, 17 Oct 2018 15:49:23 +0000 (17:49 +0200)]
LibraryPage: make tag list configurable

19 months agoscreen_artist: rename to "library"
Max Kellermann [Wed, 17 Oct 2018 15:21:40 +0000 (17:21 +0200)]
screen_artist: rename to "library"

This shows a view on the music library, structured by tag values; only
the entry page shows artists.

19 months agoconf: add `noexcept`
Max Kellermann [Wed, 17 Oct 2018 14:37:36 +0000 (16:37 +0200)]
conf: add `noexcept`

19 months agoTabBar: add `noexcept`
Max Kellermann [Wed, 17 Oct 2018 14:30:25 +0000 (16:30 +0200)]
TabBar: add `noexcept`

19 months agoscreen_list: add `noexcept`
Max Kellermann [Wed, 17 Oct 2018 14:29:03 +0000 (16:29 +0200)]
screen_list: add `noexcept`

19 months agodoc/meson.build: add "upload" rule
Max Kellermann [Wed, 17 Oct 2018 14:00:33 +0000 (16:00 +0200)]
doc/meson.build: add "upload" rule

19 months agodoc/meson.build: use subdir_done() to simplify the Meson rules
Max Kellermann [Wed, 17 Oct 2018 13:58:06 +0000 (15:58 +0200)]
doc/meson.build: use subdir_done() to simplify the Meson rules

19 months agoscreen_artist: make the TagListPage list dynamic
Max Kellermann [Wed, 17 Oct 2018 11:15:36 +0000 (13:15 +0200)]
screen_artist: make the TagListPage list dynamic

Prepare to make it configurable.

19 months agoscreen_artist: remove obsolete SongListPage attributes
Max Kellermann [Wed, 17 Oct 2018 11:17:47 +0000 (13:17 +0200)]
screen_artist: remove obsolete SongListPage attributes

19 months agoscreen_artist: use TagListPage::MakeCursorFilter()
Max Kellermann [Wed, 17 Oct 2018 10:23:19 +0000 (12:23 +0200)]
screen_artist: use TagListPage::MakeCursorFilter()

19 months agoscreen_artist: more generic page title generator
Max Kellermann [Wed, 17 Oct 2018 10:15:15 +0000 (12:15 +0200)]
screen_artist: more generic page title generator

19 months agoscreen_artist: simplify the GO_PARENT_DIRECTORY handler
Max Kellermann [Wed, 17 Oct 2018 10:32:51 +0000 (12:32 +0200)]
screen_artist: simplify the GO_PARENT_DIRECTORY handler

19 months agopo: update ncmpc.pot and *.po
Max Kellermann [Wed, 17 Oct 2018 09:53:58 +0000 (11:53 +0200)]
po: update ncmpc.pot and *.po

19 months agopo: update POTFILES
Max Kellermann [Wed, 17 Oct 2018 09:52:08 +0000 (11:52 +0200)]
po: update POTFILES

Generated with:

 git grep --files-with-matches '_("'|sort --ignore-case

19 months agoscreen_artist: simplify page titles
Max Kellermann [Wed, 17 Oct 2018 09:44:10 +0000 (11:44 +0200)]
screen_artist: simplify page titles

19 months agoscreen_artist: fix initial page title by calling OpenArtistList()
Max Kellermann [Wed, 17 Oct 2018 08:56:28 +0000 (10:56 +0200)]
screen_artist: fix initial page title by calling OpenArtistList()

19 months agoutil/NulledString: remove obsolete library
Max Kellermann [Wed, 10 Oct 2018 21:06:06 +0000 (23:06 +0200)]
util/NulledString: remove obsolete library

19 months agoscreen_artist: use TagListPage::GetTag() instead of hard-coding tag
Max Kellermann [Wed, 10 Oct 2018 21:02:26 +0000 (23:02 +0200)]
screen_artist: use TagListPage::GetTag() instead of hard-coding tag

19 months ago{Album,Artist}ListPage: merge common code into a generic class
Max Kellermann [Wed, 10 Oct 2018 14:00:17 +0000 (16:00 +0200)]
{Album,Artist}ListPage: merge common code into a generic class

19 months ago{Album,Artist}ListPage: remove unused macro `BUFSIZE`
Max Kellermann [Wed, 10 Oct 2018 13:58:16 +0000 (15:58 +0200)]
{Album,Artist}ListPage: remove unused macro `BUFSIZE`

19 months agoconf: remove trailing whitespace from option names
Max Kellermann [Wed, 10 Oct 2018 13:47:45 +0000 (15:47 +0200)]
conf: remove trailing whitespace from option names

Closes #39

19 months agoStyles: add missing newline to error message
Max Kellermann [Wed, 10 Oct 2018 13:45:30 +0000 (15:45 +0200)]
Styles: add missing newline to error message

19 months agoMerge branch 'origin/master' into Weblate
Hosted Weblate [Fri, 5 Oct 2018 17:33:13 +0000 (19:33 +0200)]
Merge branch 'origin/master' into Weblate

19 months agoTranslated using Weblate (Polish)
Mirosław Borodeńko [Thu, 4 Oct 2018 17:46:39 +0000 (17:46 +0000)]
Translated using Weblate (Polish)

Currently translated at 99.6% (269 of 270 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/pl/

19 months agoMerge branch 'master' of https://hosted.weblate.org/git/ncmpc/translations
Max Kellermann [Fri, 5 Oct 2018 17:32:10 +0000 (19:32 +0200)]
Merge branch 'master' of https://hosted.weblate.org/git/ncmpc/translations

19 months agoMatch: fix the #ifdef, fixes build failure without libpcre
Max Kellermann [Fri, 5 Oct 2018 17:28:46 +0000 (19:28 +0200)]
Match: fix the #ifdef, fixes build failure without libpcre

19 months agomeson_options.txt: add option `regex`
Max Kellermann [Fri, 5 Oct 2018 17:25:00 +0000 (19:25 +0200)]
meson_options.txt: add option `regex`

19 months agomeson_options.txt: use type `feature` (requires Meson 0.47)
Max Kellermann [Fri, 5 Oct 2018 17:11:38 +0000 (19:11 +0200)]
meson_options.txt: use type `feature` (requires Meson 0.47)

19 months agomeson.build: require Meson 0.47
Max Kellermann [Fri, 5 Oct 2018 17:09:52 +0000 (19:09 +0200)]
meson.build: require Meson 0.47

For the "feature" option type.

19 months agomeson.build: remove support for the deprecated liblircclient0
Max Kellermann [Fri, 5 Oct 2018 17:15:28 +0000 (19:15 +0200)]
meson.build: remove support for the deprecated liblircclient0

19 months agomeson_options.txt: remove obsolete option `tcp`
Max Kellermann [Fri, 5 Oct 2018 17:05:36 +0000 (19:05 +0200)]
meson_options.txt: remove obsolete option `tcp`

19 months agoincrement version number to 0.33
Max Kellermann [Fri, 5 Oct 2018 16:47:30 +0000 (18:47 +0200)]
increment version number to 0.33

19 months agorelease v0.32
Max Kellermann [Fri, 5 Oct 2018 16:41:15 +0000 (18:41 +0200)]
release v0.32

19 months agomeson.build: disable a few unused Boost features
Max Kellermann [Fri, 5 Oct 2018 16:26:46 +0000 (18:26 +0200)]
meson.build: disable a few unused Boost features

19 months agomeson.build: make boost::system header-only
Max Kellermann [Fri, 5 Oct 2018 16:26:36 +0000 (18:26 +0200)]
meson.build: make boost::system header-only

19 months agoTranslated using Weblate (French)
ButterflyOfFire [Thu, 4 Oct 2018 13:08:03 +0000 (13:08 +0000)]
Translated using Weblate (French)

Currently translated at 95.9% (259 of 270 strings)

Translation: Ncmpc/Translations
Translate-URL: https://hosted.weblate.org/projects/ncmpc/translations/fr/

19 months agolirc: fix close(-2) call on shutdown
Max Kellermann [Thu, 4 Oct 2018 19:49:37 +0000 (21:49 +0200)]
lirc: fix close(-2) call on shutdown

19 months agovalgrind.suppressions: update for ncurses 6.1
Max Kellermann [Thu, 4 Oct 2018 19:47:00 +0000 (21:47 +0200)]
valgrind.suppressions: update for ncurses 6.1

19 months agoutil/StringUTF8: check if `locale_t` is available
Max Kellermann [Thu, 4 Oct 2018 17:29:31 +0000 (19:29 +0200)]
util/StringUTF8: check if `locale_t` is available

19 months agomeson.build: remove GLib dependency
Max Kellermann [Thu, 4 Oct 2018 17:14:51 +0000 (19:14 +0200)]
meson.build: remove GLib dependency

19 months agoutil/StringUTF8: use strcoll_l() instead of g_utf8_collate()
Max Kellermann [Thu, 4 Oct 2018 12:27:07 +0000 (14:27 +0200)]
util/StringUTF8: use strcoll_l() instead of g_utf8_collate()

19 months agoMain: remove stray `unused` attribute
Max Kellermann [Thu, 4 Oct 2018 12:26:34 +0000 (14:26 +0200)]
Main: remove stray `unused` attribute

Broken by commit ccd249ab5d4f08a21f4a47ee8d0eaa068de1996d

19 months agocharset: add `noexcept`
Max Kellermann [Thu, 4 Oct 2018 12:20:03 +0000 (14:20 +0200)]
charset: add `noexcept`