summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2009-12-21 13:00:50 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2009-12-21 13:00:50 (GMT)
commitbeb16e0d8b3b81a67170c578a72d3816b87569cc (patch)
tree58610478853ebd85226469117dc608a64116c7de
parent69e848ff4a8dad648f706a34b106b8a84155c875 (diff)
parent71ee64f5a44dc310272b14fe6cd913b2e75672ed (diff)
downloadQt-beb16e0d8b3b81a67170c578a72d3816b87569cc.zip
Qt-beb16e0d8b3b81a67170c578a72d3816b87569cc.tar.gz
Qt-beb16e0d8b3b81a67170c578a72d3816b87569cc.tar.bz2
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public: Edit focus should not be lost unless by explicit action RVCT 2.2 compiler can't handle static inline functions with templates. Forwarded return value from QtMainWrapper() to E32Main() exit code.
-rw-r--r--src/gui/image/qpixmapfilter.cpp8
-rw-r--r--src/gui/kernel/qapplication.cpp6
-rw-r--r--src/gui/text/qtextcontrol.cpp6
-rw-r--r--src/gui/widgets/qlineedit.cpp6
-rw-r--r--src/s60main/qts60main.cpp2
5 files changed, 20 insertions, 8 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 <int shift>
-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<int aprec, int zprec>
-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<int aprec, int zprec>
-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<int aprec, int zprec, bool alphaOnly>
-static inline void blurrow(QImage & im, int line, int alpha)
+inline void blurrow(QImage & im, int line, int alpha)
{
uchar *bptr = im.scanLine(line);
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;
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;