| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Now that we've added hasPreservedContents() it's cleaner to convert the
various features to feature flags, which is also more extensible in case
more flags are needed in the future.
Reviewed-by: Bjørn Erik Nilsen
|
|\
| |
| |
| |
| | |
Conflicts:
src/opengl/qwindowsurface_gl.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The vgWritePixel-based "fallback" in drawImage can only be used when
the transformation is simple and no opacity is set. The tiled drawing
introduced here will serve as an additional fallback for the more
complex cases and will allow drawing large (12 Mpix or more) pixmaps
and images with transformation and semi-transparency even when the
complete image data would not fit into the GPU memory.
Task-number: QTBUG-18251
Reviewed-by: Jani Hautakangas
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QVGPaintEngine did not have proper checks for null QImage in the
drawImage functions so it went on trying to create a VGImage of
size 0x0 which is bound to fail always. This resulted in confusing
warnings about not being able to reclaim space for 0x0 images.
Reviewed-by: Jani Hautakangas
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
examples/declarative/positioners/layoutdirection/layoutdirection.qml
src/corelib/global/qglobal.h
src/plugins/qpluginbase.pri
src/qbase.pri
src/s60installs/bwins/QtOpenGLu.def
src/s60installs/eabi/QtOpenGLu.def
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_ja_JP.qdocconf
tools/qdoc3/test/qt-build-docs_zh_CN.qdocconf
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Forcing VG (and GL) pixmapdata to support toNativeType() with type
VolatileImage is unnecessary. It is cleaner to try doing a
fromNativeType() with bitmap+mask and fall back if that results in
a null pixmapdata.
Reviewed-by: Jani Hautakangas
|
| |
| |
| |
| | |
Reviewed-by: Jani Hautakangas
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When QRuntimeGraphicsSystem is asked for its support for static contents
of partial updates it should return the value for the currently running
wrapped graphicssystem. As the getters have not been virtual so far this
could not be implemented.
Additionally the setters have been removed as these values are not
supposed to be set from the outside. Only the graphicssystems itself
knows what it supports. If the default values should be changed the
methods should be overwritten.
Merge-request: 1136
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|\ \
| |/
| |
| |
| |
| |
| | |
Conflicts:
mkspecs/common/symbian/symbian.conf
src/s60installs/bwins/QtGuiu.def
src/s60installs/eabi/QtGuiu.def
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
OpenVG paint engine didn't reset it's
mask fallback state correctly when engine
was resetted.
Task-number: QTBUG-17966
Reviewed-by: Jason Barron
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Inverting the pixels for bitmaps of mode EGray2 is done in-place,
which is wrong if the bitmap handle was duplicated. Instead, we
need to make a copy. This also means that we cannot treat EGray2
a conversion-less format in openvg, but such images are likely
to be used as masks only, so optimizing just for mere drawing
in case of this format is not really necessary.
Reviewed-by: Jani Hautakangas
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
From now on the image data coming from CFbsBitmap will not be forced
to RGB32 or ARGB32_Premultiplied in openvg. This allows copy-less
creation and drawing of pixmaps not just from bitmaps with display mode
EColor16MAP and EColor16MU, but also a few other modes, like EColor64K.
Painting into such pixmaps or drawing them via the raster engine is
potentially slower in such cases, which is now reflected in the
fromSymbianCFbsBitmap documentation.
Note that this patch has no effect on extended bitmaps (e.g. skin
graphics), those must always be rasterized first regardless of the
display mode.
Task-number: QTBUG-18027
Reviewed-by: Jani Hautakangas
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QNativeImageHandleProvider is a thin interface consisting of get()
and release() functions. Pixmaps constructed with such a provider
will call these functions to acquire and release a native handle,
e.g. a CFbsBitmap or RSgImage pointer in case of Symbian. The behavior
is largely similar to constructing pixmaps via fromSymbianCFbsBitmap
or fromSymbianRSgImage, with the exception of pixmap hibernation:
release() (and subsequently get()) is guaranteed to be called also
in case of hibernation, allowing more fine-grained tracking of
the usage and lifetime of image data.
Task-number: QT-4632
Reviewed-by: Jani Hautakangas
|
| |
| |
| |
| | |
Reviewed-by: TRUSTME
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Enable readback of pixel data for pixmaps that are constructed directly
from a VGImage. These do not have any backing data in main memory
(i.e. 'source' is null), however certain operations, like toImage(),
fill(), or painting into the pixmap do not work without it. With this
patch the data is read back via vgGetImageSubData when needed.
Task-number: QT-4669
Reviewed-by: Jani Hautakangas
|
|\ \
| |/
| |
| |
| |
| |
| | |
Conflicts:
src/openvg/qvg_symbian.cpp
src/s60installs/bwins/QtGuiu.def
src/s60installs/eabi/QtGuiu.def
|
| |
| |
| |
| | |
Reviewed-by: TRUSTME
|
| |
| |
| |
| |
| | |
Task-number: QTBUG-17849
Reviewed-by: Samuel Rødal
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Similarly to QS60PixmapData, that is used on raster, QVGPixmapData
is also backed by a CFbsBitmap from now on (at least when it makes
sense to do so). This allows copy-less bitmap handle duplication in
from- and toSymbianCFbsBitmap() in case of certain image formats,
reduces local heap usage and improves performance with the s60 style
due to a reduced number of pixel data copies.
Task-number: QT-2505
Reviewed-by: Jason Barron
Reviewed-by: Jani Hautakangas
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/gui/text/qfontengine_mac.mm
src/opengl/qpixmapdata_gl.cpp
src/opengl/qwindowsurface_gl.cpp
src/s60installs/bwins/QtOpenGLu.def
src/s60installs/eabi/QtOpenGLu.def
tests/auto/qtextlayout/tst_qtextlayout.cpp
|
| |
| |
| |
| |
| |
| | |
Changed a system include to local one.
Reviewed-by: Jason Barron
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
mkspecs/features/symbian/symbian_building.prf
mkspecs/symbian-gcce/qmake.conf
src/corelib/global/qnamespace.h
src/corelib/global/qnamespace.qdoc
src/plugins/plugins.pro
tests/auto/qstylesheetstyle/tst_qstylesheetstyle.cpp
tools/designer/src/components/signalsloteditor/signalslot_utils.cpp
tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
OpenVG implementation for Broadcom chip has limited scissor rect
count to 32. Because of that Qt OpenVG paint engine fails to clip
correctly if clip rect count exceeds 32. This patch makes Qt
OpenVG paint engine to use mask instead of scissors in such cases.
Task-number: QTBUG-16932
Reviewed-by: Jason Barron
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
doc/src/development/qmake-manual.qdoc
mkspecs/symbian-gcce/qmake.conf
qmake/project.cpp
src/corelib/global/qnamespace.qdoc
src/declarative/graphicsitems/qdeclarativetext.cpp
src/gui/text/qtextdocumentlayout.cpp
src/gui/text/qtextdocumentlayout_p.h
tests/auto/declarative/qdeclarativetext/tst_qdeclarativetext.cpp
tests/auto/networkselftest/networkselftest.pro
tests/auto/qscriptengine/tst_qscriptengine.cpp
tools/designer/src/components/signalsloteditor/signalslot_utils.cpp
tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp
tools/qdoc3/test/qt-build-docs.qdocconf
tools/qdoc3/test/qt-html-templates.qdocconf
tools/qdoc3/test/qt-html-templates_zh_CN.qdocconf
tools/qdoc3/test/qt.qdocconf
tools/qdoc3/test/qt_ja_JP.qdocconf
tools/qdoc3/test/qt_zh_CN.qdocconf
|
| |
| |
| |
| |
| |
| |
| |
| | |
The retrieved VGImage handle was accidentally assigned to a local
variable instead of the member with the same name so it always
ended up creating an empty pixmap.
Reviewed-by: Jani Hautakangas
|
|\ \
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/gui/kernel/qapplication_s60.cpp
src/gui/text/qfontdatabase_s60.cpp
|
| | | |
|
|\ \ \
| |/ /
|/| /
| |/
| |
| | |
Conflicts:
configure
src/network/bearer/bearer.pri
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Shape should not be filled using pen if pen brush
type is NoBrush. OpenVG paint engine didn't check
NoBrush case when applying pen.
Task-number: QTBUG-15870
Reviewed-by: Gunnar
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QImage::converToFormat(format) won't detach QImage if
format stays the same. Because of this, internal QImage
buffer of QVGPixmapData was not deep copied. Drawing
to QPixmap target modified the original QImage that was
used to create QPixmap and in some cases crashed because
paint engine referred to wrong target.
Task-number: QT-4407
Reviewed-by: Jason Barron
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Q_DECL_IMPORT is still __declspec(dllimport), which is unsuitable for
static code.
Commit edbc656b changed Q_DECL_IMPORT_IMPORT to Q_CORE_EXPORT when
declaring QtCore functions in svg.
Now we change Q_DECL_IMPORT to Q_GUI_EXPORT when declaring QtGui
functions into opengl and openvg.
Also removed the redundant keyword "extern" from the function declarations.
Merge-request: 2540
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: mariusSO
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
examples/webkit/imageanalyzer/imageanalyzer.h
examples/webkit/imageanalyzer/mainwindow.h
mkspecs/unsupported/qws/linux-x86-openkode-g++/qplatformdefs.h
src/corelib/io/qfsfileengine_iterator_unix.cpp
src/corelib/io/qfsfileengine_iterator_win.cpp
src/corelib/kernel/qcoreapplication.cpp
src/network/access/qnetworkaccessdatabackend.cpp
src/plugins/bearer/connman/qconnmanservice_linux.cpp
src/plugins/platforms/openvglite/qwindowsurface_vglite.h
src/s60installs/bwins/QtCoreu.def
src/s60installs/eabi/QtCoreu.def
src/s60installs/s60installs.pro
tools/assistant/tools/assistant/helpviewer_qwv.h
tools/qdoc3/test/qt-html-templates.qdocconf
|
| |
| |
| |
| |
| |
| |
| |
| | |
Solution is to round adjustment offsets to integer values to prevent
blurry text.
Task-number: QTBUG-16240
Reviewed-by: Alessandro Portale
|
| |
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| |
| |
| | |
This is mostly the same as for unix.
Merge-request: 2543
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QWidget uses QPainter::drawTiledPixmap to draw textured
background brush but OpenVG paint engine fails to
render pixmaps correctly because of incorrect offset
calculation.
Task-number: QTBUG-15737
Reviewed-by: Gunnar Sletta
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: (27 commits)
Use parent class function to generate Makefile headers in Symbian
Fix spaces
Fix QPixmap::fromImage() in the OpenVG pixmap backend.
Native color dialog on symbian
Fix non-stroked filled paths in OpenVG paint engine.
Fix symbian-mmp.conf include path
Fix a build break when namespace is defined
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.
...
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If QPixmap::fromImage() was called with a QImage that has an alpha
channel and with the 'Qt::NoOpaqueDetection' image conversion flag set,
then we would always create an opaque (RGB32) pixmap. This is
incorrect.
The fix is to check if the source QImage has an alpha channel and if
so, use sourceFormat(), otherwise use RGB32.
Task-number: QT-4278
Reviewed-by: Jani Hautakangas
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The QPainter::fillRect() functions are optimizations to avoid state
changes in the paint engines. Since these functions should be
completely independant of state, ideally they should only call
functions that are also stateless.
QVGPaintEngine::fillRect() has two different code paths for this.
The vgClearRect() path of this function is stateless however in the
case of non-opaque or complex fills, this code path cannot be used and
instead we use the normal path fill function which is not entirely
stateless because ensureTransform() will apply the aliased coordinate
transform if the current state includes a stroked pen.
To avoid this happening for a pure fill (no stroke) we temporary set
the pen state to be Qt::NoPen such that the state used by
ensureTransform() is correct.
Task-number: QTBUG-14717
Reviewed-by: Jani Hautakangas
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The origin of text needs to be rounded, just like the translation in
the transform because text drawn at subpixel positions is unsupported
on some devices. Since the font is integer-based, the advance-array
does not need to be rounded.
Task-number: QTBUG-15263
Reviewed-by: Jason Barron
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure
doc/src/snippets/code/doc_src_qmake-manual.qdoc
mkspecs/features/symbian/application_icon.prf
mkspecs/features/symbian/default_post.prf
mkspecs/features/symbian/symbian_building.prf
qmake/generators/symbian/initprojectdeploy_symbian.cpp
src/multimedia/audio/audio.pri
src/network/access/qnetworkaccessmanager.cpp
src/opengl/gl2paintengineex/qpaintengineex_opengl2.cpp
src/opengl/qgl_p.h
src/plugins/bearer/corewlan/qcorewlanengine.mm
src/plugins/phonon/mmf/mmf.pro
tests/auto/qscriptvalue/tst_qscriptvalue.cpp
tests/auto/qscriptvalue/tst_qscriptvalue.h
tools/qdoc3/doc/qdoc-manual.qdocconf
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Doc: Fixing typo
Fix QTBUG-14640:oci performance problem with qlonglong
32bit => 16bit conversion has 4byte-aligned output.
Fix gcc bug in qReallocAligned
Prevented threading related crash in OpenGL module.
Fix possible crash in QStaticText and QDeclarativeTextLayout
Fix QTBUG-14132 oracle (xe) stored procedures with bind variables get errors
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
32bit => 16bit conversion has 4byte-aligned output.
Fix gcc bug in qReallocAligned
Prevented threading related crash in OpenGL module.
Fix possible crash in QStaticText and QDeclarativeTextLayout
Fix QTBUG-14132 oracle (xe) stored procedures with bind variables get errors
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The QStaticTextItem held an uncounted reference to QFontEngine. The
pointer would dangle in some cases where there was no font object
referencing the engine and the cache was cleaned out (e.g. when a
new application font is added.) Properly count the reference, and also
add reference counting to userData to make it harder to shoot yourself
in the foot, since the QStaticTextItem class is now being used in
different places,
Task-number: QTBUG-14446
Reviewed-by: Martin Jones
|
|\ \ \ \
| |/ / / |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When the state is restored and the 'dirty' flag indicates that the clip
state has changed, the paint engine needs to set 'scissorDirty' flag to
true so that updateScissor() applies the restored clip region to the
scissor rects.
Task-number: QTBUG-14907
Reviewed-by: Jani Hautakangas
|
|\ \ \
| |/ / |
|