From 072a571fc0c41610b76465d76eb635b959eaad37 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Mon, 21 Dec 2009 12:35:50 +0200 Subject: Forwarded return value from QtMainWrapper() to E32Main() exit code. Previously only leaves from QtMainWrapper() were forwarded. Task-number: QTBUG-6422 Reviewed-by: axis --- src/s60main/qts60main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/s60main/qts60main.cpp b/src/s60main/qts60main.cpp index 9f2d8c4..8923fb9 100644 --- a/src/s60main/qts60main.cpp +++ b/src/s60main/qts60main.cpp @@ -52,7 +52,7 @@ GLDEF_C TInt E32Main() { CTrapCleanup *cleanupStack = q_check_ptr(CTrapCleanup::New()); TInt err = 0; - TRAP(err, QtMainWrapper()); + TRAP(err, err = QtMainWrapper()); delete cleanupStack; return err; -- cgit v0.12 From 3e45dbcc89a9f2284d8ab89e0c75bd7b275e6b61 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Mon, 21 Dec 2009 12:49:12 +0200 Subject: RVCT 2.2 compiler can't handle static inline functions with templates. Removed static keywords from offending functions. Reviewed-by: axis --- src/gui/image/qpixmapfilter.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/gui/image/qpixmapfilter.cpp b/src/gui/image/qpixmapfilter.cpp index caa0752..78a6b43 100644 --- a/src/gui/image/qpixmapfilter.cpp +++ b/src/gui/image/qpixmapfilter.cpp @@ -602,7 +602,7 @@ QRectF QPixmapBlurFilter::boundingRectFor(const QRectF &rect) const } template -static inline int static_shift(int value) +inline int static_shift(int value) { if (shift == 0) return value; @@ -613,7 +613,7 @@ static inline int static_shift(int value) } template -static inline void blurinner(uchar *bptr, int &zR, int &zG, int &zB, int &zA, int alpha) +inline void blurinner(uchar *bptr, int &zR, int &zG, int &zB, int &zA, int alpha) { QRgb *pixel = (QRgb *)bptr; @@ -646,7 +646,7 @@ static inline void blurinner(uchar *bptr, int &zR, int &zG, int &zB, int &zA, in const int alphaIndex = (QSysInfo::ByteOrder == QSysInfo::BigEndian ? 0 : 3); template -static inline void blurinner_alphaOnly(uchar *bptr, int &z, int alpha) +inline void blurinner_alphaOnly(uchar *bptr, int &z, int alpha) { const int A_zprec = int(*(bptr)) << zprec; const int z_zprec = z >> aprec; @@ -655,7 +655,7 @@ static inline void blurinner_alphaOnly(uchar *bptr, int &z, int alpha) } template -static inline void blurrow(QImage & im, int line, int alpha) +inline void blurrow(QImage & im, int line, int alpha) { uchar *bptr = im.scanLine(line); -- cgit v0.12 From 71ee64f5a44dc310272b14fe6cd913b2e75672ed Mon Sep 17 00:00:00 2001 From: Sami Merila Date: Mon, 21 Dec 2009 13:28:47 +0200 Subject: Edit focus should not be lost unless by explicit action Currently non-touch devices lose edit focus if window switch happens. I.e. in cases when screensaver activates, an incoming call occurs, a global notification is shown... With this fix, edit focus remain active, until user removes the focus explicitly. Task-number: 4792 Reviewed-by: axis --- src/gui/kernel/qapplication.cpp | 6 +++++- src/gui/text/qtextcontrol.cpp | 6 +++++- src/gui/widgets/qlineedit.cpp | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/gui/kernel/qapplication.cpp b/src/gui/kernel/qapplication.cpp index bd13423..4165c95 100644 --- a/src/gui/kernel/qapplication.cpp +++ b/src/gui/kernel/qapplication.cpp @@ -2096,7 +2096,11 @@ void QApplicationPrivate::setFocusWidget(QWidget *focus, Qt::FocusReason reason) if (prev) { #ifdef QT_KEYPAD_NAVIGATION if (QApplication::keypadNavigationEnabled()) { - if (prev->hasEditFocus() && reason != Qt::PopupFocusReason) + if (prev->hasEditFocus() && reason != Qt::PopupFocusReason +#ifdef Q_OS_SYMBIAN + && reason != Qt::ActiveWindowFocusReason +#endif + ) prev->setEditFocus(false); } #endif diff --git a/src/gui/text/qtextcontrol.cpp b/src/gui/text/qtextcontrol.cpp index f96f66b..f523226 100644 --- a/src/gui/text/qtextcontrol.cpp +++ b/src/gui/text/qtextcontrol.cpp @@ -1938,7 +1938,11 @@ void QTextControlPrivate::focusEvent(QFocusEvent *e) emit q->updateRequest(q->selectionRect()); if (e->gotFocus()) { #ifdef QT_KEYPAD_NAVIGATION - if (!QApplication::keypadNavigationEnabled() || (hasEditFocus && e->reason() == Qt::PopupFocusReason)) { + if (!QApplication::keypadNavigationEnabled() || (hasEditFocus && (e->reason() == Qt::PopupFocusReason +#ifdef Q_OS_SYMBIAN + || e->reason() == Qt::ActiveWindowFocusReason +#endif + ))) { #endif cursorOn = (interactionFlags & Qt::TextSelectableByKeyboard); if (interactionFlags & Qt::TextEditable) { diff --git a/src/gui/widgets/qlineedit.cpp b/src/gui/widgets/qlineedit.cpp index 15dcda2..573b2b5 100644 --- a/src/gui/widgets/qlineedit.cpp +++ b/src/gui/widgets/qlineedit.cpp @@ -1761,7 +1761,11 @@ void QLineEdit::focusInEvent(QFocusEvent *e) d->clickCausedFocus = 1; } #ifdef QT_KEYPAD_NAVIGATION - if (!QApplication::keypadNavigationEnabled() || (hasEditFocus() && e->reason() == Qt::PopupFocusReason)){ + if (!QApplication::keypadNavigationEnabled() || (hasEditFocus() && ( e->reason() == Qt::PopupFocusReason +#ifdef Q_OS_SYMBIAN + || e->reason() == Qt::ActiveWindowFocusReason +#endif + ))) { #endif d->control->setCursorBlinkPeriod(QApplication::cursorFlashTime()); QStyleOptionFrameV2 opt; -- cgit v0.12