diff options
author | Jason Barron <jbarron@trolltech.com> | 2010-02-22 12:54:20 (GMT) |
---|---|---|
committer | Jason Barron <jbarron@trolltech.com> | 2010-02-23 10:35:43 (GMT) |
commit | 925dac20184820222765385b391a78d776ee61bb (patch) | |
tree | f4c7a5a5a39b979ec75b9960ce551a36fdab47e3 | |
parent | bbb996e6cbe4a19ceb72650dd82a8b3cf60553db (diff) | |
download | Qt-925dac20184820222765385b391a78d776ee61bb.zip Qt-925dac20184820222765385b391a78d776ee61bb.tar.gz Qt-925dac20184820222765385b391a78d776ee61bb.tar.bz2 |
Enable window size caching on Symbian NGA variants.
Enabling this flag saves us the round-trip to WSERV whenever
RWindow::Size() is called because the size is cached on the client
side. This can improve performance because functions like
eglSwapBuffers() call Size() to see if the window size has changed and
without the cache this introduces an extra IPC call for every frame.
Task-number: QT-2849
Reviewed-by: Iain
-rw-r--r-- | src/corelib/global/qglobal.h | 1 | ||||
-rw-r--r-- | src/gui/kernel/qapplication_s60.cpp | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index 4b1232d..04aac12 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -2413,6 +2413,7 @@ QT3_SUPPORT Q_CORE_EXPORT const char *qInstallPathSysconf(); //RWsPointerCursor is fixed, so don't use low performance sprites #define Q_SYMBIAN_FIXED_POINTER_CURSORS #define Q_SYMBIAN_HAS_EXTENDED_BITMAP_TYPE +#define Q_SYMBIAN_WINDOW_SIZE_CACHE //enabling new graphics resources #define QT_SYMBIAN_SUPPORTS_SGIMAGE #define QT_SYMBIAN_SUPPORTS_ADVANCED_POINTER diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp index bf3ad71..fdbbeb2 100644 --- a/src/gui/kernel/qapplication_s60.cpp +++ b/src/gui/kernel/qapplication_s60.cpp @@ -1146,6 +1146,10 @@ void qt_init(QApplicationPrivate * /* priv */, int) #endif S60->wsSession().SetAutoFlush(ETrue); +#ifdef Q_SYMBIAN_WINDOW_SIZE_CACHE + TRAP_IGNORE(S60->wsSession().EnableWindowSizeCacheL()); +#endif + S60->updateScreenSize(); |