| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To avoid calling the bounding box function for the same non-printable
characters in every call, we cache them as empty in the coords table
and bail out before painting them. This patch also fixes some possible
reads of uninitialized memory (reference to return value) and reference
to a default constructed object consisting of uninitialized pods.
Reviewed-by: Samuel
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (33 commits)
Add inter-process binary shader cache for MeeGo
Track average wait times under our maximum spin time threshold
Store and track spin times in nanosecond resolution
Optimize adaptive spinning mutex code
Improve QMutex contention performance on Linux
Improve QMutex contention performance on Mac OS X
Disable spinning under lock contention on single CPU machines
Remove unnecessary testAndSetAcquire from QMutex::lockInternal()
Move contender count maintenance to QMutexPrivate
test contention when using 2 mutexes
Ensure that every thread does contend in the contention tests
Add baseline test data to measure test overhead
Test contention performance for long (10ms) critical sections
Add a benchmark for contended and uncontended QMutex performance
Removed QMutexPrivate::self() declaration
Add QElapsedTimer::nsecsElapsed() const
Delay creation of the process manager
Make the QRasterPaintEngineState copy constructor cheaper.
Micro-optimization for QSpanData::setup()
define FSCTL_SET_REPARSE_POINT in test header
...
|
| |/
| |
| |
| |
| |
| |
| |
| | |
This patch significantly reduces MeeGo app startup times by caching binary
shaders in a shared memory segment.
Reviewed-by: Robert Griebl
Reviewed-by: Samuel Rødal
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
demos/declarative/minehunt/minehunt.pro
src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp
src/plugins/phonon/mmf/mmf.pro
src/s60installs/s60installs.pro
tests/auto/qapplication/test/test.pro
tests/auto/qgraphicsview/tst_qgraphicsview.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It seems that copying small rectangles from glTexSubImage2D into a
texture which is 2048x2048 is busted on some SGX drivers, even though
the driver reports 2048 as the maximum texture size. This caused text to
turn into flickering garbage once the texture glyph cache had grown to
its max size (e.g. when painting very many Chinese glyphs.) To work
around the problem, we hardcore the maximum texture height to 1024 on
this driver so that the texture glyph cache is reset whenever that
size is exceeded.
Task-number: QT-3971
Done-with: Samuel
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Don't delete FBO when resetting glyph cache
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When the glyph cache is cleared because the max texture size has been
exceeded, we shouldn't delete the fbo as this is only created in
setContext() and will thus not be recreated. All subsequent resizing
of the cache will fail.
Task-number: QT-3971
Reviewed-by: Samuel
|
| | |
| | |
| | |
| | | |
Fix coding style of merge request
|
| |/
| |
| |
| |
| |
| | |
Merge-request: 2527
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
Reviewed-by: Samuel Rødal
|
| |
| |
| |
| |
| |
| |
| |
| | |
Down-scale images or pixmaps that are above the max texture size. Not
optimal performance-wise, but better than failing.
Task-number: QTBUG-16033
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| |
| |
| |
| |
| |
| |
| |
| | |
Get rid of the aliased coordinate delta, like we already did in the
raster paint engine.
Task-number: QTBUG-16043
Reviewed-by: Gunnar Sletta
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure
src/gui/graphicsview/qgraphicslayout.cpp
src/gui/text/qfontengine_s60.cpp
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/qwindowsurface_gl.cpp
src/s60installs/bwins/QtGuiu.def
src/s60installs/eabi/QtGuiu.def
tests/auto/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since scaled text is backed by an A8 glyph cache, it needs to repopulate
even if it has previously populated the cache for the unscaled text.
This means that we need to record in the userData that the type of the
cache is not the same as the last time. Otherwise the A8 version of the
cache will only be updated when it's created and when the text actually
changes, leading to glyphs missing on screen when zooming text using
a scale.
Task-number: QTBUG-16012
Reviewed-by: Gunnar
|
| |
| |
| |
| |
| |
| |
| |
| | |
As long as the final clip area is rectangular and axis aligned we can
use a scissor clip. This prevents performance problems when doing
90-degree rotated rectangle clips.
Reviewed-by: Bjørn Erik Nilsen
|
| |
| |
| |
| |
| |
| | |
If we recreate the texture glyph cache, we also need to repopulate.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| |
| |
| |
| |
| | |
Merge-request: 2523
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
| |
| |
| |
| |
| | |
Merge-request: 2523
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When there is no transformation on a glyph in the GL texture glyph
cache, it will take the RGB code path to support subpixel antialiasing.
In this code path we would ask glTextImage2D() to convert from a
GL_ALPHA buffer to an internal format of GL_RGBA. This is not supported
on OpenGL ES 2, and would cause missing text for some drivers.
The change also fixes a typo in an #ifdef.
Task-number: QTBUG-15789
Reviewed-by: Kim
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
scm.dev.nokia.troll.no:qt/qt-integration into master-integration
* 'qt-master-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration: (101 commits)
Fix QTextEdit::selectAll crash from textChanged()
Fix proxy reading from gconf so that it is only done once / session.
rebuild configure
fix misleading uppercasing deprecation warning
Enable Phonon on Symbian by default.
Disable OpenGL on Symbian only by default instead of always
VFP type on ARM option in Linux configure script
Adding -dont-process option to Unix configure script
Synchronized configure.exe OpenGL options with Unix configure
build lrelease as part of the "libs" part.
purge vestiges of imageformat-plugins
Unify epocroot usage in createpackage and patch_capabilities scripts
Update visual tests for the recent qmlviewer change
Do not use openGL on Mac OS X for QML visual tests
Give qmlviewer a minimum size if root object has no size.
Add 'Writing New Components' docs, and document the connect() function.
Mention that image providers should be added before loading QML files
Update QML visual tests
Cleaned up sis_targets.prf
Append qml import path individually for each available drive on Symbian
...
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
scm.dev.nokia.troll.no:qt/qt-integration into master-integration
* 'qt-master-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration: (100 commits)
Fix proxy reading from gconf so that it is only done once / session.
rebuild configure
fix misleading uppercasing deprecation warning
Enable Phonon on Symbian by default.
Disable OpenGL on Symbian only by default instead of always
VFP type on ARM option in Linux configure script
Adding -dont-process option to Unix configure script
Synchronized configure.exe OpenGL options with Unix configure
build lrelease as part of the "libs" part.
purge vestiges of imageformat-plugins
Unify epocroot usage in createpackage and patch_capabilities scripts
Update visual tests for the recent qmlviewer change
Do not use openGL on Mac OS X for QML visual tests
Give qmlviewer a minimum size if root object has no size.
Add 'Writing New Components' docs, and document the connect() function.
Mention that image providers should be added before loading QML files
Update QML visual tests
Cleaned up sis_targets.prf
Append qml import path individually for each available drive on Symbian
Update TextInput when echoMode changes.
...
|
| | |\ \
| | | |/
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
configure
qmake/generators/win32/msbuild_objectmodel.cpp
src/gui/image/qpnghandler.cpp
src/network/access/qnetworkaccessdatabackend.cpp
src/opengl/qgl_x11egl.cpp
tests/auto/qnetworkreply/tst_qnetworkreply.cpp
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
In OpenGL ES 2, these functions are always expected to be present, so
the address can never be zero. So only test for the function being
found if we tried to find it dynamicaly.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Just add some Q_UNUSED for parameters or remove the variable we don't
need for the others.
Reviewed-by: Trust Me
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When we iterate over the cache to figure out which objects to remove,
we would change the internal order of the cache,
leading to a suboptimal caching behavior.
Instead, let QCache decide which objects to remove when the cache
overflows, based on its internal last-recently-used algorithm.
Reviewed-by: Samuel Rødal
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
print out which GLSL shader that failed compilation for better debugging
QSystemTrayIcon::messageTimeout() signal implemented
--warn
compile with debug defined enabled
|
| |\ \ |
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | |/ /
| |/| | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If the mipmap property is set, QGLFramebufferObject will
allocate memory for mipmap levels.
Reviewed-by: Gunnar
|
| |\ \ \
| | |/ /
| |/| /
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
qmake/generators/symbian/symmake.cpp
src/corelib/global/qglobal.h
src/gui/kernel/qwidget_p.h
src/gui/painting/qtextureglyphcache.cpp
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/gl2paintengineex/qtextureglyphcache_gl.cpp
src/opengl/gl2paintengineex/qtextureglyphcache_gl_p.h
src/plugins/qpluginbase.pri
src/qbase.pri
tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp
tests/auto/qthread/tst_qthread.cpp
tests/auto/selftests/expected_cmptest.txt
tests/auto/selftests/expected_crashes_3.txt
tests/auto/selftests/expected_longstring.txt
tests/auto/selftests/expected_maxwarnings.txt
tests/auto/selftests/expected_skip.txt
tools/assistant/tools/assistant/doc/assistant.qdocconf
tools/qdoc3/test/assistant.qdocconf
tools/qdoc3/test/designer.qdocconf
tools/qdoc3/test/linguist.qdocconf
tools/qdoc3/test/qdeclarative.qdocconf
tools/qdoc3/test/qmake.qdocconf
tools/qdoc3/test/qt-build-docs.qdocconf
tools/qdoc3/test/qt-build-docs_ja_JP.qdocconf
tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf
tools/qdoc3/test/qt.qdocconf
tools/qdoc3/test/qt_ja_JP.qdocconf
tools/qdoc3/test/qt_zh_CN.qdocconf
|
| | |
| | |
| | |
| | | |
Reviewed-by: Jani Hautakangas
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: (21 commits)
Fixed handling of QInputMethodEvents with nonzero replacementLength.
Fixed namespace issues related to epocroot.cpp
Corrected ASCII comparison and removed extra braces
Add symbian scope for qfiledialog_symbian.cpp
Resolve EPOCROOT in qt.conf using same logic as in .pro
Make epocroot resolving compatible with more build environments
Fix for QtOpenGL RVCT4 compilation error
Removed extra cpp and done changes based on comments
Correct flags for Symbian file dialogs
Fix for WServ 64 crash on Symbian.
Use include(original mkspec) instead of copying of mkspec to default
Fixed code style of d92cbfc5, reported by git push.
Switched qdesktopservices to use SchemeHandler for Symbian^3 and later.
Removed unnecessary Q_OS_SYMBIAN flags from qdesktopservices_s60.cpp.
Documented usage of dialogs on Symbian
Native file dialog on Symbian^3
Add Location as self signable capability in patch_capabilities.pl
Localize .loc and .pkg content based on TRANSLATIONS
Bump Qt version to 4.7.2.
SSL: Fix for systemCaCertificates being called first on symbian
...
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
RVCT4 has strict lookup rules. Calls from function
,that depends on a template parameter, to internal
static functions must be qualified.
Task-number: QTBUG-15424
Reviewed-by: Jason Barron
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When the OpenGL glyph cache filled up (the max texture size on the
hardware was exceeded) the characters would be drawn as black blocks
instead. As a work-around for this, the cache will now be cleared and
repopulated whenever this happens, meaning that once in a while (when
a lot of different glyphs have been drawn in a font) there will be a
performance hit. A more complete solution is described in QTBUG-13784,
but this requires so much refactoring that it was deemed too risky for
a patch release. This patch fixes the problem with a small penalty
and low risk.
Task-number: QT-3971
Reviewed-by: Samuel
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The QGLWidget destroys the QGLContext, which in turn destroys the
bound pixmap. When this happens there may not be a current QGLContext,
so check that before trying to restore it.
Done-with: Gunnar Sletta
Reviewed-by: Samuel
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-15320
Reviewed-by: Kim
|
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If you create/destroy gl contexts a lot, you may sometimes get a new
context with the same pointer as a destroyed context. When you look up
the glyph cache in the font engine using the context pointer as a key,
you will then get a glyph cache which contains no valid data. We need
to reset the glyph cache completely in this case and set up bindings for
the new context so that the glyph cache can be repopulated and reused.
Note that there is a different solution for this in Qt 4.8, so this is
temporary solution for the Qt 4.7.x series.
Task-number: QT-4162
Reviewed-by: Fabien Freling
|
| |\ \
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
qmake/generators/win32/msbuild_objectmodel.cpp
src/gui/kernel/qgesturemanager.cpp
tools/qdoc3/test/qt-build-docs.qdocconf
tools/qdoc3/test/qt.qdocconf
Changes in qmake/generators/win32/msvc_objectmodel.cpp come
from commit 4ba3dadcae97bfde6216c32cfa339f8f0e0253c7
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For platforms where the driver bug isn't fixed, the work-around should
be done by packagers instead.
Reviewed-by: Gunnar Sletta
|
| | | |
|
| | |
| | |
| | |
| | | |
and ifdef the functions in qgl.h
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
resources. The example plugins EGLFS uses only 1 native
context. Make sure that we only use this 1 context, and that we dont
wrap it in many different QPlatformGLContexts or QGLContexts instanses.
This change also removes the QPlatformWindow link which was made in the
initial QPlatformGLContext change. Lighthouse has to support situations
where a context isnt bound to a QPlatformWindow.
Reviewed-by: gunnar
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This means the threading functionality has been delegated down to
QPlatformGLContext. However, it is still possible to use
QGLContext::currentContext to retrieve the QGLContext. This so that
QGLFunctions, QGLShaderProgram etc can be used without a QGLWidget.
Reviewed-by: paul
|
| | |
| | |
| | |
| | | |
Reviewed-by: paul
|
|\ \ \
| |/ /
|/| | |
|
| | | |
|