| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| |
| |
| |
| | |
The new glyph cache may return null images for e.g. space characters.
Task-number: 253468
Reviewed-by: Samuel
BT: yes
|
| |
| |
| |
| |
| |
| | |
This is a compilation fix reported by pulse agent on HPUXi.
Reviewed-by: Samuel
|
| |
| |
| |
| |
| |
| |
| | |
Switching multisampling is not supported in GLES 2.0, but it's supported
in GL 2.0 so we should do it on desktop at least.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| | |
GL window surface and GL pixmap backend should work with old GL engine
as well, though not supported to the same degree.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QPixmap shouldn't return true in hasAlphaChannel() for bitmaps, instead
the paint engine should check whether the pixmap is a bitmap or not. In
addition, QBrush::isOpaque() returned true for bitmap brushes, which is
wrong according to the documentation.
Reviewed-by: Trond
|
| |
| |
| |
| |
| | |
Calling premultiplyColor() with a red channel of 255, alpha channel of
255, and opacity 1 would result in a color with red channel of 254.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The pen color should be used when drawPixmap is called with a bitmap,
and the brush color should be used for texture patterns that are
bitmaps.
Task-number: 245802
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The window surface has been modified to track widget deletion to make
sure it doesn't try to access the widget's context data after deletion.
QGLPixmapData now also uses GL_RGB instead of GL_RGBA when appropriate,
and hasAlphaChannel() has been modified in view of this.
A number of other issues have been fixed in QGLPixmapData, and the
autotest has been modified to use a more lenient pixmap compare function
due to off-by-one pixel errors here and there.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| | |
If we're painting to very wide and then very tall pixmaps we don't want
the FBO to grow to max_width * max_height, instead we should recreate
the FBO if it grows too large compared to what's being painted.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| | |
Based on Zack's patch, 17e1bca1ce366395f8331e16aa96b7176ca1abac. Instead
of manually clearing the stencil buffer after drawing we simply do the
clearing and drawing in one go.
Reviewed-by: Trond
|
| |
| |
| |
| |
| | |
The new GL 2 text drawing requries the FBO function pointers to be
resolved.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use the stencil method to draw clip paths and regions to the Z-buffer
instead of using glClear / glScissor. Using different depth values for
the various clip parts also makes restore() very cheap when only
IntersectClip is used.
As an additional bonus this patch gives antialiased clip in the GL 2
paint engine.
Task-number: 254658
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| | |
Moving qpaintengineex_opengl2_p.h down caused it to come after
an include of <X11/Xlib.h>, which causes problems on some platforms.
Move it back up again.
Reviewed-by: trustme
|
| |
| |
| |
| | |
Reviewed-by: trustme
|
| |
| |
| |
| | |
Reviewed-by: trustme
|
| |
| |
| |
| | |
Reviewed-by: trustme
|
| |
| |
| |
| |
| |
| |
| |
| | |
An alternative solution is to swap the order of
-I../../include and -I../../include/QtOpenGL when
compiling the opengl module.
Reviewed-by: TrustMe
|
| |
| |
| |
| |
| |
| |
| | |
seem fixable easily)
Merge-request: 594
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
|
| |
| |
| |
| |
| | |
Merge-request: 594
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
|
| |
| |
| |
| |
| | |
Task-number: QT-80
Reviewed-by: Ian Walters
|
| |
| |
| |
| |
| | |
Task-number: QT-80
Reviewed-by: Ian Walters
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Now there's only a copy of the texture glyph cache in graphics memory,
avoiding the system memory copy that we used earlier. In addition the
texture will use the GL_ALPHA texture format when possible, making it
consume less graphics memory as well.
Reviewed-by: Tom
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To allow mixing QPainter and raw OpenGL commands we need to have some
way for the user to say that's he's about to use raw OpenGL so that we
are free to do buffering optimizations in the paint engines and use
either GL1 or GL2 paint engine. As there's already a syncState()
function in QPaintEngine we've reused this and added
QPaintEngineEx::sync() which takes care of syncing/flushing the paint
engine.
Reviewed-by: Trond
|
| | |
|
| |
| |
| |
| |
| | |
Make sure the correct texture unit is active when copying from the
pixmap to the FBO in begin().
|
| |
| |
| |
| |
| |
| |
| |
| | |
Even if the source pixels are opaque we have to enable blending for the
non-trivial composition modes. Some of the composition modes are
independent of source alpha and depend on destination alpha for example.
Reviewed-by: Tom
|
| | |
|
| |
| |
| |
| | |
Reviewed-By: TrustMe
|
| |
| |
| |
| | |
Reviewed-By: TrustMe
|
| |
| |
| |
| | |
Reviewed-By: TrustMe
|
| |
| |
| |
| | |
Reviewed-by: Tom
|
| |
| |
| |
| |
| | |
used character operations whenever possible
better usage of QLatin1String
|
|\ \
| |/
| |
| |
| | |
Conflicts:
tests/auto/qtreeview/tst_qtreeview.cpp
|
| |
| |
| |
| | |
Task-number: 252491
|
| |
| |
| |
| |
| |
| |
| |
| | |
QWidgets are filled with Qt::transparent when WA_TranslucentBackground
is set, reguardless of what their background colour has been set to.
This patch makes QGLWidgets behave the same way.
Reviewed-By: Samuel Rødal
|
| |
| |
| |
| |
| |
| |
| | |
This patch enables QGLWidget's to have an ARGB visual on X11, alowing GL
rendering on semi-transparent windows.
Reviewed-By: Trond
|
| |
| |
| |
| |
| |
| |
| | |
In the fill case we can simply set a flag saying the pixmap needs to be
filled, and then when painting on the pixmap we start by filling the
background using glClear via the existing
QGLDrawable::autoFillBackground interface.
|
| |
| |
| |
| |
| |
| |
| | |
Make sure makeCurrent() on a window surface unbinds any active FBO, and
simplify ensureActive() code in GL2 paint engine a bit. We don't need
the last_engine pointer as ensureActive() will take care of ensuring the
correct engine is active anway.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
It seems GLint is typedefed to long on 10.4.
Reviewed-By: Rhys Weatherley
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When a buffer swap leaves the back buffer intact we don't have to use
an FBO or PB, but can render directly to the window's back buffer,
yielding higher performance and depending less on extensions such as
multisample FBOs and FBO blitting.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| | |
When not setting filtering mode to GL_NEAREST/GL_LINEAR copying back
from FBO to texture fails for some reason.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| | |
Override systemStateChanged() to get the system clip updates.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| | |
We need to use both qt_defaultDpiX and qt_defaultDpiY, and round
the resulting metric values.
Reviewed-by: Trond
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch is inspired by the "Fix ARGB visuals" patch in the Maemo
branch. Thanks go to the author of that patch (who isn't signed up to
Gitorious and thus can't be named - you know who you are! Thanks!!).
This patch should also fix ARGB visuals (even if they are supplied by
EGL) as such visuals require a colormap.
|
| |
| |
| |
| |
| |
| |
| | |
EGL has an EGL_NATIVE_VISUAL_ID which can by used as the window's visual
ID. We now try to use this ID to avoid an XVisual <-> EGLConfig
mis-match. Of course this is usually broken in the EGL library, so we
fall back to trying to match outselves.
|