summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-04-19 10:25:03 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-04-19 10:25:03 (GMT)
commit85f49621af640002e065837ca691c638760034c3 (patch)
tree22c54cd8841dd24a64764b2379145b7e529b5a58
parent84f0ae22f4b1e7882f4c0fff2a1f5bc47ebceb37 (diff)
parentc1bf30182b100f2dc83ec552685869990b02b23d (diff)
downloadQt-85f49621af640002e065837ca691c638760034c3.zip
Qt-85f49621af640002e065837ca691c638760034c3.tar.gz
Qt-85f49621af640002e065837ca691c638760034c3.tar.bz2
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public: Fix RTL text rendering in the QVGPaintEngine QS60Style: Qt does not draw transparency correctly Small doc changes to Symbian capabilites part
-rw-r--r--doc/src/platforms/platform-notes.qdoc29
-rw-r--r--src/gui/styles/qs60style_s60.cpp2
-rw-r--r--src/openvg/qpaintengine_vg.cpp9
3 files changed, 24 insertions, 16 deletions
diff --git a/doc/src/platforms/platform-notes.qdoc b/doc/src/platforms/platform-notes.qdoc
index 131d035..85fa029 100644
--- a/doc/src/platforms/platform-notes.qdoc
+++ b/doc/src/platforms/platform-notes.qdoc
@@ -419,7 +419,7 @@
\section1 Source Compatibility
Qt for Symbian provides the same level of source compatibility guarantee as
- given for other platforms.  That is, a program which compiles against a given
+ given for other platforms. That is, a program which compiles against a given
version of Qt for Symbian will also compile against all future versions of the
same major release.
@@ -504,28 +504,31 @@
\section1 Required Capabilities
- Distributions of Qt are typically signed with \c{All -TCB}. What your
- application needs to be signed with in order to function with Qt depends
- on what functionality it uses:
+ The Qt libraries are typically signed with \c{All -TCB} capabilites, but
+ that does not mean your Qt application needs to be signed with the same
+ capabilities to function properly. The capabilities your application needs
+ to function properly depends on which parts of Qt you use, here is an
+ overview:
\table
- \header \o Technology
+ \header \o Module
\o Required Symbian Capability
\row \o QtCore
- \o \c PowerMgmt if applications are terminated using QProcess.
+ \o \c PowerMgmt if QProcess::kill(...) or QProcess::terminate(...) is called.
+ \row \o QtCore
+ \o \c AllFiles when \l{http://developer.symbian.org/wiki/index.php/Capabilities_%28Symbian_Signed%29/AllFiles_Capability}{accessing specific areas.}
\row \o QtNetwork
- \o NetworkServices
+ \o \c NetworkServices is basically always required for this module.
\row \o QtMultiMedia
\o \c UserEnvironment if QAudioInput is used.
\endtable
- Depending on what file paths that are accessed and how AllFiles may be
- required. Similarly, if the network is accessed indirectly through
- components such as QtXmlPatterns, QtWebkit or QtScript, the capabilities
- needs to match accordingly.
+ Note that some modules rely on other modules. If your application uses
+ QtXmlPatterns, QtWebkit or QtScript it may still require \c NetworkServices
+ \o as these modules rely on QtNetwork to go online.
- See individual classes' documentation for specifics. If a class does not
- mention Symbian capabilities, it requires none.
+ For more information see the documentation of the individual Qt classes. If
+ a class does not mention Symbian capabilities, it requires none.
\section1 Multimedia and Phonon Support
diff --git a/src/gui/styles/qs60style_s60.cpp b/src/gui/styles/qs60style_s60.cpp
index 74da51e..1ec5869 100644
--- a/src/gui/styles/qs60style_s60.cpp
+++ b/src/gui/styles/qs60style_s60.cpp
@@ -919,7 +919,7 @@ QPixmap QS60StyleModeSpecifics::createSkinnedGraphicsLX(QS60StylePrivate::SkinFr
result = fromFbsBitmap(frame, NULL, flags, targetSize);
}
} else {
- TDisplayMode maskDepth = EGray2;
+ TDisplayMode maskDepth = EGray256;
// Query the skin item for possible frame graphics mask details.
if (skinInstance) {
CAknsMaskedBitmapItemData* skinMaskedBmp = static_cast<CAknsMaskedBitmapItemData*>(
diff --git a/src/openvg/qpaintengine_vg.cpp b/src/openvg/qpaintengine_vg.cpp
index 96e0e86..7445fd7 100644
--- a/src/openvg/qpaintengine_vg.cpp
+++ b/src/openvg/qpaintengine_vg.cpp
@@ -3347,8 +3347,13 @@ void QVGPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textItem)
// Draw the glyphs. We need to fill with the brush associated with
// the Qt pen, not the Qt brush.
d->ensureBrush(state()->pen.brush());
- vgDrawGlyphs(glyphCache->font, glyphs.size(), (VGuint*)glyphs.data(),
- NULL, NULL, VG_FILL_PATH, VG_TRUE);
+ if (ti.renderFlags() & QTextItem::RightToLeft) {
+ for (int index = glyphs.size() - 1; index >= 0; --index)
+ vgDrawGlyph(glyphCache->font, glyphs[index], VG_FILL_PATH, VG_TRUE);
+ } else {
+ vgDrawGlyphs(glyphCache->font, glyphs.size(), (VGuint*)glyphs.data(),
+ NULL, NULL, VG_FILL_PATH, VG_TRUE);
+ }
#else
// OpenGL 1.0 does not have support for VGFont and glyphs,
// so fall back to the default Qt path stroking algorithm.