From a5fd2b16e292546d9113fe1bdf844e7acfc21cd7 Mon Sep 17 00:00:00 2001 From: Frans Englich Date: Wed, 18 Nov 2009 11:02:21 +0100 Subject: Complement Phonon for Symbian documentation. Reviewed-by: Gareth Stockwell --- doc/src/platforms/platform-notes.qdoc | 8 ++++++-- src/plugins/phonon/phonon.pro | 4 ++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/src/platforms/platform-notes.qdoc b/doc/src/platforms/platform-notes.qdoc index 9896b08..c7477bc 100644 --- a/doc/src/platforms/platform-notes.qdoc +++ b/doc/src/platforms/platform-notes.qdoc @@ -416,7 +416,7 @@ \section1 Multimedia and Phonon Support - Qt provides a backend for Qt's multimedia module, Phonon, which supports + Qt provides a backend for Qt's Phonon module, which supports video and sound playback through Symbian's Multimedia Framework, MMF. In this release the support is experimental. Video playback may have @@ -429,7 +429,11 @@ In addition, there exists a backend for the Helix framework. However, due to it not shipping with Qt, its availability depends on the Symbian - platform in use. If available, it is loaded instead of the MMF plugin. + platform in use. If available, it is loaded in preference over the MMF + plugin. The Helix plugin requires Symbian signed capabilities. If the + application does not have those capabilities, the MMF plugin, if present on + the device, will be loaded instead. The capabilities the Helix backend + requires are AllFiles, DiskAdmin and MultimediaDD. */ diff --git a/src/plugins/phonon/phonon.pro b/src/plugins/phonon/phonon.pro index 814a062..803d8f9 100644 --- a/src/plugins/phonon/phonon.pro +++ b/src/plugins/phonon/phonon.pro @@ -7,4 +7,8 @@ mac:contains(QT_CONFIG, phonon-backend): SUBDIRS *= qt7 win32:!wince*:contains(QT_CONFIG, phonon-backend): SUBDIRS *= ds9 wince*:contains(QT_CONFIG, phonon-backend): SUBDIRS *= waveout wince*:contains(QT_CONFIG, directshow): SUBDIRS *= ds9 + +# Note that the MMF backend is in some scenarios an important complement to the +# Helix backend: the latter requires Symbian signed capabilities, hence MMF +# provides multimedia for self signed scenarios. symbian:contains(QT_CONFIG, phonon-backend): SUBDIRS *= mmf -- cgit v0.12 From 6be49367ad4a975a50c0407e768e098b56d317cd Mon Sep 17 00:00:00 2001 From: Frans Englich Date: Wed, 18 Nov 2009 12:59:55 +0100 Subject: Symbian support: incorporate feedback from Lars. Reviewed-by: Espen Riskedal Reviewed-by: Frans Englich --- doc/src/platforms/symbian-support.qdoc | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/doc/src/platforms/symbian-support.qdoc b/doc/src/platforms/symbian-support.qdoc index 916eda5..3c2bbf1 100644 --- a/doc/src/platforms/symbian-support.qdoc +++ b/doc/src/platforms/symbian-support.qdoc @@ -60,11 +60,11 @@ As with every supported platform, we will strive to maintain application behavior and binary compatibility throughout the lifetime of - the Qt 4.x series. However, due to the fact that Symbian support is - newly added in 4.6.0, it is possible that minor corrections to the - behavior and to the ABI in 4.6.1 will be required in order to ensure - compatibility going forward. If we break the binary compatiblity promise, - we will document such changes in the 4.6.1 release. + the Qt 4.x series. However, due to the fact that Symbian support is newly + added in 4.6.0, there is a slight possibility that minor corrections to the + ABI might be required in 4.6.1, in order to ensure compatibility going + forward. Any such change will be clearly documented in the release notes + for 4.6.1. \section1 Supported Devices @@ -99,11 +99,11 @@ \header \o Technology \o Note \row \o QtConcurrent - \o + \o Planned for some future release \row \o QtDBus \o No current plans to support this feature. - \row \o QtOpenGL - \o Support for OpenGL ES planned for a future release. + \row \o QtOpenGL ES + \o Planned for some future release \row \o Printing support \o No current plans to support this feature. \row \o Qt3Support @@ -119,7 +119,8 @@ \o The only driver supported is SQLite. \row \o QtMultimedia \o Although the module itself is supported, no backend for Symbian - is available. However, there is a backend available for Phonon. + is currently available. However, there is a backend available + for Phonon. \endtable \section1 Known Issues -- cgit v0.12 From 70b121ca310c99269bb08161000215f09b41a84b Mon Sep 17 00:00:00 2001 From: Frans Englich Date: Wed, 18 Nov 2009 13:14:35 +0100 Subject: Incorporate feedback from marketing. --- doc/src/platforms/platform-notes.qdoc | 104 ++++++++++++++++++++++++++------- doc/src/platforms/symbian-support.qdoc | 90 ---------------------------- 2 files changed, 83 insertions(+), 111 deletions(-) diff --git a/doc/src/platforms/platform-notes.qdoc b/doc/src/platforms/platform-notes.qdoc index c7477bc..eaccad8 100644 --- a/doc/src/platforms/platform-notes.qdoc +++ b/doc/src/platforms/platform-notes.qdoc @@ -406,34 +406,96 @@ \page platform-notes-symbian.html \title Platform Notes - Symbian \contentspage Platform Notes + \ingroup platform-specific + \brief Information about the state of support for the Symbian platform. - This page contains information about the Symbian platforms Qt is currently known - to run on. More information about the combinations of platforms and compilers - supported by Qt can be found on the \l{Supported Platforms} page. + As with any port, the maturity for Qt for Symbian has not yet reached the + same level as other established Qt ports. This page documents the current + notes for the Symbian port. + + \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 + version of Qt for Symbian will also compile against all future versions of the + same major release. + + \section1 Binary Compatibility + + As with every supported platform, we will strive to maintain + application behavior and binary compatibility throughout the lifetime of + the Qt 4.x series. However, due to the fact that Symbian support is newly + added in 4.6.0, there is a slight possibility that minor corrections to the + application binary interface (ABI) might be required in 4.6.1, in order to + ensure compatibility going forward. Any such change will be clearly + documented in the release notes for 4.6.1. - For information about mixing exceptions with Symbian leaves, - see \l{Exception Safety with Symbian} + \section1 Supported Devices - \section1 Multimedia and Phonon Support + Qt is designed to work on any device which runs one of the following + versions of Symbian: - Qt provides a backend for Qt's Phonon module, which supports - video and sound playback through Symbian's Multimedia Framework, MMF. + \table + \header \o Symbian Version + \row \o S60 3.1 + \row \o S60 3.2 + \row \o S60 5.0 (Symbian ^1) + \endtable + + Qt has received \l{Tier 1 Platforms}{Tier 1} testing on the following phone models: + + \table + \header \o Phone + \row \o Nokia 5800 + \row \o Nokia E71 + \row \o Nokia E72 + \row \o Nokia N78 + \row \o Nokia N95 + \row \o Nokia N97 + \row \o Samsung i8910 + \endtable + + \section1 Supported Functionality + + The following technologies and classes are not currently supported: + + \table + \header \o Technology + \o Note + \row \o QtConcurrent + \o Planned for future release. + \row \o QtDBus + \o No current plans to support this feature. + \row \o QtOpenGL ES + \o Planned for future release. + \row \o Printing support + \o No current plans to support this feature. + \row \o Qt3Support + \o No current plans to support this feature. + \endtable + + The following technologies have limited support: + + \table + \header \o Technology + \o Note + \row \o QtSql + \o The only driver supported is SQLite. + \row \o QtMultimedia + \o Although the module itself is supported, no backend for Symbian + is currently available. However, there is a backend available + for Phonon. + \endtable - In this release the support is experimental. Video playback may have - flickering issues, and support for effects and playback queueing is - incomplete. + \section1 Known Issues - The audio and video formats that Phonon supports depends on what support - the platform provides for MMF. The emulator is known to have limited - codec support. + Known issues can be found by visiting the + \l{http://qt.gitorious.org/qt/pages/Qt460KnownIssues}{wiki page} with an + up-to-date list of known issues, and the list of bugs can be found by + \l{http://bugreports.qt.nokia.com/browse/QTBUG/component/19171}{browsing} the + S60 component in Qt's public task tracker, located at + \l{http://bugreports.qt.nokia.com/}{http://bugreports.qt.nokia.com/}. - In addition, there exists a backend for the Helix framework. However, due - to it not shipping with Qt, its availability depends on the Symbian - platform in use. If available, it is loaded in preference over the MMF - plugin. The Helix plugin requires Symbian signed capabilities. If the - application does not have those capabilities, the MMF plugin, if present on - the device, will be loaded instead. The capabilities the Helix backend - requires are AllFiles, DiskAdmin and MultimediaDD. */ diff --git a/doc/src/platforms/symbian-support.qdoc b/doc/src/platforms/symbian-support.qdoc index 3c2bbf1..0247bdb 100644 --- a/doc/src/platforms/symbian-support.qdoc +++ b/doc/src/platforms/symbian-support.qdoc @@ -42,95 +42,5 @@ /*! \page symbian-support.html \title Qt for Symbian - \ingroup platform-specific - \brief Information about the state of support for the Symbian platform. - - Qt for Symbian is not yet fully on a par with other platforms with respect - to stability and feature support. This page documents the current shortcomings - of the Symbian port. - - \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 - version of Qt for Symbian will also compile against all future versions of the - same major release. - - \section1 Binary Compatibility - - As with every supported platform, we will strive to maintain - application behavior and binary compatibility throughout the lifetime of - the Qt 4.x series. However, due to the fact that Symbian support is newly - added in 4.6.0, there is a slight possibility that minor corrections to the - ABI might be required in 4.6.1, in order to ensure compatibility going - forward. Any such change will be clearly documented in the release notes - for 4.6.1. - - \section1 Supported Devices - - Qt should generally work on any device which runs one of the following - versions of Symbian: - - \table - \header \o Symbian Version - \row \o S60 3.1 - \row \o S60 3.2 - \row \o S60 5.0 (Symbian ^1) - \endtable - - Qt has received Tier 1 testing on the following phone models: - - \table - \header \o Phone - \row \o Nokia 5800 - \row \o Nokia E71 - \row \o Nokia E72 - \row \o Nokia N78 - \row \o Nokia N95 - \row \o Nokia N97 - \row \o Samsung i8910 - \endtable - - \section1 Supported Functionality - - The following technologies and classes are not currently supported: - - \table - \header \o Technology - \o Note - \row \o QtConcurrent - \o Planned for some future release - \row \o QtDBus - \o No current plans to support this feature. - \row \o QtOpenGL ES - \o Planned for some future release - \row \o Printing support - \o No current plans to support this feature. - \row \o Qt3Support - \o No current plans to support this feature. - \endtable - - The following technologies have limited support: - - \table - \header \o Technology - \o Note - \row \o QtSql - \o The only driver supported is SQLite. - \row \o QtMultimedia - \o Although the module itself is supported, no backend for Symbian - is currently available. However, there is a backend available - for Phonon. - \endtable - - \section1 Known Issues - - Known issues can be found by visiting the - \l{http://qt.gitorious.org/qt/pages/Qt460KnownIssues}{wiki page} with an - up-to-date list of known issues, and the list of bugs can be found by - \l{http://bugreports.qt.nokia.com/browse/QTBUG/component/19171}{browsing} the - S60 component in Qt's public task tracker, located at - \l{http://bugreports.qt.nokia.com/}{http://bugreports.qt.nokia.com/}. - */ -- cgit v0.12 From 952f0ca3f371b040bd8b8a007cdf87bf0e4843ad Mon Sep 17 00:00:00 2001 From: Janne Anttila Date: Wed, 18 Nov 2009 14:47:42 +0200 Subject: Changed MIF filename from UID to target name in Symbian. This change makes it possible to define ICON keyword in pro file without UID3. It is safe to use target as an icon name since Symbian devices cannot have two different binaries with the same name as all binaries are located in \sys\bin. This means there cannot be also two mif files with same target name. Also all native S60 apps use target name as an MIF basename. Target name is also much easier to associate with app than UID. Task-number: QTBUG-4677 Reviewed-by: Miikka Heikkinen --- mkspecs/features/symbian/application_icon.prf | 30 ++++++++++++++++++--------- qmake/generators/symbian/symmake.cpp | 21 ++++++++++--------- qmake/generators/symbian/symmake.h | 4 ++-- qmake/generators/symbian/symmake_abld.cpp | 3 ++- qmake/generators/symbian/symmake_abld.h | 2 +- qmake/generators/symbian/symmake_sbsv2.cpp | 7 +++++-- qmake/generators/symbian/symmake_sbsv2.h | 2 +- 7 files changed, 42 insertions(+), 27 deletions(-) diff --git a/mkspecs/features/symbian/application_icon.prf b/mkspecs/features/symbian/application_icon.prf index b0c1bb1..62fd018 100644 --- a/mkspecs/features/symbian/application_icon.prf +++ b/mkspecs/features/symbian/application_icon.prf @@ -3,38 +3,48 @@ load(data_caging_paths) # If no_icon keyword exist, the S60 UI app is just made hidden. This because S60 app FW # requires the registration resource file to exist always contains( CONFIG, no_icon ) { - symbian:RSS_RULES ="hidden = KAppIsHidden;" + symbian:RSS_RULES ="hidden = KAppIsHidden;" CONFIG -= no_icon } else { # There is no point in compiling the MIF icon if no_icon CONFIGS is set !isEmpty(ICON) { - + !count(ICON, $$size(TRANSLATIONS)):!count(ICON, 1) { message("ICON keyword must have one or the same amout of items as in TRANSLATIONS keyword") } - # MIF files will have UID in their names, if TARGET.UID3 is not set, remind the user - isEmpty(TARGET.UID3):error("TARGET.UID3 must be explicitly defined for ICON generation") + # Try to produce indentical string to fixedTarget in SymbianMakefileGenerator, replaced chars taken + # from SymbianMakefileGenerator::removeSpecialCharacters. + # + # Note: it is not a major problem even baseTarget is not 100% identical to fixedTarget since qmake + # only uses filename from RSS_RULES.icon_file when referring to icon file name. + baseTarget = $$basename(TARGET) + baseTarget = $$replace(baseTarget, /,_) + baseTarget = $$replace(baseTarget, \\,_) + baseTarget = $$replace(baseTarget, -,_) + baseTarget = $$replace(baseTarget, :,_) + baseTarget = $$replace(baseTarget, \.,_) + baseTarget = $$replace(baseTarget, " ",_) # Note: symbian-sbsv2 builds can't utilize extra compiler for mifconv, so ICON handling is done in code - symbian-abld { - #Makefile: requires paths with backslash + symbian-abld { + #Makefile: requires paths with backslash ICON = $$replace( ICON, /, \\) # Extra compiler rules for mifconv - mifconv.output = ${ZDIR}$$APP_RESOURCE_DIR/$${TARGET.UID3}.mif + mifconv.output = ${ZDIR}$$APP_RESOURCE_DIR/$${baseTarget}.mif # Based on: http://www.forum.nokia.com/document/Cpp_Developers_Library # svg-t icons should always use /c32 depth - mifconv.commands = mifconv ${QMAKE_FILE_OUT} $$join(ICON, " /c32 ", "/c32 ",) + mifconv.commands = mifconv ${QMAKE_FILE_OUT} $$join(ICON, " /c32 ", "/c32 ",) mifconv.input = ICON mifconv.CONFIG = no_link combine # target_predeps together with combine seems not to work correctly, lets define it by ourselves PRE_TARGETDEPS += $$mifconv.output QMAKE_EXTRA_COMPILERS += mifconv - } + } # Rules to use generated MIF file from symbian resources RSS_RULES.number_of_icons = $$size(ICON) - RSS_RULES.icon_file = $$replace( APP_RESOURCE_DIR, /, \\\\ )\\\\$${TARGET.UID3}.mif + RSS_RULES.icon_file = $$APP_RESOURCE_DIR/$${baseTarget}.mif } } diff --git a/qmake/generators/symbian/symmake.cpp b/qmake/generators/symbian/symmake.cpp index 1326a49..afaf338 100644 --- a/qmake/generators/symbian/symmake.cpp +++ b/qmake/generators/symbian/symmake.cpp @@ -209,7 +209,7 @@ bool SymbianMakefileGenerator::writeMakefile(QTextStream &t) generatePkgFile(iconFile); } - writeBldInfContent(t, generatePkg); + writeBldInfContent(t, generatePkg, iconFile); // Generate empty wrapper makefile here, because wrapper makefile must exist before writeMkFile, // but all required data is not yet available. @@ -378,14 +378,11 @@ void SymbianMakefileGenerator::generatePkgFile(const QString &iconFile) .arg(installPathRegResource) .arg(fixedTarget + "_reg.rsc") << endl; - QString myIconFile = iconFile; - myIconFile = myIconFile.replace("\\\\", "\\"); - if (!iconFile.isEmpty()) { t << QString("\"%1epoc32/data/z%2\" - \"!:%3\"") .arg(epocRoot()) - .arg(QString(myIconFile).replace('\\','/')) - .arg(myIconFile) << endl << endl; + .arg(iconFile) + .arg(QDir::toNativeSeparators(iconFile)) << endl << endl; } } } @@ -1120,7 +1117,7 @@ void SymbianMakefileGenerator::writeMmpFileRulesPart(QTextStream& t) } } -void SymbianMakefileGenerator::writeBldInfContent(QTextStream &t, bool addDeploymentExtension) +void SymbianMakefileGenerator::writeBldInfContent(QTextStream &t, bool addDeploymentExtension, const QString &iconFile) { // Read user defined bld inf rules @@ -1242,7 +1239,7 @@ void SymbianMakefileGenerator::writeBldInfContent(QTextStream &t, bool addDeploy // Generate extension rules - writeBldInfExtensionRulesPart(t); + writeBldInfExtensionRulesPart(t, iconFile); userItems = userBldInfRules.value(BLD_INF_TAG_EXTENSIONS); foreach(QString item, userItems) @@ -1320,14 +1317,17 @@ void SymbianMakefileGenerator::writeRssFile(QString &numberOfIcons, QString &ico t << "\t\t{" << endl; t << "\t\tcaption = STRING_r_caption;" << endl; - if (numberOfIcons.isEmpty() || iconFile.isEmpty()) { + QString rssIconFile = iconFile; + rssIconFile = rssIconFile.replace("/", "\\\\"); + + if (numberOfIcons.isEmpty() || rssIconFile.isEmpty()) { // There can be maximum one item in this tag, validated when parsed t << "\t\tnumber_of_icons = 0;" << endl; t << "\t\ticon_file = \"\";" << endl; } else { // There can be maximum one item in this tag, validated when parsed t << "\t\tnumber_of_icons = " << numberOfIcons << ";" << endl; - t << "\t\ticon_file = \"" << iconFile << "\";" << endl; + t << "\t\ticon_file = \"" << rssIconFile << "\";" << endl; } t << "\t\t};" << endl; t << "\t}" << endl; @@ -1697,6 +1697,7 @@ void SymbianMakefileGenerator::generateCleanCommands(QTextStream& t, void SymbianMakefileGenerator::removeSpecialCharacters(QString& str) { + // When modifying this method check also application_icon.prf str.replace(QString("/"), QString("_")); str.replace(QString("\\"), QString("_")); str.replace(QString("-"), QString("_")); diff --git a/qmake/generators/symbian/symmake.h b/qmake/generators/symbian/symmake.h index a3e2c17..2e78c46 100644 --- a/qmake/generators/symbian/symmake.h +++ b/qmake/generators/symbian/symmake.h @@ -99,7 +99,7 @@ protected: void checkOverridability(QStringList &overridableKeywords, QString &checkString); void writeHeader(QTextStream &t); - void writeBldInfContent(QTextStream& t, bool addDeploymentExtension); + void writeBldInfContent(QTextStream& t, bool addDeploymentExtension, const QString &iconFile); static bool removeDuplicatedStrings(QStringList& stringList); @@ -143,7 +143,7 @@ protected: void generateDistcleanTargets(QTextStream& t); // Subclass implements - virtual void writeBldInfExtensionRulesPart(QTextStream& t) = 0; + virtual void writeBldInfExtensionRulesPart(QTextStream& t, const QString &iconTargetFile) = 0; virtual void writeBldInfMkFilePart(QTextStream& t, bool addDeploymentExtension) = 0; virtual void writeMkFile(const QString& wrapperFileName, bool deploymentOnly) = 0; virtual void writeWrapperMakefile(QFile& wrapperFile, bool isPrimaryMakefile) = 0; diff --git a/qmake/generators/symbian/symmake_abld.cpp b/qmake/generators/symbian/symmake_abld.cpp index 1b5464f..6225720 100644 --- a/qmake/generators/symbian/symmake_abld.cpp +++ b/qmake/generators/symbian/symmake_abld.cpp @@ -379,10 +379,11 @@ void SymbianAbldMakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, bool } } -void SymbianAbldMakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t) +void SymbianAbldMakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t, const QString &iconTargetFile) { // We don't use extensions for anything in abld Q_UNUSED(t); + Q_UNUSED(iconTargetFile); } bool SymbianAbldMakefileGenerator::writeDeploymentTargets(QTextStream &t) diff --git a/qmake/generators/symbian/symmake_abld.h b/qmake/generators/symbian/symmake_abld.h index 11b9cd1..56d31e1 100644 --- a/qmake/generators/symbian/symmake_abld.h +++ b/qmake/generators/symbian/symmake_abld.h @@ -51,7 +51,7 @@ class SymbianAbldMakefileGenerator : public SymbianMakefileGenerator protected: // Inherited from parent - virtual void writeBldInfExtensionRulesPart(QTextStream& t); + virtual void writeBldInfExtensionRulesPart(QTextStream& t, const QString &iconTargetFile); virtual void writeBldInfMkFilePart(QTextStream& t, bool addDeploymentExtension); virtual void writeMkFile(const QString& wrapperFileName, bool deploymentOnly); virtual void writeWrapperMakefile(QFile& wrapperFile, bool isPrimaryMakefile); diff --git a/qmake/generators/symbian/symmake_sbsv2.cpp b/qmake/generators/symbian/symmake_sbsv2.cpp index 5e624de..4fd5833 100644 --- a/qmake/generators/symbian/symmake_sbsv2.cpp +++ b/qmake/generators/symbian/symmake_sbsv2.cpp @@ -238,7 +238,7 @@ void SymbianSbsv2MakefileGenerator::writeWrapperMakefile(QFile& wrapperFile, boo } } -void SymbianSbsv2MakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t) +void SymbianSbsv2MakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t, const QString &iconTargetFile) { // Makes sure we have needed FLMs in place. exportFlm(); @@ -379,9 +379,12 @@ void SymbianSbsv2MakefileGenerator::writeBldInfExtensionRulesPart(QTextStream& t QString iconPath = iconInfo.path(); QString iconFile = iconInfo.baseName(); + QFileInfo iconTargetInfo = fileInfo(iconTargetFile); + QString iconTarget = iconTargetInfo.fileName(); + t << "OPTION SOURCES -c32 " << iconFile << endl; t << "OPTION SOURCEDIR " << iconPath << endl; - t << "OPTION TARGETFILE " << uid3 << ".mif" << endl; + t << "OPTION TARGETFILE " << iconTarget << endl; t << "OPTION SVGENCODINGVERSION 3" << endl; // Compatibility with S60 3.1 devices and up t << "END" << endl; } diff --git a/qmake/generators/symbian/symmake_sbsv2.h b/qmake/generators/symbian/symmake_sbsv2.h index 9472b68..3394908 100644 --- a/qmake/generators/symbian/symmake_sbsv2.h +++ b/qmake/generators/symbian/symmake_sbsv2.h @@ -51,7 +51,7 @@ class SymbianSbsv2MakefileGenerator : public SymbianMakefileGenerator protected: // Inherited from parent - virtual void writeBldInfExtensionRulesPart(QTextStream& t); + virtual void writeBldInfExtensionRulesPart(QTextStream& t, const QString &iconTargetFile); virtual void writeBldInfMkFilePart(QTextStream& t, bool addDeploymentExtension); virtual void writeMkFile(const QString& wrapperFileName, bool deploymentOnly); virtual void writeWrapperMakefile(QFile& wrapperFile, bool isPrimaryMakefile); -- cgit v0.12 From 9a4995711746103286ea3fb9cc576e133fd29e4e Mon Sep 17 00:00:00 2001 From: Frans Englich Date: Wed, 18 Nov 2009 15:36:35 +0100 Subject: Symbian docs: Repair some documentation damage, remove obsolete file. Reviewed-by: TrustMe --- doc/src/platforms/platform-notes.qdoc | 23 +++++++++++++++ doc/src/platforms/supported-platforms.qdoc | 2 +- doc/src/platforms/symbian-support.qdoc | 46 ------------------------------ 3 files changed, 24 insertions(+), 47 deletions(-) delete mode 100644 doc/src/platforms/symbian-support.qdoc diff --git a/doc/src/platforms/platform-notes.qdoc b/doc/src/platforms/platform-notes.qdoc index eaccad8..68015a6 100644 --- a/doc/src/platforms/platform-notes.qdoc +++ b/doc/src/platforms/platform-notes.qdoc @@ -496,6 +496,29 @@ S60 component in Qt's public task tracker, located at \l{http://bugreports.qt.nokia.com/}{http://bugreports.qt.nokia.com/}. + For information about mixing exceptions with Symbian leaves, see + \l{Exception Safety with Symbian}. + + \section1 Multimedia and Phonon Support + + Qt provides a backend for Qt's Phonon module, which supports + video and sound playback through Symbian's Multimedia Framework, MMF. + + In this release the support is experimental. Video playback may have + flickering issues, and support for effects and playback queueing is + incomplete. + + The audio and video formats that Phonon supports depends on what support + the platform provides for MMF. The emulator is known to have limited + codec support. + + In addition, there exists a backend for the Helix framework. However, due + to it not shipping with Qt, its availability depends on the Symbian + platform in use. If available, it is loaded in preference over the MMF + plugin. The Helix plugin requires Symbian signed capabilities. If the + application does not have those capabilities, the MMF plugin, if present on + the device, will be loaded instead. The capabilities the Helix backend + requires are AllFiles, DiskAdmin and MultimediaDD. */ diff --git a/doc/src/platforms/supported-platforms.qdoc b/doc/src/platforms/supported-platforms.qdoc index 2b4792f..560ddfe 100644 --- a/doc/src/platforms/supported-platforms.qdoc +++ b/doc/src/platforms/supported-platforms.qdoc @@ -89,7 +89,7 @@ \o gcc (\l{http://www.codesourcery.com/}{Codesourcery version)} \row \o Windows CE 5.0 (ARMv4i, x86, MIPS) \o MSVC 2005 WinCE 5.0 Standard (x86, pocket, smart, mipsii) - \row \o \l {Qt for Symbian} {Symbian (S60 3.1, 3.2 and 5.0)} + \row \o Symbian (S60 3.1, 3.2 and 5.0) \o RVCT, GCCE, WINSCW \endtable diff --git a/doc/src/platforms/symbian-support.qdoc b/doc/src/platforms/symbian-support.qdoc deleted file mode 100644 index 0247bdb..0000000 --- a/doc/src/platforms/symbian-support.qdoc +++ /dev/null @@ -1,46 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the documentation of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -/*! - \page symbian-support.html - \title Qt for Symbian -*/ - -- cgit v0.12 From 0f9c96ead0ae5d52827ae0f0b277178cd2103e46 Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Wed, 18 Nov 2009 18:44:51 +0100 Subject: Fix tst_QTextLayout::testTabDPIScale on Symbian hardware Increased the sample positions of the tabs a bit in order to pass also un high DPI devices such as the XpressMusic 5800. The former positions were too narrow under high DPI, and overlapped by the text. Reviewed-By: Liang Qi --- tests/auto/qtextlayout/tst_qtextlayout.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/auto/qtextlayout/tst_qtextlayout.cpp b/tests/auto/qtextlayout/tst_qtextlayout.cpp index 7c3f4f2..1df26b8 100644 --- a/tests/auto/qtextlayout/tst_qtextlayout.cpp +++ b/tests/auto/qtextlayout/tst_qtextlayout.cpp @@ -1115,14 +1115,14 @@ void tst_QTextLayout::testTabDPIScale() QTextOption option = layout.textOption(); QList tabs; QTextOption::Tab tab; - tab.position = 200; + tab.position = 300; tabs.append(tab); - tab.position = 400; + tab.position = 600; tab.type = QTextOption::RightTab; tabs.append(tab); - tab.position = 600; + tab.position = 800; tab.type = QTextOption::CenterTab; tabs.append(tab); option.setTabs(tabs); -- cgit v0.12 From 6340cf327515252ffbb21e98486e9abfc713149e Mon Sep 17 00:00:00 2001 From: Iain Date: Wed, 18 Nov 2009 22:33:30 +0100 Subject: Disable linker warning 6780 in RVCT builds for Symbian OS The linker warning that indicates symbol visibility changes is not useful as it is an expected change to symbol visibility and produces lots of clutter in the build logs. (It is not desirable to follow the ELF spec when it comes to symbol visibility in this case, which is why the linker warns and we ignore it) This is likely to be a Raptor-only issue - I believe abld suppresses the warning by default (at least in ABIv1 mode) Also update gui.pro to use LFLAGS rather than MMP_RULES to alter the arguments to ARMCC toolchain. qmake ought to detect this (incorrect) usage of MMP_RULES and abort MMP file generation - raised QTBU-5961 to look at this. Reviewed-by: Shane Kearns --- mkspecs/features/symbian/armcc_warnings.prf | 3 +++ src/gui/gui.pro | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/mkspecs/features/symbian/armcc_warnings.prf b/mkspecs/features/symbian/armcc_warnings.prf index 95b3bc0..72bc996 100644 --- a/mkspecs/features/symbian/armcc_warnings.prf +++ b/mkspecs/features/symbian/armcc_warnings.prf @@ -8,3 +8,6 @@ # 2874: may be used before being set (this one sounds useful, but # it's output also for class instances, making it useless in practice) QMAKE_CFLAGS.ARMCC += --diag_suppress 111,185,191,368,1293,1294,2874 + +# 6780: visibility removed from symbol '' through +QMAKE_LFLAGS.ARMCC += --diag_suppress 6780 diff --git a/src/gui/gui.pro b/src/gui/gui.pro index 7c24002..4215f97 100644 --- a/src/gui/gui.pro +++ b/src/gui/gui.pro @@ -54,4 +54,4 @@ DEFINES += Q_INTERNAL_QAPP_SRC symbian:TARGET.UID3=0x2001B2DD # ro-section in gui can exceed default allocated space, so more rw-section little further -symbian-sbsv2: MMP_RULES += "LINKEROPTION armcc --rw-base 0x800000" +symbian-sbsv2: QMAKE_LFLAGS.ARMCC += --rw-base 0x800000" -- cgit v0.12