From b1cea68f3484eba249e6e2db8d7b6220e7601984 Mon Sep 17 00:00:00 2001 From: Philipp Wolfer Date: Tue, 29 Jan 2019 11:33:18 +0000 Subject: [PATCH 1/2] Haiku: Avoid using locale.strxfrm --- picard/ui/options/interface.py | 2 +- picard/ui/options/releases.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/picard/ui/options/interface.py b/picard/ui/options/interface.py index 08fd264c..9ae9ed4b 100644 --- a/picard/ui/options/interface.py +++ b/picard/ui/options/interface.py @@ -138,7 +138,7 @@ class InterfaceOptionsPage(OptionsPage): self.ui.ui_language.addItem(_('System default'), '') language_list = [(l[0], l[1], _(l[2])) for l in UI_LANGUAGES] - def fcmp(x): return locale.strxfrm(x[2]) + def fcmp(x): return x[2] for lang_code, native, translation in sorted(language_list, key=fcmp): if native and native != translation: name = '%s (%s)' % (translation, native) diff --git a/picard/ui/options/releases.py b/picard/ui/options/releases.py index 117391fc..839a2f20 100644 --- a/picard/ui/options/releases.py +++ b/picard/ui/options/releases.py @@ -255,7 +255,7 @@ class ReleasesOptionsPage(OptionsPage): else: source_list = [(c[0], _(c[1])) for c in source.items()] - def fcmp(x): return strxfrm(x[1]) + def fcmp(x): return x[1] source_list.sort(key=fcmp) saved_data = config.setting[setting] move = [] -- 2.21.0 From 43065c9cfaed92f68d8c80aed220016e5815d260 Mon Sep 17 00:00:00 2001 From: Philipp Wolfer Date: Tue, 29 Jan 2019 11:35:33 +0000 Subject: [PATCH 2/3] Haiku: open URLs with default browser Try opening with "open", fall back to WebPositive --- picard/util/webbrowser2.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/picard/util/webbrowser2.py b/picard/util/webbrowser2.py index 7d003ccf..3c1c9c2a 100644 --- a/picard/util/webbrowser2.py +++ b/picard/util/webbrowser2.py @@ -17,7 +17,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -from sys import version_info +from sys import platform, version_info import webbrowser from PyQt5 import QtWidgets @@ -32,6 +32,13 @@ in PyQt and also adds a utility function for opening Picard URLS. """ +if platform == "haiku1": + haiku_default = webbrowser.GenericBrowser("open") + webbrowser.register("haiku-default", None, haiku_default, True) + webpositive = webbrowser.GenericBrowser("WebPositive") + webbrowser.register("webpositive", None, webpositive) + + def open(url): try: webbrowser.open(url) -- 2.21.0 From b9e96ea8fd0907c797b2424986023941ee8e1474 Mon Sep 17 00:00:00 2001 From: Philipp Wolfer Date: Fri, 19 Jul 2019 10:37:17 +0000 Subject: [PATCH 4/4] Haiku: use Haiku Qt style --- picard/tagger.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/picard/tagger.py b/picard/tagger.py index f3f0ff85..daf76a41 100644 --- a/picard/tagger.py +++ b/picard/tagger.py @@ -130,7 +130,7 @@ class Tagger(QtWidgets.QApplication): # Use the new fusion style from PyQt5 for a modern and consistent look # across all OSes. - if sys.platform != "darwin": + if sys.platform not in ("darwin", "haiku1"): self.setStyle('Fusion') # Set the WM_CLASS to 'MusicBrainz-Picard' so desktop environments -- 2.21.0