| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
Updated: This also fixes a general issue where some combinations of font
sizes and transformations will cause the engine to sample neighbouring
glyphs, so this has been backported to Qt 4.6.x.
Task-number: QTBUG-9706, QTBUG-11028
Reviewed-by: Tom
Conflicts:
src/gui/painting/qtextureglyphcache.cpp
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
(cherry picked from commit 21f5bf3a3030a393ba17ce7726b70fe853b5b608)
|
|
|
|
|
|
|
|
|
|
| |
Without clipping, the stroker could consume a huge amount of
memory when scaling up cosmetic, dashed strokes. I also made
QDashStroker clip more aggressively.
Task-number: QTBUG-7832
Reviewed-by: Samuel
(cherry picked from commit ee6c26115959f46621f5a45f3fbe4a49989fd095)
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
|
|
|
|
|
| |
If you forward declare a shader function which takes a sampler as
argument, the shader program will fail to link on ATI cards under
Windows.
Task-number: QTBUG-10510
Reviewed-by: Trond
|
|
|
|
|
|
|
|
| |
There seems to be a driver bug that causes glTexSubImage2D() to not
align data correctly when uploading a GL_ALPHA texture.
Task-number: related to QTBUG-10510
Reviewed-by: Samuel
|
|
|
|
|
|
|
|
|
|
| |
When a pixmap is bound using the texture_from_pixmap extension we retain
a reference to the pixmap to stop us destroying it before swapBuffers()
or glFlush() is called. The references were not cleared out correctly
in the GL 1 engine.
Task-number: QTBUG-10529
Reviewed-by: Samuel
|
|
|
|
|
| |
Task-number: QTBUG-7545
Reviewed-by: Kim
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
Task-number: QTBUG-9450
Reviewed-by: Sarah Smith
|
| |
|
|
|
|
|
|
|
|
|
| |
Apparently the driver does some optimization which causes it to behave
erratically when stencil testing is enabled. Multiplying the return
value from the texture lookup by 1.0 disables the optimization.
Task-number: QTBUG-8753
Reviewed-by: Trond
|
|
|
|
|
|
|
|
|
| |
The global destructor for the clean up hooks might be called before the
global destructor for QPixmap objects. We shouldn't leave pixmaps
around that is destroyed after the QApplication destructor is called.
Task-number: QTBUG-8681
Reviewed-by: Tom Cooksey
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Task-number: QT-2988
Reviewed-by: Julian de Bhal
|
|
|
|
| |
Reviewed-by: hjk
|
|
|
|
|
|
|
|
| |
For some reason the Intel GL driver exports the texture_from_pixmap
extension in the GLX server, but not in local clients.
Task-number: related to QTBUG-5732
Reviewed-by: Kim
|
|
|
|
|
|
|
|
|
| |
This basicaly replaces display(), openDisplay() & defaultDisplay()
methods with a single display() and nativeDisplay(), the latter
being implemented in the platform-specific files and everything
else being cross-platform code.
Reviewed-By: Trond
|
|
|
|
|
|
| |
Got rid of an ugly switch statement.
Reviewed-by: Tom
|
|
|
|
|
| |
Reviewed-By: Trond
Autotest: tst_QGL::qglContextDefaultBindTexture
|
|
|
|
| |
Reviewed-by: Trond
|
|
|
|
|
|
|
|
|
|
| |
Subpixel antialiased text does not look good on translucent
surfaces, so turn it off if the surface the text is rendered on
has an alpha channel. This makes change
eb84acd899aee992f5631ee0b9c0d992c8fbbd5a redundant.
Task-number: QTBUG-7190
Reviewed-by: Gunnar
|
|
|
|
|
|
|
|
|
| |
When trying to share the internal pbo context with a widget context, the
pbo context needs to be created on the same X11 screen as the widget
context.
Task-number: QTBUG-8047
Reviewed-by: Kim
|
|
|
|
|
|
|
|
|
|
|
| |
Don't try to use the texture_from_pixmap extension when drawing a pixmap
from one X11 screen onto a different X11 screen in the GL 2 engine.
For that to work, the pixmap will have to be re-created on the new
screen, which is exactly what the default bind method does (via QImage
conversion).
Task-number: QTBUG-8054
Reviewed-by: Kim
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
src/gui/kernel/qapplication_win.cpp
src/gui/kernel/qwidget.cpp
src/gui/kernel/qwidget_p.h
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There were cases where the QGLWidget would not be fully
updated on screen on Windows Vista and Windows 7 with Aero
disabled.
Task-number: QTBUG-7865
Reviewed-by: Prasanth
|
| |
| |
| |
| |
| |
| |
| | |
We probably want to kick out filtered pixmaps from the cache when the
source pixmap is modified as well as just destroyed.
Reviewed-By: Samuel
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (29 commits)
Compiler warning in QAbstractSlider.
Optimize QPathClipper::pathToRect.
QGraphicsScene: Use QPainter::setClipRect instead of setClipPath if possible.
QStyleSheetStyle: Fix combinaison of border-image and border-radius
Revert "QAbstractScrollArea: Wheel over a scrollarea that has only one horizontal scrollbar"
Proper Fav icon is not shown, for all the links default fav icon shown
Update changes-4.6.2.
Make DSFLIP_ONSYNC part of the default flip flags.
Fixed a failure in tst_qgl.
4.6.2 changes
Avoids a possible crash when saving the state of a main window
Implemented QGifHandler::imageCount().
Fixed compilation of the GL2 engine for OpenGL ES 2.
fix whitespace
Document that QModelIndex::child does not work for the root item
Fixed missing textures in the boxes demo.
Fix QTBUG_7714_fullUpdateDiscardingOpacityUpdate2 autotest in qws-linux
Assert failure when setting a widget focus proxy as its successor in tab order
Fixed garbled 3D Qt logo in the overpainting example.
fix crash in Phonon::DS9 backend
...
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The assert wrong, it may be that the texture isn't removed from the
cache if it doesn't have the MemoryManaged bind option set.
Reviewed-by: Samuel
|
| | |
| | |
| | |
| | |
| | |
| | | |
glColor4f is not defined in OpenGL ES 2.
Reviewed-by: Trond
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The boxes demo assumed that the current GL colour was the default white,
but the GL2 paint engine set it to black. Fixed by resetting the colour
to white in resetGLState().
Task-number: QTBUG-7779
Reviewed-by: Trond
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Disable vertex attribute arrays in the GL2 paint engine when
calling QPainter::beginNativePainting() and QPainter::end().
Task-number: QTBUG-7781
Reviewed-by: Trond
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This fixes quite a lot of issues:
* QtOpenGL only registered qpixmap destruction hooks on X11 and
those only cleanup the EGL/GLX surface, not the texture object.
* The QPixmap destruction hooks were only being called from the
QPixmap destructor. However, this means when a QPixmap is assigned
to another QPixmap, the hooks don't get called.
Task-number: QTBUG-7647
Reviewed-By: Samuel
Reviewed-By: Trond
|
|/ / |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If the user provided their own shader with glShaderBinary(),
QGLShaderProgram::addShader() would refuse to add it because
it wasn't marked as "compiled". According to the OpenGL/ES 2.0
specification:
"It is permissible to attach a shader object to a
program object before source code has been loaded into the
shader object or before the shader object has been compiled."
Based on this, the compile check has been removed from addShader()
which should make supporting binary shaders easier.
Similarly, link() and programId() have been modified to support
applications that use glProgramBinaryOES() to specify program binaries.
Task-number: QTBUG-7490
Reviewed-by: Tom Cooksey
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
renderText() can't be used while a GL 2 paint engine is active on the
same device, because it will clash with the GL 1 engine and wreck havoc.
We simply don't support that scenario.
Task-number: QTBUG-7592
Reviewed-by: Samuel
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Need to bind the PMV matrix's attributes to their indexes in the
simple shader, which is created in a seperate code path to all the
other shaders. This should fix the qgl autotest failures.
Reviewed-By: TrustMe
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There is a lot of code depending on that pixmaps are flipped
upside down in the gl graphicssystem, so toggling this requires
extensive testing. Since we're anyway questioning the relevance
of this feature (compared to raster + GL viewport) its simply not
worth the effort to fix it properly right now.
Revert "Fixed y-inverted pixmaps on N900."
This reverts commit 57473d5d2a7bd6ae3117f61ff29264a1b790bb01.
|
| |
| |
| |
| |
| |
| | |
This makes GLSL dumps _significantly_ easier to read.
Reviewed-By: TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This has several advantages: First, updating an attribute value
seems to be cheaper than updating a uniform. Second, vertex atribute
values are independent of shader program, which means they persist
across changing of the shader program. This makes code simpler and
reduces GL state changes. Note: Credit goes to Samuel for finding
this little gem. :-)
For the 25920 solid QGraphicsRectItem test case, this gives 10%
improvement on desktop and 27% on the SGX.
Reviewed-By: Kim
|
| |
| |
| |
| | |
Reviewed-By: Samuel
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Fixed a crash under X11 when drawing QPixmaps to QGLPixelBuffers.
|
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-7476
Reviewed-by: Kim
|
|\ \ \
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Memory leak in native Toolbar cleanup in Cocoa
Fix copyright year.
Bump version to 4.6.2.
Add skeleton changes file for 4.6.2.
Add released version of 4.6.1 changes file for posterity.
Designer crashes when previewing QMainWindow with native Toolbar on Mac
|
| | |
| | |
| | |
| | | |
Reviewed-by: Trust Me
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | | |
Task-number: QTBUG-7399
Reviewed-By: TrustMe
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The QGLPixmapData used default bind options, which means
that the pixmap is always flipped up-side-down and
rendered with flipping. The opaque pixmaps were
uploaded unflipped which caused the bug. Ideally we do not
want pixmap flipping so change the default in gl pixmaps and
tag it accordingly.
Reviewed-by: Samuel
|