KDE Frameworks 5.9.0

epel8
Dan Vrátil 10 years ago
parent 03407d0f70
commit b963f1db9c

1
.gitignore vendored

@ -9,3 +9,4 @@
/ki18n-5.6.0.tar.xz /ki18n-5.6.0.tar.xz
/ki18n-5.7.0.tar.xz /ki18n-5.7.0.tar.xz
/ki18n-5.8.0.tar.xz /ki18n-5.8.0.tar.xz
/ki18n-5.9.0.tar.xz

@ -1,80 +0,0 @@
commit fded87b06de0c956131b0763716b1100e46e1408
Author: Lukáš Tinkl <lukas@kde.org>
Date: Thu Mar 19 16:35:07 2015 +0100
preload the global Qt catalog when using i18n()
tested with eg. systemsettings; without the patch, the fonts kcm dialogs
(QFontDialog) are in English
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 8c206f9..818595e 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -4,6 +4,7 @@ set(libki18n_SRCS
kcatalog.cpp
kuitmarkup.cpp
common_helpers.cpp
+ main.cpp
)
add_library(KF5I18n ${libki18n_SRCS})
diff --git a/src/main.cpp b/src/main.cpp
new file mode 100644
index 0000000..6b46f41
--- /dev/null
+++ b/src/main.cpp
@@ -0,0 +1,53 @@
+/* This file is part of the KDE libraries
+ Copyright (C) 2015 Lukáš Tinkl <ltinkl@redhat.com>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#include <QCoreApplication>
+#include <QLocale>
+#include <QLibraryInfo>
+#include <QTranslator>
+
+// load global Qt translation, needed in KDE e.g. by lots of builtin dialogs (QColorDialog, QFontDialog) that we use
+static bool loadTranslation(const QString &localeName)
+{
+ QTranslator *translator = new QTranslator(QCoreApplication::instance());
+ if (!translator->load(QLocale(localeName), QStringLiteral("qt_"), QString(), QLibraryInfo::location(QLibraryInfo::TranslationsPath))) {
+ delete translator;
+ return false;
+ }
+ QCoreApplication::instance()->installTranslator(translator);
+ return true;
+}
+
+static void load()
+{
+ // The way Qt translation system handles plural forms makes it necessary to
+ // have a translation file which contains only plural forms for `en`. That's
+ // why we load the `en` translation unconditionally, then load the
+ // translation for the current locale to overload it.
+ loadTranslation(QStringLiteral("en"));
+
+ QLocale locale = QLocale::system();
+ if (locale.name() != QStringLiteral("en")) {
+ if (!loadTranslation(locale.name())) {
+ loadTranslation(locale.bcp47Name());
+ }
+ }
+}
+
+Q_COREAPP_STARTUP_FUNCTION(load)

@ -1,8 +1,8 @@
%global framework ki18n %global framework ki18n
Name: kf5-%{framework} Name: kf5-%{framework}
Version: 5.8.0 Version: 5.9.0
Release: 2%{?dist} Release: 1%{?dist}
Summary: KDE Frameworks 5 Tier 1 addon for localization Summary: KDE Frameworks 5 Tier 1 addon for localization
License: LGPLv2+ License: LGPLv2+
@ -17,10 +17,6 @@ URL: http://www.kde.org
%endif %endif
Source0: http://download.kde.org/%{stable}/frameworks/%{versiondir}/%{framework}-%{version}.tar.xz Source0: http://download.kde.org/%{stable}/frameworks/%{versiondir}/%{framework}-%{version}.tar.xz
# upstream patches
Patch1: 0001-preload-the-global-qt-catalog-when-using-i18n.patch
BuildRequires: perl BuildRequires: perl
BuildRequires: kf5-rpm-macros BuildRequires: kf5-rpm-macros
@ -88,6 +84,9 @@ make %{?_smp_mflags} -C %{_target_platform}
%changelog %changelog
* Tue Apr 07 2015 Daniel Vrátil <dvratil@redhat.com> - 5.9.0-1
- KDE Frameworks 5.9.0
* Tue Mar 24 2015 Daniel Vrátil <dvratil@redhat.com> - 5.8.0-2 * Tue Mar 24 2015 Daniel Vrátil <dvratil@redhat.com> - 5.8.0-2
- add upstream patch to fix to load Qt catalogs too - add upstream patch to fix to load Qt catalogs too

@ -1 +1 @@
b5e61aeba4216e352cb692ffed2d0c21 ki18n-5.8.0.tar.xz 12d24d6133ac0e0cc428887feded22f0 ki18n-5.9.0.tar.xz

Loading…
Cancel
Save