| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Task-number: QTBUG-19180
Reviewed-by: TRUSTME
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove ugly TemporarilyCachedBindOption and use QGLTexture
objects as texture pool entries instead of QGLPixmapData.
Make texture pooling totally Symbian specific, remove
VG like texture pooling code and use common texture binding
path which is used on other platforms also on Symbian.
QGLPixmapData should be only used to bind SgImage based
textures (will be implemented by another commit).
Task-number: QTBUG-19180
Reviewed-by: Samuel Rødal
|
|
|
|
|
|
|
| |
Updated version of LGPL and FDL licenseheaders.
Apply release phase licenseheaders for all source files.
Reviewed-by: Trust Me
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
When texture destruction was triggered from a different thread, we
posted a signal to the QGLSignalProxy. However, before the signal is
delivered the corresponding QGLContext might be destroyed in the main
thread. We need to post a signal to a QObject which is destroyed when
the QGLContext is destroyed instead, to prevent trying to access an
invalid QGLContext pointer.
Task-number: QT-4238
Reviewed-by: Gunnar Sletta
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the last shallow copy of a QImage which is cached in the
QGLTextureCache is destroyed in a thread at the same time as the
QGLContext which the texture was initialized in is active in a different
thread, the QImage thread incorrectly tries to make the context active
in two threads at once. To prevent this from happening it's best to
always do the texture clean-up in the main thread.
Task-number: QT-4238
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
|
|
|
|
|
|
|
| |
Support blitting by copying from the top-level window's back buffer to
a temporary texture and then blitting from the texture to the native
child widget. Performance suffers, but it's better than failing.
Reviewed-by: Gunnar Sletta
|
|
|
|
|
|
|
|
|
| |
GL_OES_element_index_uint detection was not working because
EGL config wasn't yet resolved. In addition QFrameBufferObject
should use 24bit depth render buffer if extension is available.
Task-number: QTBUG-14542
Reviewed-by: Gunnar
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 6155050f68cc86c445552da61a5f240c16f5e2cd.
The GL_ARB_ES2_compatibility extension does not mention the lowp,
mediump or highp keywords.
Task-number: QTBUG-14384
Reviewed-by: Samuel
Reviewed-by: Prasanth
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We made a mistake of trying to make use of the texture_from_pixmap
extension by default when binding textures in Qt. The extension
have several limitation and using it produces crashes with certain
drivers/graphic card combos, but we can't change this now since
it will break existing apps using well behaved drivers.
We'll fix this for 4.8 with either a QGL::BindOption or configure
flag.
Revert "Don't try to use the texture_from_pixmap extension in
GL on desktop/X11."
This reverts commit 07c5429d5aacab932cd912e66287d66fb952e7c4.
|
|
|
|
|
|
|
|
|
| |
There are far too many problems with this extension for it to be usable
on desktop at the moment, so disable on desktop GL for now. It's still
enabled for EGL, where it seems to have better driver support.
Task-number: related to QTBUG-11158
Reviewed-by: Samuel
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
bin/syncqt
src/opengl/qgl.cpp
tools/configure/configureapp.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
OpenGL 4.0 systems now have compatibility with ES2, including
support for the precision qualifiers. If the GL_ARB_ES2_compatibility
extension is present, then we don't define highp/mediump/lowp
to the empty string.
Task-number: QTBUG-12862
Reviewed-by: Sarah Smith
|
| |
| |
| |
| |
| | |
Task-number: QT-2139
Reviewed-by: Gunnar Sletta
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The crash happens in the Nvidia driver in glXReleaseTexImageEXT when
scrolling the corkboard using the mouse. To work around it we detect the
Nvidia driver versions where this is known to be a problem and skip
using the texture from pixmap extension in those cases.
Task-number: QTBUG-12914
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| | |
(if extension available).
Merge-request: 712
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
| |
| |
| |
| |
| | |
Merge-request: 2422
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (24 commits)
Fix an assertion in comp_func_SourceOver_sse2() if const_alpha == 0
Add a manual test for regular widget interaction with the table.
New variant of ::createPixmapData with origin for QGraphicsSystem.
EGL plane levels are the same as all other GL backends.
Need to access extensionFuncs in subclasses too.
Export QGLWindowSurface too.
Export the QGLPixmapData so that we can override it in a custom graphics system.
Fixed autotest failure in QPathClipper on N900.
Fixed autotest failure in QPainter::setOpacity when NEON is used.
Fix compilation when configured with -no-xrender
Add a new (internal) flag QGraphicsItem::ItemStopsClickFocusPropagation.
Fixed some potential index-out-of-bounds issues in QImage.
Fixed autotest failure in fillRect_stretchToDeviceMode
Adding a known issue for VC2010 64 bit
Added a note to desupport VC2010 64-bit
Normalize integers when calling glVertexAttribPointer()
Add an implementation of comp_func_solid_SourceOver_neon() with Neon.
Fix the casts of qdrawhelper_sse2
Add a SSE2 implementation of comp_func_solid_SourceOver()
Add a SSE2 version of comp_func_SourceOver()
...
|
| | |
| | |
| | |
| | |
| | | |
Merge-request: 2422
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| |
| | |
Conflicts:
src/3rdparty/phonon/qt7/mediaobject.mm
src/3rdparty/webkit/VERSION
src/3rdparty/webkit/WebCore/ChangeLog
src/plugins/phonon/mmf/mmf.pro
|
| |
| |
| |
| |
| |
| |
| |
| | |
The defines that can be used are QT_NO_DEBUG_OUTPUT and
QT_NO_WARNING_OUTPUT in order to turn off qDebug and qWarning output.
Reviewed-by: cduclos
Reviewed-by: Markus Goetz
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If a QGLWidget is left on the heap when the QApplication destructor is
called, it will leave the QGLWidget in a broken state.
The widget itself is released and set to a non-created state,
which the associated QGLContext doesn't get notified about.
With this patch the QGLWidget knows when QWidget::destroy() is called
and can act acordingly.
Task-number: QT-3498, QTBUG-10995
Reviewed-by: Paul
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If you have two non-sharing GL contexts and try to draw the same
QPixmap in both of them, they will wind up competing for a spot in the
texture cache. Make the context group a part of the cache key to avoid
that.
Task-number: QT-3462
Reviewed-by: Kim
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The workaround flags are put into the platform independent section
for now, since there might be a general need for these as we expand
our GL and GL ES usage. The workaround_needsFullClearOnEveryFrame flag
covers the case where you get a performance penalty on PowerVR hw
if all rendering buffers are not cleared. The
workaround_brokenFBOReadBack flag covers the case where copying pixels
from a texture (e.g. via glCopyTexSubImage2d()) bound in an FBO doesn't
work.
Task-number: QTBUG-10670
Reviewed-by: Gunnar
|
| |
| |
| |
| |
| |
| |
| |
| | |
If QGLWidgetPrivate::recreateEglSurface is called after a surface
has been deleted, it should always create a new surface and ignore
the fact that the window ID may not have changed.
Reviewed-By: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This mostly replaces lots of QT_OPENGL_ES defines with QT_NO_EGL
instead. It also switches off EGL auto-detection by default. This is
to make sure we default to using GLX on systems with both EGL and
desktop OpenGL. If -opengl es1|es2 or -openvg is specified, then
EGL auto-detection is switched back on (as a requirement. If
configure auto-detects OpenGL ES it also switches on EGL
auto-detection, but failue then just disables both EGL & OpenGL.
As a side effect, this patch also fixes building Qt when both EGL
and glx are avaliable, as they are in Mesa >= 7.8.0.
Reviewed-by: Trond
Task-number: QTBUG-9691
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
doc/src/modules.qdoc
mkspecs/common/symbian/symbian.conf
src/gui/graphicsview/qgraphicswidget.h
src/s60installs/bwins/QtGuiu.def
src/s60installs/eabi/QtGuiu.def
|
| |
| |
| |
| | |
Reviewed-By: TrustMe
|
| |
| |
| |
| | |
Reviewed-by: Gunnar
|
| |
| |
| |
| |
| |
| |
| |
| | |
This also includes changes which allow QGLContext to not own it's
own QEglContext. With X11GL, the QEglContext gets reused by multiple
QGLContexts so it is important QGLContext doesn't delete it.
Reviewed-By: TrustMe
|
| |
| |
| |
| | |
Reviewed-by: Tom Cooksey
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
configure.exe
examples/multimedia/audioinput/audioinput.cpp
src/corelib/io/qfsfileengine.cpp
src/gui/egl/qegl_wince.cpp
src/gui/egl/qeglproperties.cpp
src/gui/egl/qeglproperties_p.h
src/gui/embedded/directfb.pri
src/gui/kernel/qapplication_win.cpp
src/gui/painting/qdrawutil.cpp
src/opengl/qgl_p.h
src/sql/drivers/odbc/qsql_odbc.cpp
src/sql/drivers/odbc/qsql_odbc.h
tests/auto/auto.pro
tests/auto/qgl/tst_qgl.cpp
translations/assistant_adp_ru.ts
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
At some point we should fix the include order in all the .cpp files,
however #udef'ing the defines we use elsewhere seems to work for now.
Reviewed-By: TrustMe
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The QGLContext only stores the EGLSurface for QWidgets & QGLWidgets,
other device types like QPixmap & QGLPixelBuffer store the surface
themsselves. With this patch it is possible to create a QGLContext
on a QPixmap, make it current and render GL to that QPixmap on X11.
Reviewed-By: TrustMe
|
| |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
configure.exe
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/qgl.cpp
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- Make bindTexture threadsafe
- Document which areas of QGLWidget needs locking in order
to do out-of-gui thread rendering
- Testcases to prove that these cases work
Reviewed-by: Trond
|
| |\ \ \
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
mkspecs/common/symbian/symbian.conf
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
tools/assistant/tools/assistant/helpviewer.cpp
|
| |\ \ \ |
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Conflicts:
src/gui/kernel/qcocoapanel_mac.mm
src/gui/kernel/qcocoasharedwindowmethods_mac_p.h
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Task-number: QTBUG-7683
Reviewed-by: Tom Cooksey
|
| |\ \ \ \ \ |
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Conflicts:
bin/syncqt
doc/src/deployment/deployment.qdoc
src/corelib/io/qfsfileengine_win.cpp
src/corelib/xml/qxmlstream.cpp
src/opengl/gl2paintengineex/qpaintengineex_opengl2_p.h
tools/assistant/tools/assistant/centralwidget.cpp
tools/linguist/lupdate/main.cpp
|
| |\ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Conflicts:
src/corelib/io/qfsfileengine.cpp
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/opengl.pro
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Task-number: QTBUG-4438, QT-2662, QT-2663
Reviewed-by: Tom
|
| |_|_|_|_|_|_|/
|/| | | | | | | |
|
| |_|_|_|_|_|/
|/| | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
As there are no SDKs available for our test device (HTC HD2) that support
OpenGL, we had to construct the libraries by extracting them from the ROM image.
This is still work in progress at this time.
|
| |_|_|_|_|/
|/| | | | |
| | | | | |
| | | | | |
| | | | | | |
Reviewed-By: Trond
Autotest: tst_QGL::qglContextDefaultBindTexture
|
|\ \ \ \ \ \
| |_|_|_|_|/
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Conflicts:
src/gui/kernel/qapplication_win.cpp
src/gui/kernel/qwidget.cpp
src/gui/kernel/qwidget_p.h
|