| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
All EGL-related changes from 4.6 were discarded.
Conflicts:
src/gui/egl/egl.pri
src/gui/egl/qegl.cpp
src/gui/egl/qegl_p.h
src/gui/egl/qegl_stub.cpp
src/gui/egl/qeglproperties_p.h
src/gui/egl/qeglproperties_stub.cpp
src/gui/gui.pro
src/multimedia/multimedia/audio/qaudioinput_win32_p.h
src/s60installs/bwins/QtGuiu.def
src/s60installs/eabi/QtGuiu.def
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-7545
Reviewed-by: Kim
|
| |
| |
| |
| | |
Correct a typo that breaks extension properties in some cases.
|
| |
| |
| |
| | |
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| | |
If two threads call the Q_GLOBAL_STATIC accessor at the same time,
two QX11GLSharedContexts objects can be created with one being
destroyed.
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the OpenGL graphics system is in X11GL mode, it will use the
QX11GLWindowSurface for all widgets except QGraphicsViews with the
FullViewportUpdate update mode set, where it will use the regular
QGLWindowSurface, as this is probabbly faster.
QX11GLWindowSurface differs from QGLWindowSurface because it allows
accelerated scrolling and partial updates, while still being using
opengl to do rendering.
Task-number: QT-280
Task-number: QT-2625
Reviewed-By: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the back buffer is destroyed when swap buffers is called, we must
tell the backing store any update needs to invalidate the entire
window surface, so everything gets re-drawn.
Task-number: QTBUG-9978
Reviewed-By: Trond
|
| |
| |
| |
| | |
Reviewed-By: Samuel
|
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| | |
Now all the window surface autotests pass.
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously we were calling all manor of synchronisation calls to
make sure there were no issues. These have been sanitised to just
use eglWaitClient and eglWaitNative and only in places which need
it. There is still a bug where small updates will sometimes result
in small horizontal streaks. However, this has been confirmed to be
a cache flush bug in the X server 2D driver. The driver bug is
tracked in Meamo bugzilla as bug 164941. Hopefully it will be fixed
soon.
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch moves initialisation into a new QX11GLSharedContexts
class which is created as a Q_GLOBAL_STATIC. This class owns both
the RGB/ARGB EGL contexts and the QGLContext used for sharing.
Finally, the shared QGLContext is make a valid context wrapping the
RGB EGL context and a small pixmap surface. This makes the shared
QGLContext the QGLContextGroup master, so when it is deleted, it
can be made current to delete the GL resources. Among other benefits,
this patch stops apps seg-faulting when they gracefully quit.
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It's better to defer the synchronisation to just before the point it
is actually needed. When used as a window surface, this is in flush
and scroll. If the QX11GLPixmapData is used as the defaut backend
for QPixmaps, it might need to be put back into endPaint. However,
the GL driver will hopefully make sure rendering to the pixmap is
complete before binding it as a texture via texture-from-pixmap.
Also, it's probably better to use eglWaitClient rather than glFinish
for synchronisation as it is potentially slightly more optimal.
Reviewed-By: TrustMe
|
| |
| |
| |
| | |
Reviewed-By: TrustMe
|
| |
| |
| |
| | |
Reviewed-By: Kim
|
| |
| |
| |
| | |
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| | |
Reviewed-by: Trond
Reviewed-by: Tom
|
| |
| |
| |
| |
| |
| |
| | |
This was a huge extra cost in all QPainter::begin's on
GL target surfaces
Reviewed-by: Rhys Weatherley
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QGLWidgets are assumed to be buffer destroyed, however regular
QWidgets assume they can to partial updates and thus need the
preserved swap behaviour.
Reviewed-By: Trond
Task-number: QTBUG-9554
|
| |
| |
| |
| |
| |
| | |
This should make stubbing out these APIs slightly easier.
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| |
| |
| | |
QtGui exporting a symbol called eglCreateImageKHR seems a pretty
silly idea. Much better to have them in the QEgl namespace.
Reviewed-By: Iain
|
| |
| |
| |
| | |
Reviewed-By: Samuel
|
| |
| |
| |
| |
| | |
Merge-request: 2344
Reviewed-by: Tom Cooksey
|
| |
| |
| |
| |
| | |
Merge-request: 2344
Reviewed-by: Tom Cooksey
|
| |
| |
| |
| |
| | |
Merge-request: 2344
Reviewed-by: Tom Cooksey
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (44 commits)
QSlider and StyleSheet: fix one pixel error while drawing the SliderAddPage
accelerate QWindowsPipeWriter for bigger chunks of data
Fix antialiasing with transformed text in OpenGL2 paint engine
Fix flattening of largely scaled, thin, dashed beziers.
Increased the precision used to flatten beziers
Fix QT_NO_MOVIE
Fix compile error with QT_NO_ACTION in QtGui
Fix QT_NO_COMPLETER
Fix QT_NO_FSCOMPLETER
Fix QT_NO_FILESYSTEMMODEL
Build fix
Safeguard ourselves against corrupt registry values for cleartype gamma
fix cetest build properly
qdrawhelper: optimize the fetch transformed bilinear functions
Compile fix for WinCE
Make sure the selectionChanged signal is not called too much
Implement heightForWidth support for QTabWidget and QStackedLayout.
Fix the doc for QFrame::frameStyle
Don't use texture-from-pixmap if the target isn't GL_TEXTURE_2D
Add runtime check for GLX >= 1.3 before using glXCreatePixmap
...
|
| |\ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Reviewed-by: Samuel
Task: http://bugreports.qt.nokia.com/browse/QTBUG-9218
|
| | |\ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (27 commits)
Fix the doc for QFrame::frameStyle
Don't use texture-from-pixmap if the target isn't GL_TEXTURE_2D
Add runtime check for GLX >= 1.3 before using glXCreatePixmap
QDrawHelper: Reduce code duplications
Improve matching X11 VisualIDs to EGL configs
Remove obsolete function set_winapp_name()
Speedup fetchTransformedBilinear in the fast_matrix case
Allow y-interted pixmaps for brushes in GL2 paint engine
Build fix for mingw
Fix build with mingw (64 bit)
Make configure.exe compatible with mingw 64
Adjust indentation
e-Ink support cleanup
Tweak the display update IOCTL calls
Support 8-Track e-Ink devices
Get stride from LinuxFB instead of calculating it ourselves.
Use DIR_SEPARATOR when setting up variables for RCC and UIC in features.
Fixed bug in QPainterPath::intersected().
Fix compile error with QT_NO_ANIMATION
O(n^2) to O(n) optimization in QTreeWidget::selectedItems()
...
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Task-number: QTBUG-8546
Reviewed-By: TrustMe
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Task-number: QTBUG-9084
Reviewed-By: TrustMe
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This means texture-from-pixmap can now be used for brush pixmaps.
Task-number: QTBUG-9707
Task-number: QT-3013
Reviewed-By: Samuel Rødal
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since the paint engine now transforms the prerendered glyphs instead of
rendering transformed glyphs as paths, we need to turn on texture
filtering to avoid antialiasing artifacts. In order to do this, we also
need to pad the glyphs in the glyph cache, otherwise you will get
artifacts when sampling the area around the glyph's bounding rect (where
there might be other glyphs.) This done by adding a glyphPadding()
function to the cache which returns the number of pixels to pad between
each glyph.
Task-number: QTBUG-9706
Reviewed-by: Tom
|
|\ \ \ \
| |_|/ /
|/| | /
| | |/
| |/|
| | |
| | | |
Conflicts:
qmake/generators/symbian/symmake.cpp
src/gui/image/qimage.cpp
src/openvg/qwindowsurface_vgegl.cpp
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In the case where a polygon or polyline that contains consequtive equal
points, we end up calculating an invalid normal vector for the joins.
This fix skips past duplicate consequtive points.
Task-number: QTBUG-9548
Reviewed-by: Kim
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The patterns all got the same cache key (e.g. 1), which caused the
patterns to be uploaded as a texture every single time they were used.
Reviewed-by: Kim
|
|\ \ \
| |/ /
| | /
| |/
|/| |
Conflicts:
src/multimedia/audio/qaudioinput_win32_p.h
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-9450
Reviewed-by: Sarah Smith
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| |
| | |
On unix platforms, QT_NO_EGL is defined by configure. However, this
is not defined by windows's configure.exe so add it in opengl.pro.
Reviewed-By: Brad
|
| |
| |
| |
| | |
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There's lots of EGLImage extensions, split between EGL and client
rendering APIs like OpenGL ES & OpenVG. To implement texture-from-
pixmap using EGLImage, both EGL extensions and OpenGL ES extensions
are needed. This patch resolves the EGL extension function pointers
after the display is initialized in QEgl::display(). These are then
exported from QtGui so they can be used in QtOpenGL. The OpenGL ES
extension function pointers are resolved using the usual
qglextensions.cpp mechanism.
Using EGLImage seems to remove a fixed ~10 millisecond overhead per
pixmap bind when compared to using EGLSurface. Exact results per bind
for 100 QPixmaps are:
8x8 Pixmap: 12 -> 1.71 msecs (EGLSurface -> EGLImage)
64x64 Pixmap: 11.6 -> 1.83 msecs (EGLSurface -> EGLImage)
128x128 Pixmap: 12.8 -> 2.74 msecs (EGLSurface -> EGLImage)
256x256 Pixmap: 16 -> 6.20 msecs (EGLSurface -> EGLImage)
Reviewed-By: Trond
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (98 commits)
get rid of build warning messages
Quiet unnecessary configure/qmake warnings when EPOCROOT is not set.
Add configure test for Maemo Internet Connection Daemon.
fix warning
Rename getter function used in test also.
Revert "Avoid a data relocation by not trying to store a pointer in the .data section of plugins."
Make QStackTextEngine cheaper to construct
Add a function to get the transitions available from a state
Add a new WA_X11DoNotAcceptFocus attribute for top-level widgets (part 2).
Code cleaning for the QStringList's joinEmptiness() test case
Fix behavior change QStringList::join() for null
Add a new WA_X11DoNotAcceptFocus attribute for top-level widgets.
Cocoa: fix eventdispatcher crash, found by macgui autotest
Make QWidget::activateWindow() NET window manager aware.
Upgraded QLocale data to Unicode CLDR 1.8.0
Improved CLDR parser.
Fixed reading draft data from CLDR.
Improved the cldr parser for QLocale.
Do not use FSEvents-based filesystemwatcher backend on Mac.
add file missing in commit 74f5e34979b8a08a91aa3c2fa6d252e68eca7817
...
|
| | |\
| | | |
| | | |
| | | |
| | | | |
Conflicts:
src/gui/itemviews/qabstractitemview.cpp
|
| | |\ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (75 commits)
Autotests: if you use X11 libs, you must link to X11 libs explicitly.
Disable C++0x mode for QtWebKit and QtScript since WebKit will not compile any time soon with C++0x
Compile Phonon in C++0x mode.
Compile Qt in C++0x mode.
Avoid a data relocation by not trying to store a pointer in the .data section of plugins.
Fix cast-from-ascii warning
Fix compilation on Linux
Fix compilation with WINSCW: #include doesn't find files in the same dir
Rename m_volume to m_vol
Add 2 signals, introduce side widget, make it possible to reset startId
Do not create native window handle just because a parent has one.
Tab color fix for document mode on Snow Leopard.
Revert "Don't emit open signal on session close/error."
Rename networkAccess property to networkAccessible.
Don't emit open signal on session close/error.
Rename private signal.
Autotest: fix instability by accepting rounding errors
Dont force height for filter widget
- Fix importdir option on unix/linux configure
Remove incorrect semi-colons after Q_PROPERTY
...
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This is not valid in C++0x:
char str[] = { 128, 0 };
Because 128 cannot be represented in a char. The same applies to
conversion from int to qreal: it's a narrowing conversion, with
possible data loss.
More info: http://www2.research.att.com/~bs/C++0xFAQ.html#narrowing
Reviewed-by: Trust Me
|
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Use GLuint for bufferId(), not uint. Replace the raw bind()
function with a raw release(), because that's the only useful
case for being able to do a raw glBindBuffer().
Reviewed-by: Daniel Pope
|
| |/ /
| | |
| | |
| | | |
Reviewed-by: Rhys Weatherley
|
| |/
| |
| |
| |
| |
| |
| |
| | |
On 16-bit configs, using 16-bit textures gives us quite a bit
of performance extra, so making this extra effort prior
to uploading it seems worth it.
Reviewed-by: Samuel
|