mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2025-01-27 23:44:04 +00:00
extra/qt5 to 5.5.1-1
This commit is contained in:
parent
f36d8b5b79
commit
098adde256
4 changed files with 4 additions and 210 deletions
|
@ -12,6 +12,8 @@
|
||||||
# - drop webengine package and skip in configure
|
# - drop webengine package and skip in configure
|
||||||
# - patch for AArch64 support in qtwebkit
|
# - patch for AArch64 support in qtwebkit
|
||||||
|
|
||||||
|
highmem=1
|
||||||
|
|
||||||
pkgbase=qt5
|
pkgbase=qt5
|
||||||
pkgname=('qt5-3d'
|
pkgname=('qt5-3d'
|
||||||
'qt5-base'
|
'qt5-base'
|
||||||
|
@ -38,8 +40,8 @@ pkgname=('qt5-3d'
|
||||||
'qt5-websockets'
|
'qt5-websockets'
|
||||||
'qt5-x11extras'
|
'qt5-x11extras'
|
||||||
'qt5-xmlpatterns')
|
'qt5-xmlpatterns')
|
||||||
pkgver=5.5.0
|
pkgver=5.5.1
|
||||||
pkgrel=2
|
pkgrel=1
|
||||||
arch=('i686' 'x86_64')
|
arch=('i686' 'x86_64')
|
||||||
url='http://www.qt.io/developers'
|
url='http://www.qt.io/developers'
|
||||||
license=('GPL3' 'LGPL' 'FDL' 'custom')
|
license=('GPL3' 'LGPL' 'FDL' 'custom')
|
||||||
|
@ -54,9 +56,6 @@ groups=('qt' 'qt5')
|
||||||
_pkgfqn="qt-everywhere-opensource-src-${pkgver}"
|
_pkgfqn="qt-everywhere-opensource-src-${pkgver}"
|
||||||
source=("http://download.qt-project.org/official_releases/qt/${pkgver%.*}/${pkgver}/single/${_pkgfqn}.tar.xz"
|
source=("http://download.qt-project.org/official_releases/qt/${pkgver%.*}/${pkgver}/single/${_pkgfqn}.tar.xz"
|
||||||
'assistant.desktop' 'designer.desktop' 'linguist.desktop' 'qdbusviewer.desktop'
|
'assistant.desktop' 'designer.desktop' 'linguist.desktop' 'qdbusviewer.desktop'
|
||||||
'keypad-shortcuts.patch'
|
|
||||||
'ae51e360f986698eaf41fdb38f8a878a50f69be1.patch'
|
|
||||||
'b0b08cc0e4e38504d6b833702f7477aee4e2a192.patch'
|
|
||||||
'qt5webkit-0002-Fix-QtWebKit-build-on-ARM-softfp.patch'
|
'qt5webkit-0002-Fix-QtWebKit-build-on-ARM-softfp.patch'
|
||||||
'0001-Add-ARM-64-support.patch')
|
'0001-Add-ARM-64-support.patch')
|
||||||
md5sums=('65d5282f3dee0336da9ed1f77148952f'
|
md5sums=('65d5282f3dee0336da9ed1f77148952f'
|
||||||
|
@ -64,21 +63,11 @@ md5sums=('65d5282f3dee0336da9ed1f77148952f'
|
||||||
'76e150b20178d2d43801f7367232e5f7'
|
'76e150b20178d2d43801f7367232e5f7'
|
||||||
'188da8f4c87316e730ebf1c6217bf5a0'
|
'188da8f4c87316e730ebf1c6217bf5a0'
|
||||||
'322b419b16c75d4de0ee7ad0a246caa1'
|
'322b419b16c75d4de0ee7ad0a246caa1'
|
||||||
'665439088fc7de52a97455c5eaf87889'
|
|
||||||
'4587b9a9438a8e86235a1c1b26dce1e8'
|
|
||||||
'cea675fa4b394653e3bc9f80f9edf4b0'
|
|
||||||
'd55ad1f1c90725834b44eada5db4e401')
|
'd55ad1f1c90725834b44eada5db4e401')
|
||||||
|
|
||||||
prepare() {
|
prepare() {
|
||||||
cd ${_pkgfqn}
|
cd ${_pkgfqn}
|
||||||
|
|
||||||
# https://bugs.archlinux.org/task/44676
|
|
||||||
(cd qtbase; patch -p1 -i "$srcdir/keypad-shortcuts.patch")
|
|
||||||
|
|
||||||
# https://bugs.archlinux.org/task/43986
|
|
||||||
(cd qtbase; patch -p1 -i "$srcdir/ae51e360f986698eaf41fdb38f8a878a50f69be1.patch"
|
|
||||||
patch -p1 -i "$srcdir/b0b08cc0e4e38504d6b833702f7477aee4e2a192.patch")
|
|
||||||
|
|
||||||
# Build qmake using Arch {C,LD}FLAGS
|
# Build qmake using Arch {C,LD}FLAGS
|
||||||
# This also sets default {C,CXX,LD}FLAGS for projects built using qmake
|
# This also sets default {C,CXX,LD}FLAGS for projects built using qmake
|
||||||
sed -i -e "s|^\(QMAKE_CFLAGS_RELEASE.*\)|\1 ${CFLAGS}|" \
|
sed -i -e "s|^\(QMAKE_CFLAGS_RELEASE.*\)|\1 ${CFLAGS}|" \
|
||||||
|
|
|
@ -1,56 +0,0 @@
|
||||||
From ae51e360f986698eaf41fdb38f8a878a50f69be1 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Alexander Volkov <a.volkov@rusbitech.ru>
|
|
||||||
Date: Fri, 19 Jun 2015 13:34:11 +0300
|
|
||||||
Subject: [PATCH] xcb: Ignore disabling of outputs in the middle of the mode
|
|
||||||
switch
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=utf8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
X server may send RROutputChangeNotify event with null crtc and mode,
|
|
||||||
when it switches an output mode. Request RROutputInfo to distinguish
|
|
||||||
this case from the case when the output is explicitly disabled.
|
|
||||||
|
|
||||||
Change-Id: I4c2356ec71dbcc8013009ea8a6f46dd11f19d6bb
|
|
||||||
Task-number: QTBUG-44158
|
|
||||||
Task-number: QTBUG-46786
|
|
||||||
Task-number: QTBUG-46822
|
|
||||||
Reviewed-by: Daniel Vrátil <dvratil@redhat.com>
|
|
||||||
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
|
|
||||||
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
|
|
||||||
---
|
|
||||||
src/plugins/platforms/xcb/qxcbconnection.cpp | 18 +++++++++++++-----
|
|
||||||
1 file changed, 13 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp
|
|
||||||
index 0867615..29e1fd1 100644
|
|
||||||
--- a/src/plugins/platforms/xcb/qxcbconnection.cpp
|
|
||||||
+++ b/src/plugins/platforms/xcb/qxcbconnection.cpp
|
|
||||||
@@ -265,11 +265,19 @@ void QXcbConnection::updateScreens(const xcb_randr_notify_event_t *event)
|
|
||||||
} else if (screen) {
|
|
||||||
// Screen has been disabled -> remove
|
|
||||||
if (output.crtc == XCB_NONE && output.mode == XCB_NONE) {
|
|
||||||
- qCDebug(lcQpaScreen) << "output" << screen->name() << "has been disabled";
|
|
||||||
- m_screens.removeOne(screen);
|
|
||||||
- foreach (QXcbScreen *otherScreen, m_screens)
|
|
||||||
- otherScreen->removeVirtualSibling((QPlatformScreen *) screen);
|
|
||||||
- QXcbIntegration::instance()->destroyScreen(screen);
|
|
||||||
+ xcb_randr_get_output_info_cookie_t outputInfoCookie =
|
|
||||||
+ xcb_randr_get_output_info(xcb_connection(), output.output, output.config_timestamp);
|
|
||||||
+ QScopedPointer<xcb_randr_get_output_info_reply_t, QScopedPointerPodDeleter> outputInfo(
|
|
||||||
+ xcb_randr_get_output_info_reply(xcb_connection(), outputInfoCookie, NULL));
|
|
||||||
+ if (outputInfo->crtc == XCB_NONE) {
|
|
||||||
+ qCDebug(lcQpaScreen) << "output" << screen->name() << "has been disabled";
|
|
||||||
+ m_screens.removeOne(screen);
|
|
||||||
+ foreach (QXcbScreen *otherScreen, m_screens)
|
|
||||||
+ otherScreen->removeVirtualSibling((QPlatformScreen *) screen);
|
|
||||||
+ QXcbIntegration::instance()->destroyScreen(screen);
|
|
||||||
+ } else {
|
|
||||||
+ qCDebug(lcQpaScreen) << "output" << screen->name() << "has been temporarily disabled for the mode switch";
|
|
||||||
+ }
|
|
||||||
} else {
|
|
||||||
// Just update existing screen
|
|
||||||
screen->updateGeometry(output.config_timestamp);
|
|
||||||
--
|
|
||||||
2.3.5
|
|
||||||
|
|
|
@ -1,45 +0,0 @@
|
||||||
From b0b08cc0e4e38504d6b833702f7477aee4e2a192 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ralf Jung <post@ralfj.de>
|
|
||||||
Date: Sun, 5 Jul 2015 12:15:29 +0200
|
|
||||||
Subject: [PATCH] When a screen comes back online, the windows need to be told
|
|
||||||
about it
|
|
||||||
|
|
||||||
On my system, this fixes the misbehavior of Qt applications when the (only) active screen is
|
|
||||||
switched, e.g. from an external screen to the laptop.
|
|
||||||
This behavior is caused by the screen() of widgets to be set to NULL when their screen goes away.
|
|
||||||
When a new screen comes online, the widgets *should* be told about it, but they are not. The only
|
|
||||||
place that "maybeSetScreen" is called is when an existing screen changes its geometry, but not
|
|
||||||
when a screen gets enabled without its geometry being affected in any way (e.g. because it was
|
|
||||||
just disabled via xrandr, but has been connected all along). This makes sure that "maybeSetScreen"
|
|
||||||
is also called when a screen gets enabled.
|
|
||||||
|
|
||||||
Task-number: QTBUG-47041
|
|
||||||
Change-Id: Ic72d6beaa544bf9a4efdbea0830b1bc0d6ce5362
|
|
||||||
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
|
|
||||||
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
|
|
||||||
---
|
|
||||||
src/plugins/platforms/xcb/qxcbconnection.cpp | 8 ++++++++
|
|
||||||
1 file changed, 8 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp
|
|
||||||
index 74f48b0..0867615 100644
|
|
||||||
--- a/src/plugins/platforms/xcb/qxcbconnection.cpp
|
|
||||||
+++ b/src/plugins/platforms/xcb/qxcbconnection.cpp
|
|
||||||
@@ -252,6 +252,14 @@ void QXcbConnection::updateScreens(const xcb_randr_notify_event_t *event)
|
|
||||||
otherScreen->addVirtualSibling(screen);
|
|
||||||
m_screens << screen;
|
|
||||||
QXcbIntegration::instance()->screenAdded(screen, screen->isPrimary());
|
|
||||||
+
|
|
||||||
+ // Windows which had null screens have already had expose events by now.
|
|
||||||
+ // They need to be told the screen is back, it's OK to render.
|
|
||||||
+ foreach (QWindow *window, QGuiApplication::topLevelWindows()) {
|
|
||||||
+ QXcbWindow *xcbWin = static_cast<QXcbWindow*>(window->handle());
|
|
||||||
+ if (xcbWin)
|
|
||||||
+ xcbWin->maybeSetScreen(screen);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
// else ignore disabled screens
|
|
||||||
} else if (screen) {
|
|
||||||
--
|
|
||||||
2.3.5
|
|
||||||
|
|
|
@ -1,94 +0,0 @@
|
||||||
From c137502c7fd7550c780c9531ec414098d8101757 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Alexander Volkov <a.volkov@rusbitech.ru>
|
|
||||||
Date: Thu, 18 Sep 2014 16:16:26 +0400
|
|
||||||
Subject: Fix shortcuts with keypad keys
|
|
||||||
|
|
||||||
The way of searching a shortcut match for a key without the keypad
|
|
||||||
modifier introduced in 547a1bea492954d828aa0798be93384669812489 is
|
|
||||||
not correct. QKeyEvent::setModifiers() doesn't change native scan code
|
|
||||||
so we get the incorrect QKeyEvent object which is eventually passed to
|
|
||||||
the implementation of QPlatformIntegration::possibleKeys().
|
|
||||||
And then QPlatformIntegration::possibleKeys() returns the same result
|
|
||||||
as for the original QKeyEvent object.
|
|
||||||
|
|
||||||
So to fix it we have to remove Qt::KeypadModifier from keys after
|
|
||||||
calling the implementation of QPlatformIntegration::possibleKeys(),
|
|
||||||
as it was before 547a1bea492954d828aa0798be93384669812489.
|
|
||||||
|
|
||||||
Task-number: QTBUG-33093
|
|
||||||
Task-number: QTBUG-20191
|
|
||||||
Change-Id: I5b33c9b6cf2c06b133166a31eba9aff9181c9483
|
|
||||||
---
|
|
||||||
src/gui/kernel/qshortcutmap.cpp | 12 +++++-------
|
|
||||||
src/gui/kernel/qshortcutmap_p.h | 4 ++--
|
|
||||||
2 files changed, 7 insertions(+), 9 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/gui/kernel/qshortcutmap.cpp b/src/gui/kernel/qshortcutmap.cpp
|
|
||||||
index c915ed39..c13c82c 100644
|
|
||||||
--- a/src/gui/kernel/qshortcutmap.cpp
|
|
||||||
+++ b/src/gui/kernel/qshortcutmap.cpp
|
|
||||||
@@ -388,9 +388,7 @@ QKeySequence::SequenceMatch QShortcutMap::nextState(QKeyEvent *e)
|
|
||||||
result = find(e);
|
|
||||||
if (result == QKeySequence::NoMatch && (e->modifiers() & Qt::KeypadModifier)) {
|
|
||||||
// Try to find a match without keypad modifier
|
|
||||||
- QKeyEvent event = *e;
|
|
||||||
- event.setModifiers(e->modifiers() & ~Qt::KeypadModifier);
|
|
||||||
- result = find(&event);
|
|
||||||
+ result = find(e, Qt::KeypadModifier);
|
|
||||||
}
|
|
||||||
if (result == QKeySequence::NoMatch && e->modifiers() & Qt::ShiftModifier) {
|
|
||||||
// If Shift + Key_Backtab, also try Shift + Qt::Key_Tab
|
|
||||||
@@ -443,13 +441,13 @@ bool QShortcutMap::hasShortcutForKeySequence(const QKeySequence &seq) const
|
|
||||||
which can be access through matches().
|
|
||||||
\sa matches
|
|
||||||
*/
|
|
||||||
-QKeySequence::SequenceMatch QShortcutMap::find(QKeyEvent *e)
|
|
||||||
+QKeySequence::SequenceMatch QShortcutMap::find(QKeyEvent *e, int ignoredModifiers)
|
|
||||||
{
|
|
||||||
Q_D(QShortcutMap);
|
|
||||||
if (!d->sequences.count())
|
|
||||||
return QKeySequence::NoMatch;
|
|
||||||
|
|
||||||
- createNewSequences(e, d->newEntries);
|
|
||||||
+ createNewSequences(e, d->newEntries, ignoredModifiers);
|
|
||||||
#if defined(DEBUG_QSHORTCUTMAP)
|
|
||||||
qDebug() << "Possible shortcut key sequences:" << d->newEntries;
|
|
||||||
#endif
|
|
||||||
@@ -551,7 +549,7 @@ void QShortcutMap::clearSequence(QVector<QKeySequence> &ksl)
|
|
||||||
Alters \a seq to the new sequence state, based on the
|
|
||||||
current sequence state, and the new key event \a e.
|
|
||||||
*/
|
|
||||||
-void QShortcutMap::createNewSequences(QKeyEvent *e, QVector<QKeySequence> &ksl)
|
|
||||||
+void QShortcutMap::createNewSequences(QKeyEvent *e, QVector<QKeySequence> &ksl, int ignoredModifiers)
|
|
||||||
{
|
|
||||||
Q_D(QShortcutMap);
|
|
||||||
QList<int> possibleKeys = QKeyMapper::possibleKeys(e);
|
|
||||||
@@ -581,7 +579,7 @@ void QShortcutMap::createNewSequences(QKeyEvent *e, QVector<QKeySequence> &ksl)
|
|
||||||
curKsl.setKey(0, 2);
|
|
||||||
curKsl.setKey(0, 3);
|
|
||||||
}
|
|
||||||
- curKsl.setKey(possibleKeys.at(pkNum), index);
|
|
||||||
+ curKsl.setKey(possibleKeys.at(pkNum) & ~ignoredModifiers, index);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
diff --git a/src/gui/kernel/qshortcutmap_p.h b/src/gui/kernel/qshortcutmap_p.h
|
|
||||||
index 3959c2c..39a8eac 100644
|
|
||||||
--- a/src/gui/kernel/qshortcutmap_p.h
|
|
||||||
+++ b/src/gui/kernel/qshortcutmap_p.h
|
|
||||||
@@ -96,10 +96,10 @@ private:
|
|
||||||
QKeySequence::SequenceMatch state();
|
|
||||||
void dispatchEvent(QKeyEvent *e);
|
|
||||||
|
|
||||||
- QKeySequence::SequenceMatch find(QKeyEvent *e);
|
|
||||||
+ QKeySequence::SequenceMatch find(QKeyEvent *e, int ignoredModifiers = 0);
|
|
||||||
QKeySequence::SequenceMatch matches(const QKeySequence &seq1, const QKeySequence &seq2) const;
|
|
||||||
QVector<const QShortcutEntry *> matches() const;
|
|
||||||
- void createNewSequences(QKeyEvent *e, QVector<QKeySequence> &ksl);
|
|
||||||
+ void createNewSequences(QKeyEvent *e, QVector<QKeySequence> &ksl, int ignoredModifiers);
|
|
||||||
void clearSequence(QVector<QKeySequence> &ksl);
|
|
||||||
int translateModifiers(Qt::KeyboardModifiers modifiers);
|
|
||||||
|
|
||||||
--
|
|
||||||
cgit v0.11.0
|
|
||||||
|
|
Loading…
Reference in a new issue