summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authoraxis <qt-info@nokia.com>2009-11-13 11:35:37 (GMT)
committeraxis <qt-info@nokia.com>2009-11-13 11:35:37 (GMT)
commit2950c82bc3681b71742b18c2b315675e2f343cc0 (patch)
tree94c53dd3891e0c76ec474591f553c5fe9312cb83 /src
parent97c76cf8a3320d6e99126965287697f8a14de4d7 (diff)
parentd1d737d8497b6a0d80e16c81ef20b9eac6ee72b6 (diff)
downloadQt-2950c82bc3681b71742b18c2b315675e2f343cc0.zip
Qt-2950c82bc3681b71742b18c2b315675e2f343cc0.tar.gz
Qt-2950c82bc3681b71742b18c2b315675e2f343cc0.tar.bz2
Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.6-s60
Diffstat (limited to 'src')
-rw-r--r--src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h6
-rw-r--r--src/3rdparty/phonon/CMakeLists.txt25
-rw-r--r--src/3rdparty/phonon/ds9/CMakeLists.txt5
-rw-r--r--src/3rdparty/phonon/ds9/ds9.desktop42
-rw-r--r--src/3rdparty/phonon/gstreamer/CMakeLists.txt24
-rw-r--r--src/3rdparty/phonon/gstreamer/audiooutput.cpp13
-rw-r--r--src/3rdparty/phonon/gstreamer/backend.cpp30
-rw-r--r--src/3rdparty/phonon/gstreamer/mediaobject.cpp52
-rw-r--r--src/3rdparty/phonon/includes/CMakeLists.txt4
-rw-r--r--src/3rdparty/phonon/phonon/abstractaudiooutput.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/abstractaudiooutput.h2
-rw-r--r--src/3rdparty/phonon/phonon/abstractaudiooutput_p.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/abstractaudiooutput_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/abstractmediastream.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/abstractmediastream.h2
-rw-r--r--src/3rdparty/phonon/phonon/abstractmediastream_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/abstractvideooutput.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/abstractvideooutput.h2
-rw-r--r--src/3rdparty/phonon/phonon/abstractvideooutput_p.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/abstractvideooutput_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/addoninterface.h2
-rw-r--r--src/3rdparty/phonon/phonon/audiooutput.cpp12
-rw-r--r--src/3rdparty/phonon/phonon/audiooutput.h2
-rw-r--r--src/3rdparty/phonon/phonon/audiooutput_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/audiooutputinterface.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/audiooutputinterface.h2
-rw-r--r--src/3rdparty/phonon/phonon/backendcapabilities.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/backendcapabilities.h2
-rw-r--r--src/3rdparty/phonon/phonon/backendcapabilities_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/backendinterface.h2
-rw-r--r--src/3rdparty/phonon/phonon/effect.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/effect.h2
-rw-r--r--src/3rdparty/phonon/phonon/effect_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/effectinterface.h2
-rw-r--r--src/3rdparty/phonon/phonon/effectparameter.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/effectparameter.h2
-rw-r--r--src/3rdparty/phonon/phonon/effectparameter_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/effectwidget.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/effectwidget.h4
-rw-r--r--src/3rdparty/phonon/phonon/effectwidget_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/factory.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/factory_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/frontendinterface_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/globalconfig.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/globalconfig_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/globalstatic_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/iodevicestream.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/iodevicestream_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/mediacontroller.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/mediacontroller.h2
-rw-r--r--src/3rdparty/phonon/phonon/medianode.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/medianode.h2
-rw-r--r--src/3rdparty/phonon/phonon/medianode_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/medianodedestructionhandler_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/mediaobject.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/mediaobject.h2
-rw-r--r--src/3rdparty/phonon/phonon/mediaobject_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/mediaobjectinterface.h2
-rw-r--r--src/3rdparty/phonon/phonon/mediasource.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/mediasource.h2
-rw-r--r--src/3rdparty/phonon/phonon/mediasource_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/objectdescription.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/objectdescription.h2
-rw-r--r--src/3rdparty/phonon/phonon/objectdescription_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/objectdescriptionmodel.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/objectdescriptionmodel.h2
-rw-r--r--src/3rdparty/phonon/phonon/objectdescriptionmodel_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/path.cpp6
-rw-r--r--src/3rdparty/phonon/phonon/path.h2
-rw-r--r--src/3rdparty/phonon/phonon/path_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/phonon_export.h2
-rw-r--r--src/3rdparty/phonon/phonon/phonondefs.h2
-rw-r--r--src/3rdparty/phonon/phonon/phonondefs_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/phononnamespace.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/phononnamespace.h2
-rw-r--r--src/3rdparty/phonon/phonon/phononnamespace.h.in4
-rw-r--r--src/3rdparty/phonon/phonon/phononnamespace_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/platform.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/platform_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/platformplugin.h2
-rw-r--r--src/3rdparty/phonon/phonon/qsettingsgroup_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/seekslider.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/seekslider.h2
-rw-r--r--src/3rdparty/phonon/phonon/seekslider_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/streaminterface.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/streaminterface.h2
-rw-r--r--src/3rdparty/phonon/phonon/streaminterface_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/videoplayer.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/videoplayer.h2
-rw-r--r--src/3rdparty/phonon/phonon/videowidget.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/videowidget.h2
-rw-r--r--src/3rdparty/phonon/phonon/videowidget_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/videowidgetinterface.h2
-rw-r--r--src/3rdparty/phonon/phonon/volumefadereffect.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/volumefadereffect.h2
-rw-r--r--src/3rdparty/phonon/phonon/volumefadereffect_p.h2
-rw-r--r--src/3rdparty/phonon/phonon/volumefaderinterface.h2
-rw-r--r--src/3rdparty/phonon/phonon/volumeslider.cpp2
-rw-r--r--src/3rdparty/phonon/phonon/volumeslider.h2
-rw-r--r--src/3rdparty/phonon/phonon/volumeslider_p.h2
-rw-r--r--src/corelib/global/qnamespace.qdoc2
-rw-r--r--src/corelib/kernel/qabstractitemmodel.cpp6
-rw-r--r--src/corelib/kernel/qeventdispatcher_win.cpp5
-rw-r--r--src/corelib/tools/qscopedpointer_p.h20
-rw-r--r--src/gui/dialogs/qprintdialog_unix.cpp9
-rw-r--r--src/gui/egl/qegl.cpp4
-rw-r--r--src/gui/egl/qegl_p.h2
-rw-r--r--src/gui/graphicsview/qgraphicsscene.cpp8
-rw-r--r--src/gui/image/qpixmap_s60.cpp2
-rw-r--r--src/gui/image/qpixmapfilter.cpp17
-rw-r--r--src/gui/inputmethod/qcoefepinputcontext_p.h2
-rw-r--r--src/gui/inputmethod/qcoefepinputcontext_s60.cpp2
-rw-r--r--src/gui/kernel/qapplication_s60.cpp2
-rw-r--r--src/gui/kernel/qclipboard_s60.cpp2
-rw-r--r--src/gui/kernel/qcursor_s60.cpp2
-rw-r--r--src/gui/kernel/qdesktopwidget_s60.cpp2
-rw-r--r--src/gui/kernel/qdnd_s60.cpp2
-rw-r--r--src/gui/kernel/qeventdispatcher_s60.cpp2
-rw-r--r--src/gui/kernel/qeventdispatcher_s60_p.h2
-rw-r--r--src/gui/kernel/qkeymapper_s60.cpp2
-rw-r--r--src/gui/kernel/qsound_s60.cpp2
-rw-r--r--src/gui/kernel/qt_s60_p.h2
-rw-r--r--src/gui/kernel/qwidget.cpp11
-rw-r--r--src/gui/kernel/qwidget.h4
-rw-r--r--src/gui/kernel/qwidget_p.h2
-rw-r--r--src/gui/kernel/qwidget_s60.cpp18
-rw-r--r--src/gui/painting/qpaintbuffer_p.h2
-rw-r--r--src/gui/painting/qpaintdevice.qdoc12
-rw-r--r--src/gui/painting/qpathclipper.cpp2
-rw-r--r--src/gui/painting/qpdf.cpp2
-rw-r--r--src/gui/painting/qregion.cpp21
-rw-r--r--src/gui/painting/qregion_s60.cpp2
-rw-r--r--src/gui/painting/qwindowsurface_s60.cpp2
-rw-r--r--src/gui/painting/qwindowsurface_s60_p.h2
-rw-r--r--src/gui/styles/qs60style.cpp4
-rw-r--r--src/gui/styles/qs60style.h2
-rw-r--r--src/gui/styles/qs60style_p.h2
-rw-r--r--src/gui/styles/qs60style_s60.cpp2
-rw-r--r--src/gui/styles/qs60style_simulated.cpp2
-rw-r--r--src/gui/text/qabstracttextdocumentlayout.h1
-rw-r--r--src/gui/text/qfont_s60.cpp2
-rw-r--r--src/gui/text/qfontdatabase_s60.cpp2
-rw-r--r--src/gui/text/qfontengine_ft.cpp3
-rw-r--r--src/gui/text/qfontengine_s60.cpp2
-rw-r--r--src/gui/text/qfontengine_s60_p.h2
-rw-r--r--src/gui/text/qtextcontrol.cpp37
-rw-r--r--src/gui/text/qtextcontrol_p.h4
-rw-r--r--src/gui/text/qtextcontrol_p_p.h1
-rw-r--r--src/gui/text/qtextdocument.cpp4
-rw-r--r--src/gui/text/qtextdocumentlayout.cpp4
-rw-r--r--src/gui/text/qtextformat.cpp76
-rw-r--r--src/gui/text/qtextformat_p.h4
-rw-r--r--src/gui/util/qdesktopservices_s60.cpp2
-rw-r--r--src/gui/widgets/qcalendarwidget.cpp14
-rw-r--r--src/gui/widgets/qlcdnumber.cpp4
-rw-r--r--src/opengl/qgl_qws.cpp3
-rw-r--r--src/opengl/qgl_wince.cpp3
-rw-r--r--src/opengl/qgl_x11egl.cpp3
-rw-r--r--src/opengl/qglpixmapfilter.cpp2
-rw-r--r--src/openvg/qpixmapdata_vg_p.h6
-rw-r--r--src/plugins/graphicssystems/trace/qgraphicssystem_trace.cpp1
-rw-r--r--src/plugins/imageformats/jpeg/qjpeghandler.cpp470
-rw-r--r--src/plugins/imageformats/tiff/qtiffhandler.cpp155
-rw-r--r--src/s60installs/bwins/QtCoreu.def3
-rw-r--r--src/s60installs/eabi/QtCoreu.def15
-rw-r--r--src/svg/qsvgstyle.cpp5
-rw-r--r--src/xmlpatterns/data/qderivedinteger_p.h8
-rw-r--r--src/xmlpatterns/functions/qcomparingaggregator.cpp2
168 files changed, 883 insertions, 547 deletions
diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
index 2a407d4..188b68f 100644
--- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
+++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
@@ -98,6 +98,10 @@
/* regardless of operating environment */
#if defined(_AIX)
#define WTF_PLATFORM_AIX 1
+/* 64-bit mode on AIX */
+#ifdef __64BIT__
+#define WTF_PLATFORM_AIX64 1
+#endif
#endif
/* PLATFORM(HPUX) */
@@ -708,6 +712,8 @@
#define WTF_USE_JSVALUE64 1
#elif (PLATFORM(IA64) && !PLATFORM(IA64_32)) || PLATFORM(SPARC64)
#define WTF_USE_JSVALUE64 1
+#elif PLATFORM(AIX64)
+#define WTF_USE_JSVALUE64 1
#elif PLATFORM(ARM) || PLATFORM(PPC64)
#define WTF_USE_JSVALUE32 1
#elif PLATFORM(WIN_OS) && COMPILER(MINGW)
diff --git a/src/3rdparty/phonon/CMakeLists.txt b/src/3rdparty/phonon/CMakeLists.txt
index c18c3e7..a25ec5d 100644
--- a/src/3rdparty/phonon/CMakeLists.txt
+++ b/src/3rdparty/phonon/CMakeLists.txt
@@ -55,7 +55,7 @@ if (CMAKE_COMPILER_IS_GNUCXX)
if (CMAKE_SYSTEM_NAME MATCHES Linux)
set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-long-long -std=iso9899:1990 -Wundef -Wcast-align -Werror-implicit-function-declaration -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -Wmissing-format-attribute -fno-common")
set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common")
- add_definitions (-D_BSD_SOURCE)
+ add_definitions (-D_BSD_SOURCE -DQT_NO_EXCEPTIONS)
endif (CMAKE_SYSTEM_NAME MATCHES Linux)
# gcc under Windows
@@ -115,7 +115,7 @@ if (CMAKE_COMPILER_IS_GNUCXX)
string(REGEX MATCH "(--enable-libstdcxx-allocator=mt)" _GCC_COMPILED_WITH_BAD_ALLOCATOR "${_gcc_alloc_info}")
endif (GCC_IS_NEWER_THAN_4_1)
- if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR)
+ if (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
set (KDE4_C_FLAGS "-fvisibility=hidden")
# check that Qt defines Q_DECL_EXPORT as __attribute__ ((visibility("default")))
@@ -137,9 +137,9 @@ if (CMAKE_COMPILER_IS_GNUCXX)
if (GCC_IS_NEWER_THAN_4_2)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden")
endif (GCC_IS_NEWER_THAN_4_2)
- else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR)
+ else (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32)
set (__KDE_HAVE_GCC_VISIBILITY 0)
- endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR)
+ endif (__KDE_HAVE_GCC_VISIBILITY AND GCC_IS_NEWER_THAN_4_1 AND NOT _GCC_COMPILED_WITH_BAD_ALLOCATOR AND NOT WIN32)
endif (CMAKE_COMPILER_IS_GNUCXX)
@@ -149,8 +149,8 @@ set(CMAKE_COLOR_MAKEFILE ON)
set(PHONON_LIB_MAJOR_VERSION "4")
set(PHONON_LIB_MINOR_VERSION "3")
-set(PHONON_LIB_PATCH_VERSION "1")
-set(PHONON_LIB_VERSION "${PHONON_LIB_MAJOR_VERSION}.3.1")
+set(PHONON_LIB_PATCH_VERSION "50")
+set(PHONON_LIB_VERSION "${PHONON_LIB_MAJOR_VERSION}.4.0")
set(PHONON_LIB_SOVERSION ${PHONON_LIB_MAJOR_VERSION})
add_definitions(${QT_DEFINITIONS})
@@ -177,11 +177,15 @@ endmacro(_SET_FANCY)
set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)" )
-_set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries")
-_set_fancy(SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/")
+if (WIN32)
+ _set_fancy(EXEC_INSTALL_PREFIX "." "Base directory for executables and libraries")
+else(WIN32)
+ _set_fancy(EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries")
+endif(WIN32)
+_set_fancy(SHARE_INSTALL_PREFIX "${EXEC_INSTALL_PREFIX}/share" "Base directory for files which go to share/")
+_set_fancy(INCLUDE_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/include" "The subdirectory to the header prefix")
_set_fancy(BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)")
_set_fancy(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})")
-_set_fancy(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix")
_set_fancy(PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/kde4" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/kde4)")
_set_fancy(ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)")
_set_fancy(SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/kde4/services" "The install dir for service (desktop, protocol, ...) files")
@@ -196,6 +200,8 @@ set(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}"
if(APPLE)
set(INSTALL_TARGETS_DEFAULT_ARGS ${INSTALL_TARGETS_DEFAULT_ARGS}
BUNDLE DESTINATION "${BUNDLE_INSTALL_DIR}" )
+ set(CMAKE_SHARED_MODULE_CREATE_C_FLAGS "${CMAKE_SHARED_MODULE_CREATE_C_FLAGS} -flat_namespace -undefined dynamic_lookup")
+ set(CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS "${CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS} -flat_namespace -undefined dynamic_lookup")
endif(APPLE)
if (CMAKE_SYSTEM_NAME MATCHES Linux)
@@ -249,7 +255,6 @@ if(APPLE)
endif(APPLE)
-add_subdirectory(cmake)
add_subdirectory(phonon)
add_subdirectory(includes)
if (Q_WS_MAC AND BUILD_PHONON_QT7)
diff --git a/src/3rdparty/phonon/ds9/CMakeLists.txt b/src/3rdparty/phonon/ds9/CMakeLists.txt
index 1bb6f6f..7378b53 100644
--- a/src/3rdparty/phonon/ds9/CMakeLists.txt
+++ b/src/3rdparty/phonon/ds9/CMakeLists.txt
@@ -40,14 +40,15 @@ if (BUILD_PHONON_DS9)
)
add_definitions(-DPHONON_MAKE_QT_ONLY_BACKEND -DUNICODE)
- automoc4_add_library(phonon_ds9 SHARED ${phonon_ds9_SRCS})
+ automoc4_add_library(phonon_ds9 MODULE ${phonon_ds9_SRCS})
set_target_properties(phonon_ds9 PROPERTIES PREFIX "")
target_link_libraries(phonon_ds9
${PHONON_LIBS} ${QT_QTOPENGL_LIBRARY} ${OPENGL_gl_LIBRARY}
dxguid strmiids dmoguids msdmo ole32 oleaut32 uuid gdi32)
+ # 'MODULE' is treated as a LIBRARY
install(TARGETS phonon_ds9
RUNTIME DESTINATION ${BIN_INSTALL_DIR}/phonon_backend
- LIBRARY DESTINATION ${LIB_INSTALL_DIR}
+ LIBRARY DESTINATION ${BIN_INSTALL_DIR}/phonon_backend
ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
install(FILES ds9.desktop DESTINATION ${SERVICES_INSTALL_DIR}/phononbackends)
endif (BUILD_PHONON_DS9)
diff --git a/src/3rdparty/phonon/ds9/ds9.desktop b/src/3rdparty/phonon/ds9/ds9.desktop
index ece3c9c..764390e 100644
--- a/src/3rdparty/phonon/ds9/ds9.desktop
+++ b/src/3rdparty/phonon/ds9/ds9.desktop
@@ -9,28 +9,69 @@ X-KDE-PhononBackendInfo-Website=http://qt.nokia.com/
InitialPreference=15
Name=DirectShow9
+Name[bg]=DirectShow9
+Name[ca]=DirectShow9
+Name[cs]=DirectShow9
+Name[da]=DirectShow9
+Name[de]=DirectShow9
+Name[el]=DirectShow9
+Name[en_GB]=DirectShow9
+Name[es]=DirectShow9
+Name[et]=DirectShow9
+Name[eu]=DirectShow9
+Name[fr]=DirectShow9
+Name[ga]=DirectShow9
+Name[gl]=DirectShow9
+Name[hsb]=DirectShow9
+Name[hu]=DirectShow9
+Name[is]=DirectShow9
+Name[it]=DirectShow9
+Name[ja]=DirectShow9
+Name[ko]=DirectShow9
+Name[ku]=DirectShow9
+Name[lt]=DirectShow9
+Name[lv]=DirectShow9
+Name[nds]=DirectShow9
+Name[nl]=DirectShow9
+Name[nn]=DirectShow9
Name[pa]=ਡਾਇਰੈਕਸ਼ੋ9
+Name[pl]=DirectShow9
+Name[pt]=DirectShow9
+Name[pt_BR]=DirectShow9
+Name[se]=DirectShow9
Name[sk]=DirectShow 9
Name[sl]=DirectShow 9
Name[sr]=Директшоу‑9
Name[sr@latin]=DirectShow‑9
Name[sv]=Directshow 9
+Name[tr]=DirectShow9
+Name[uk]=DirectShow9
Name[x-test]=xxDirectShow9xx
+Name[zh_CN]=DirectShow9
+Name[zh_TW]=DirectShow9
Comment=Phonon DirectShow9 backend
Comment[bg]=Phonon DirectShow9
Comment[ca]=Dorsal DirectShow9 del Phonon
+Comment[cs]=Phonon DirectShow9 backend
Comment[da]=DirectShow9-backend til Phonon
Comment[de]=Phonon-Treiber für DirectShow9
Comment[el]=Σύστημα υποστήριξης DirectShow9 του Phonon
+Comment[en_GB]=Phonon DirectShow9 backend
Comment[es]=Motor DirectShow9 para Phonon
Comment[et]=Phononi DirectShow9 taustaprogramm
+Comment[eu]=Phonon DirectShow9 backend
Comment[fr]=Système de gestion DirectShow9 pour Phonon
Comment[ga]=Inneall DirectShow9 le haghaidh Phonon
Comment[gl]=Infraestrutura de DirectShow9 para Phonon
+Comment[hsb]=Phonon DirectShow9 backend
+Comment[hu]=Phonon DirectShow9 modul
+Comment[is]=Phonon DirectShow9 bakendi
Comment[it]=Motore DirectShow9 di Phonon
Comment[ja]=Phonon DirectShow9 バックエンド
Comment[ko]=Phonon DirectShow9 백엔드
+Comment[ku]=Binesaza Phonon DirectShow9
+Comment[lt]=Phonon DirectShow9 galinė sąsaja
Comment[lv]=Phonon DirectShow9 aizmugure
Comment[nds]=Phonon-Hülpprogrmm DirectShow9
Comment[nl]=DirectShow9-backend (Phonon)
@@ -39,6 +80,7 @@ Comment[pa]=ਫੋਨੋਨ ਡਾਇਰੈਕਟਸ਼ੋ9 ਬੈਕਐਂਡ
Comment[pl]=Obsługa DirectShow9 przez Phonon
Comment[pt]=Infra-estrutura do DirectShow9 para o Phonon
Comment[pt_BR]=Infraestrutura Phonon DirectShow9
+Comment[se]=Phonon DirectShow9 duogášmohtor
Comment[sk]=Phonon DirectShow 9 podsystém
Comment[sl]=Phononova Hrbtenica DirectShow 9
Comment[sr]=Директшоу‑9 као позадина Фонона
diff --git a/src/3rdparty/phonon/gstreamer/CMakeLists.txt b/src/3rdparty/phonon/gstreamer/CMakeLists.txt
index 4946f5f..08f892a 100644
--- a/src/3rdparty/phonon/gstreamer/CMakeLists.txt
+++ b/src/3rdparty/phonon/gstreamer/CMakeLists.txt
@@ -17,8 +17,20 @@ project(phonon-gstreamer)
include(ConfigureChecks.cmake)
if (BUILD_PHONON_GSTREAMER)
- include_directories(${GSTREAMER_INCLUDE_DIR} ${GLIB2_INCLUDE_DIR}
- ${LIBXML2_INCLUDE_DIR})
+ include_directories(
+ ${CMAKE_CURRENT_BINARY_DIR}
+ ${GSTREAMER_INCLUDE_DIR}
+ ${GLIB2_INCLUDE_DIR}
+ ${LIBXML2_INCLUDE_DIR}
+ ${X11_X11_INCLUDE_PATH})
+ add_definitions(-DPHONON_BACKEND_VERSION_4_2)
+
+ # configure plugin api
+ if(USE_INSTALL_PLUGIN)
+ set(PLUGIN_INSTALL_API TRUE)
+ endif(USE_INSTALL_PLUGIN)
+
+ configure_file(phonon-config-gstreamer.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/phonon-config-gstreamer.h )
set(phonon_gstreamer_SRCS
audiooutput.cpp
@@ -45,17 +57,17 @@ if (BUILD_PHONON_GSTREAMER)
)
find_package(Alsa)
- if(ALSA_FOUND)
+ macro_ensure_version("0.10.22" ${GSTREAMER_VERSION} GSTREAMER_HAS_NONBLOCKING_ALSASINK)
+ if(ALSA_FOUND AND NOT GSTREAMER_HAS_NONBLOCKING_ALSASINK)
add_definitions(-DUSE_ALSASINK2)
include_directories(${ALSA_INCLUDES})
set(phonon_gstreamer_SRCS
${phonon_gstreamer_SRCS}
alsasink2.c
)
- endif(ALSA_FOUND)
+ endif(ALSA_FOUND AND NOT GSTREAMER_HAS_NONBLOCKING_ALSASINK)
- automoc4(phonon_gstreamer phonon_gstreamer_SRCS)
- add_library(phonon_gstreamer SHARED ${phonon_gstreamer_SRCS})
+ automoc4_add_library(phonon_gstreamer MODULE ${phonon_gstreamer_SRCS})
set_target_properties(phonon_gstreamer PROPERTIES PREFIX "")
target_link_libraries(phonon_gstreamer
${QT_QTOPENGL_LIBRARY}
diff --git a/src/3rdparty/phonon/gstreamer/audiooutput.cpp b/src/3rdparty/phonon/gstreamer/audiooutput.cpp
index 138a7e4..641ff6b 100644
--- a/src/3rdparty/phonon/gstreamer/audiooutput.cpp
+++ b/src/3rdparty/phonon/gstreamer/audiooutput.cpp
@@ -42,7 +42,6 @@ AudioOutput::AudioOutput(Backend *backend, QObject *parent)
static int count = 0;
m_name = "AudioOutput" + QString::number(count++);
if (m_backend->isValid()) {
- g_set_application_name(qApp->applicationName().toUtf8());
m_audioBin = gst_bin_new (NULL);
gst_object_ref (GST_OBJECT (m_audioBin));
gst_object_sink (GST_OBJECT (m_audioBin));
@@ -137,11 +136,19 @@ bool AudioOutput::setOutputDevice(int newDevice)
bool success = false;
const QList<AudioDevice> deviceList = m_backend->deviceManager()->audioOutputDevices();
- if (m_audioSink && newDevice >= 0 && newDevice < deviceList.size()) {
+ int deviceIdx = -1;
+ for (int i=0; i<deviceList.size(); i++) {
+ if (deviceList.at(i).id == newDevice) {
+ deviceIdx = i;
+ break;
+ }
+ }
+
+ if (m_audioSink && deviceIdx >= 0) {
// Save previous state
GstState oldState = GST_STATE(m_audioSink);
const QByteArray oldDeviceValue = GstHelper::property(m_audioSink, "device");
- const QByteArray deviceId = deviceList.at(newDevice).gstId;
+ const QByteArray deviceId = deviceList.at(deviceIdx).gstId;
m_device = newDevice;
// We test if the device can be opened by checking if it can go from NULL to READY state
diff --git a/src/3rdparty/phonon/gstreamer/backend.cpp b/src/3rdparty/phonon/gstreamer/backend.cpp
index e1ffd1f..dab6f35 100644
--- a/src/3rdparty/phonon/gstreamer/backend.cpp
+++ b/src/3rdparty/phonon/gstreamer/backend.cpp
@@ -49,6 +49,13 @@ Backend::Backend(QObject *parent, const QVariantList &)
, m_debugLevel(Warning)
, m_isValid(false)
{
+ // In order to support reloading, we only set the app name once...
+ static bool first = true;
+ if (first) {
+ first = false;
+ g_set_application_name(qApp->applicationName().toUtf8());
+ }
+
GError *err = 0;
bool wasInit = gst_init_check(0, 0, &err); //init gstreamer: must be called before any gst-related functions
if (err)
@@ -85,7 +92,6 @@ Backend::Backend(QObject *parent, const QVariantList &)
Backend::~Backend()
{
- gst_deinit();
}
gboolean Backend::busCall(GstBus *bus, GstMessage *msg, gpointer data)
@@ -208,8 +214,15 @@ QStringList Backend::availableMimeTypes() const
GstPluginFeature *feature = GST_PLUGIN_FEATURE(iter->data);
QString klass = gst_element_factory_get_klass(GST_ELEMENT_FACTORY(feature));
- if (klass == QLatin1String("Codec/Decoder/Audio") ||
- klass == QLatin1String("Codec/Decoder/Video")) {
+ if (klass == QLatin1String("Codec/Decoder") ||
+ klass == QLatin1String("Codec/Decoder/Audio") ||
+ klass == QLatin1String("Codec/Decoder/Video") ||
+ klass == QLatin1String("Codec/Demuxer") ||
+ klass == QLatin1String("Codec/Demuxer/Audio") ||
+ klass == QLatin1String("Codec/Demuxer/Video") ||
+ klass == QLatin1String("Codec/Parser") ||
+ klass == QLatin1String("Codec/Parser/Audio") ||
+ klass == QLatin1String("Codec/Parser/Video")) {
const GList *static_templates;
GstElementFactory *factory = GST_ELEMENT_FACTORY(feature);
@@ -281,10 +294,13 @@ QHash<QByteArray, QVariant> Backend::objectDescriptionProperties(ObjectDescripti
switch (type) {
case Phonon::AudioOutputDeviceType: {
QList<AudioDevice> audioDevices = deviceManager()->audioOutputDevices();
- if (index >= 0 && index < audioDevices.size()) {
- ret.insert("name", audioDevices[index].gstId);
- ret.insert("description", audioDevices[index].description);
- ret.insert("icon", QLatin1String("audio-card"));
+ foreach(const AudioDevice &device, audioDevices) {
+ if (device.id == index) {
+ ret.insert("name", device.gstId);
+ ret.insert("description", device.description);
+ ret.insert("icon", QLatin1String("audio-card"));
+ break;
+ }
}
}
break;
diff --git a/src/3rdparty/phonon/gstreamer/mediaobject.cpp b/src/3rdparty/phonon/gstreamer/mediaobject.cpp
index 5713263..eafaeec 100644
--- a/src/3rdparty/phonon/gstreamer/mediaobject.cpp
+++ b/src/3rdparty/phonon/gstreamer/mediaobject.cpp
@@ -344,7 +344,7 @@ void MediaObject::cb_pad_added(GstElement *decodebin,
Q_UNUSED(decodebin);
GstPad *decodepad = static_cast<GstPad*>(data);
gst_pad_link (pad, decodepad);
- gst_object_unref (decodepad);
+ //gst_object_unref (decodepad);
}
/**
@@ -374,9 +374,21 @@ bool MediaObject::createPipefromURL(const QUrl &url)
return false;
// Set the device for MediaSource::Disc
- QByteArray mediaDevice = QFile::encodeName(m_source.deviceName());
- if (!mediaDevice.isEmpty())
- g_object_set (m_datasource, "device", mediaDevice.constData(), (const char*)NULL);
+ if (m_source.type() == MediaSource::Disc) {
+
+ if (g_object_class_find_property (G_OBJECT_GET_CLASS (m_datasource), "device")) {
+ QByteArray mediaDevice = QFile::encodeName(m_source.deviceName());
+ if (!mediaDevice.isEmpty())
+ g_object_set (G_OBJECT (m_datasource), "device", mediaDevice.constData(), (const char*)NULL);
+ }
+
+ // Also Set optical disc speed to 2X for Audio CD
+ if (m_source.discType() == Phonon::Cd
+ && (g_object_class_find_property (G_OBJECT_GET_CLASS (m_datasource), "read-speed"))) {
+ g_object_set (G_OBJECT (m_datasource), "read-speed", 2, (const char*)NULL);
+ m_backend->logMessage(QString("new device speed : 2X"), Backend::Info, this);
+ }
+ }
// Link data source into pipeline
gst_bin_add(GST_BIN(m_pipeline), m_datasource);
@@ -916,23 +928,27 @@ void MediaObject::setSource(const MediaSource &source)
setError(tr("Could not open media source."));
break;
- case MediaSource::Disc: // CD tracks can be specified by setting the url in the following way uri=cdda:4
+ case MediaSource::Disc:
{
- QUrl url;
+ QString mediaUrl;
switch (source.discType()) {
- case Phonon::Cd:
- url = QUrl(QLatin1String("cdda://"));
- break;
- case Phonon::Dvd:
- url = QUrl(QLatin1String("dvd://"));
- break;
- case Phonon::Vcd:
- url = QUrl(QLatin1String("vcd://"));
- break;
- default:
- break;
+ case Phonon::NoDisc:
+ qWarning() << "I should never get to see a MediaSource that is a disc but doesn't specify which one";
+ return;
+ case Phonon::Cd: // CD tracks can be specified by setting the url in the following way uri=cdda:4
+ mediaUrl = QLatin1String("cdda://");
+ break;
+ case Phonon::Dvd:
+ mediaUrl = QLatin1String("dvd://");
+ break;
+ case Phonon::Vcd:
+ mediaUrl = QLatin1String("vcd://");
+ break;
+ default:
+ qWarning() << "media " << source.discType() << " not implemented";
+ return;
}
- if (!url.isEmpty() && createPipefromURL(url))
+ if (!mediaUrl.isEmpty() && createPipefromURL(QUrl(mediaUrl)))
m_loading = true;
else
setError(tr("Could not open media source."));
diff --git a/src/3rdparty/phonon/includes/CMakeLists.txt b/src/3rdparty/phonon/includes/CMakeLists.txt
index 349acd8..dff86c3 100644
--- a/src/3rdparty/phonon/includes/CMakeLists.txt
+++ b/src/3rdparty/phonon/includes/CMakeLists.txt
@@ -35,7 +35,7 @@ install( FILES
Phonon/VolumeFaderEffect
Phonon/VolumeFaderInterface
Phonon/VolumeSlider
-DESTINATION ${INCLUDE_INSTALL_DIR}/KDE/Phonon)
+DESTINATION ${INCLUDE_INSTALL_DIR}/KDE/Phonon COMPONENT Devel)
install(FILES
Phonon/Experimental/AbstractVideoDataOutput
@@ -46,4 +46,4 @@ install(FILES
Phonon/Experimental/VideoFrame
Phonon/Experimental/VideoFrame2
Phonon/Experimental/Visualization
-DESTINATION ${INCLUDE_INSTALL_DIR}/KDE/Phonon/Experimental)
+DESTINATION ${INCLUDE_INSTALL_DIR}/KDE/Phonon/Experimental COMPONENT Devel)
diff --git a/src/3rdparty/phonon/phonon/abstractaudiooutput.cpp b/src/3rdparty/phonon/phonon/abstractaudiooutput.cpp
index 47c5a89..bce7c11 100644
--- a/src/3rdparty/phonon/phonon/abstractaudiooutput.cpp
+++ b/src/3rdparty/phonon/phonon/abstractaudiooutput.cpp
@@ -6,7 +6,7 @@ Copyright (C) 2005-2006 Matthias Kretz <kretz@kde.org>
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractaudiooutput.h b/src/3rdparty/phonon/phonon/abstractaudiooutput.h
index a466298..1045f18 100644
--- a/src/3rdparty/phonon/phonon/abstractaudiooutput.h
+++ b/src/3rdparty/phonon/phonon/abstractaudiooutput.h
@@ -6,7 +6,7 @@ Copyright (C) 2005-2006 Matthias Kretz <kretz@kde.org>
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractaudiooutput_p.cpp b/src/3rdparty/phonon/phonon/abstractaudiooutput_p.cpp
index 83ee8b0..20e0b3c 100644
--- a/src/3rdparty/phonon/phonon/abstractaudiooutput_p.cpp
+++ b/src/3rdparty/phonon/phonon/abstractaudiooutput_p.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractaudiooutput_p.h b/src/3rdparty/phonon/phonon/abstractaudiooutput_p.h
index 831eb8d..9b3a57f 100644
--- a/src/3rdparty/phonon/phonon/abstractaudiooutput_p.h
+++ b/src/3rdparty/phonon/phonon/abstractaudiooutput_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractmediastream.cpp b/src/3rdparty/phonon/phonon/abstractmediastream.cpp
index 5b860f3..f4a7db6 100644
--- a/src/3rdparty/phonon/phonon/abstractmediastream.cpp
+++ b/src/3rdparty/phonon/phonon/abstractmediastream.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractmediastream.h b/src/3rdparty/phonon/phonon/abstractmediastream.h
index c4cde85..87fa140 100644
--- a/src/3rdparty/phonon/phonon/abstractmediastream.h
+++ b/src/3rdparty/phonon/phonon/abstractmediastream.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractmediastream_p.h b/src/3rdparty/phonon/phonon/abstractmediastream_p.h
index 0e87c4d..a676716 100644
--- a/src/3rdparty/phonon/phonon/abstractmediastream_p.h
+++ b/src/3rdparty/phonon/phonon/abstractmediastream_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractvideooutput.cpp b/src/3rdparty/phonon/phonon/abstractvideooutput.cpp
index 30dde14..1695b78 100644
--- a/src/3rdparty/phonon/phonon/abstractvideooutput.cpp
+++ b/src/3rdparty/phonon/phonon/abstractvideooutput.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractvideooutput.h b/src/3rdparty/phonon/phonon/abstractvideooutput.h
index 04cfdf0..824f729 100644
--- a/src/3rdparty/phonon/phonon/abstractvideooutput.h
+++ b/src/3rdparty/phonon/phonon/abstractvideooutput.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractvideooutput_p.cpp b/src/3rdparty/phonon/phonon/abstractvideooutput_p.cpp
index 83d0650..a9cfa4d 100644
--- a/src/3rdparty/phonon/phonon/abstractvideooutput_p.cpp
+++ b/src/3rdparty/phonon/phonon/abstractvideooutput_p.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/abstractvideooutput_p.h b/src/3rdparty/phonon/phonon/abstractvideooutput_p.h
index d0e8157..90230d4 100644
--- a/src/3rdparty/phonon/phonon/abstractvideooutput_p.h
+++ b/src/3rdparty/phonon/phonon/abstractvideooutput_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/addoninterface.h b/src/3rdparty/phonon/phonon/addoninterface.h
index f400523..229129b 100644
--- a/src/3rdparty/phonon/phonon/addoninterface.h
+++ b/src/3rdparty/phonon/phonon/addoninterface.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/audiooutput.cpp b/src/3rdparty/phonon/phonon/audiooutput.cpp
index 962f828..0f6a49b 100644
--- a/src/3rdparty/phonon/phonon/audiooutput.cpp
+++ b/src/3rdparty/phonon/phonon/audiooutput.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
@@ -29,7 +29,7 @@
#include "phononnamespace_p.h"
#include "platform_p.h"
-#include <qmath.h>
+#include <QtCore/qmath.h>
#define PHONON_CLASSNAME AudioOutput
#define IFACES2 AudioOutputInterface42
@@ -126,7 +126,9 @@ void AudioOutput::setName(const QString &newName)
d->name = newName;
setVolume(Platform::loadVolume(newName));
#ifndef QT_NO_DBUS
- emit d->adaptor->nameChanged(newName);
+ if (d->adaptor) {
+ emit d->adaptor->nameChanged(newName);
+ }
#endif
}
@@ -409,7 +411,9 @@ void AudioOutputPrivate::handleAutomaticDeviceChange(const AudioOutputDevice &de
AudioOutputPrivate::~AudioOutputPrivate()
{
#ifndef QT_NO_DBUS
- emit adaptor->outputDestroyed();
+ if (adaptor) {
+ emit adaptor->outputDestroyed();
+ }
#endif
}
diff --git a/src/3rdparty/phonon/phonon/audiooutput.h b/src/3rdparty/phonon/phonon/audiooutput.h
index 54bb389..4edf135 100644
--- a/src/3rdparty/phonon/phonon/audiooutput.h
+++ b/src/3rdparty/phonon/phonon/audiooutput.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/audiooutput_p.h b/src/3rdparty/phonon/phonon/audiooutput_p.h
index 459b491..fdee299 100644
--- a/src/3rdparty/phonon/phonon/audiooutput_p.h
+++ b/src/3rdparty/phonon/phonon/audiooutput_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/audiooutputinterface.cpp b/src/3rdparty/phonon/phonon/audiooutputinterface.cpp
index be2780d..1770f4c 100644
--- a/src/3rdparty/phonon/phonon/audiooutputinterface.cpp
+++ b/src/3rdparty/phonon/phonon/audiooutputinterface.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/audiooutputinterface.h b/src/3rdparty/phonon/phonon/audiooutputinterface.h
index 1511e02..80ba11c 100644
--- a/src/3rdparty/phonon/phonon/audiooutputinterface.h
+++ b/src/3rdparty/phonon/phonon/audiooutputinterface.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/backendcapabilities.cpp b/src/3rdparty/phonon/phonon/backendcapabilities.cpp
index 5defe09..fbeb020 100644
--- a/src/3rdparty/phonon/phonon/backendcapabilities.cpp
+++ b/src/3rdparty/phonon/phonon/backendcapabilities.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/backendcapabilities.h b/src/3rdparty/phonon/phonon/backendcapabilities.h
index 36454a3..643c8ef 100644
--- a/src/3rdparty/phonon/phonon/backendcapabilities.h
+++ b/src/3rdparty/phonon/phonon/backendcapabilities.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/backendcapabilities_p.h b/src/3rdparty/phonon/phonon/backendcapabilities_p.h
index c17f24f..5ef18a4 100644
--- a/src/3rdparty/phonon/phonon/backendcapabilities_p.h
+++ b/src/3rdparty/phonon/phonon/backendcapabilities_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/backendinterface.h b/src/3rdparty/phonon/phonon/backendinterface.h
index e1f11da..5deee75 100644
--- a/src/3rdparty/phonon/phonon/backendinterface.h
+++ b/src/3rdparty/phonon/phonon/backendinterface.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effect.cpp b/src/3rdparty/phonon/phonon/effect.cpp
index 98662a5..dfcb290 100644
--- a/src/3rdparty/phonon/phonon/effect.cpp
+++ b/src/3rdparty/phonon/phonon/effect.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effect.h b/src/3rdparty/phonon/phonon/effect.h
index b3a7975..e403482 100644
--- a/src/3rdparty/phonon/phonon/effect.h
+++ b/src/3rdparty/phonon/phonon/effect.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effect_p.h b/src/3rdparty/phonon/phonon/effect_p.h
index 586812a..6cc42d9 100644
--- a/src/3rdparty/phonon/phonon/effect_p.h
+++ b/src/3rdparty/phonon/phonon/effect_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effectinterface.h b/src/3rdparty/phonon/phonon/effectinterface.h
index f535105..59c69d9 100644
--- a/src/3rdparty/phonon/phonon/effectinterface.h
+++ b/src/3rdparty/phonon/phonon/effectinterface.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effectparameter.cpp b/src/3rdparty/phonon/phonon/effectparameter.cpp
index 6030b6e..0447f5b 100644
--- a/src/3rdparty/phonon/phonon/effectparameter.cpp
+++ b/src/3rdparty/phonon/phonon/effectparameter.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effectparameter.h b/src/3rdparty/phonon/phonon/effectparameter.h
index 55c7049..4471a16 100644
--- a/src/3rdparty/phonon/phonon/effectparameter.h
+++ b/src/3rdparty/phonon/phonon/effectparameter.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effectparameter_p.h b/src/3rdparty/phonon/phonon/effectparameter_p.h
index 0fc387a..f3f9f88 100644
--- a/src/3rdparty/phonon/phonon/effectparameter_p.h
+++ b/src/3rdparty/phonon/phonon/effectparameter_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effectwidget.cpp b/src/3rdparty/phonon/phonon/effectwidget.cpp
index f8341e5..2334d7f 100644
--- a/src/3rdparty/phonon/phonon/effectwidget.cpp
+++ b/src/3rdparty/phonon/phonon/effectwidget.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/effectwidget.h b/src/3rdparty/phonon/phonon/effectwidget.h
index 340b2e3..17a310f 100644
--- a/src/3rdparty/phonon/phonon/effectwidget.h
+++ b/src/3rdparty/phonon/phonon/effectwidget.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
@@ -39,7 +39,7 @@ class Effect;
class EffectWidgetPrivate;
/** \class EffectWidget effectwidget.h Phonon/EffectWidget
- * \brief Widget to control the parameters of an \ref Effect.
+ * \brief Widget to control the parameters of an Effect.
*
* \ingroup PhononWidgets
* \ingroup PhononEffects
diff --git a/src/3rdparty/phonon/phonon/effectwidget_p.h b/src/3rdparty/phonon/phonon/effectwidget_p.h
index 6ce44bf..aad422a 100644
--- a/src/3rdparty/phonon/phonon/effectwidget_p.h
+++ b/src/3rdparty/phonon/phonon/effectwidget_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/factory.cpp b/src/3rdparty/phonon/phonon/factory.cpp
index d5010e7..ab1f44f 100644
--- a/src/3rdparty/phonon/phonon/factory.cpp
+++ b/src/3rdparty/phonon/phonon/factory.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/factory_p.h b/src/3rdparty/phonon/phonon/factory_p.h
index de059f8..dee2b56 100644
--- a/src/3rdparty/phonon/phonon/factory_p.h
+++ b/src/3rdparty/phonon/phonon/factory_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/frontendinterface_p.h b/src/3rdparty/phonon/phonon/frontendinterface_p.h
index b6c76ce..83ad780 100644
--- a/src/3rdparty/phonon/phonon/frontendinterface_p.h
+++ b/src/3rdparty/phonon/phonon/frontendinterface_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/globalconfig.cpp b/src/3rdparty/phonon/phonon/globalconfig.cpp
index 429a29f..3b77a18 100644
--- a/src/3rdparty/phonon/phonon/globalconfig.cpp
+++ b/src/3rdparty/phonon/phonon/globalconfig.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/globalconfig_p.h b/src/3rdparty/phonon/phonon/globalconfig_p.h
index 034bce3..ec70b6f 100644
--- a/src/3rdparty/phonon/phonon/globalconfig_p.h
+++ b/src/3rdparty/phonon/phonon/globalconfig_p.h
@@ -6,7 +6,7 @@ Copyright (C) 2006-2008 Matthias Kretz <kretz@kde.org>
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/globalstatic_p.h b/src/3rdparty/phonon/phonon/globalstatic_p.h
index 04f8395..cf80512 100644
--- a/src/3rdparty/phonon/phonon/globalstatic_p.h
+++ b/src/3rdparty/phonon/phonon/globalstatic_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/iodevicestream.cpp b/src/3rdparty/phonon/phonon/iodevicestream.cpp
index 5376da3..3735f75 100644
--- a/src/3rdparty/phonon/phonon/iodevicestream.cpp
+++ b/src/3rdparty/phonon/phonon/iodevicestream.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/iodevicestream_p.h b/src/3rdparty/phonon/phonon/iodevicestream_p.h
index 5eb90bc..cca77e3 100644
--- a/src/3rdparty/phonon/phonon/iodevicestream_p.h
+++ b/src/3rdparty/phonon/phonon/iodevicestream_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediacontroller.cpp b/src/3rdparty/phonon/phonon/mediacontroller.cpp
index d094381..59fd5c7 100644
--- a/src/3rdparty/phonon/phonon/mediacontroller.cpp
+++ b/src/3rdparty/phonon/phonon/mediacontroller.cpp
@@ -7,7 +7,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediacontroller.h b/src/3rdparty/phonon/phonon/mediacontroller.h
index 19aaf13..109a79e 100644
--- a/src/3rdparty/phonon/phonon/mediacontroller.h
+++ b/src/3rdparty/phonon/phonon/mediacontroller.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/medianode.cpp b/src/3rdparty/phonon/phonon/medianode.cpp
index 63fa2e3..bc1caed 100644
--- a/src/3rdparty/phonon/phonon/medianode.cpp
+++ b/src/3rdparty/phonon/phonon/medianode.cpp
@@ -7,7 +7,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/medianode.h b/src/3rdparty/phonon/phonon/medianode.h
index 86931ac..6aab189 100644
--- a/src/3rdparty/phonon/phonon/medianode.h
+++ b/src/3rdparty/phonon/phonon/medianode.h
@@ -7,7 +7,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/medianode_p.h b/src/3rdparty/phonon/phonon/medianode_p.h
index d5424b7..e2329a9 100644
--- a/src/3rdparty/phonon/phonon/medianode_p.h
+++ b/src/3rdparty/phonon/phonon/medianode_p.h
@@ -6,7 +6,7 @@ Copyright (C) 2007 Matthias Kretz <kretz@kde.org>
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/medianodedestructionhandler_p.h b/src/3rdparty/phonon/phonon/medianodedestructionhandler_p.h
index 38c0907..9c893f4 100644
--- a/src/3rdparty/phonon/phonon/medianodedestructionhandler_p.h
+++ b/src/3rdparty/phonon/phonon/medianodedestructionhandler_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediaobject.cpp b/src/3rdparty/phonon/phonon/mediaobject.cpp
index 10fefbd..13d303c 100644
--- a/src/3rdparty/phonon/phonon/mediaobject.cpp
+++ b/src/3rdparty/phonon/phonon/mediaobject.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediaobject.h b/src/3rdparty/phonon/phonon/mediaobject.h
index c56b6b5..ade966a 100644
--- a/src/3rdparty/phonon/phonon/mediaobject.h
+++ b/src/3rdparty/phonon/phonon/mediaobject.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediaobject_p.h b/src/3rdparty/phonon/phonon/mediaobject_p.h
index 5419341..c164490 100644
--- a/src/3rdparty/phonon/phonon/mediaobject_p.h
+++ b/src/3rdparty/phonon/phonon/mediaobject_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediaobjectinterface.h b/src/3rdparty/phonon/phonon/mediaobjectinterface.h
index a5e2c51..26c4c8e 100644
--- a/src/3rdparty/phonon/phonon/mediaobjectinterface.h
+++ b/src/3rdparty/phonon/phonon/mediaobjectinterface.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediasource.cpp b/src/3rdparty/phonon/phonon/mediasource.cpp
index c003af9..be22dc3 100644
--- a/src/3rdparty/phonon/phonon/mediasource.cpp
+++ b/src/3rdparty/phonon/phonon/mediasource.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediasource.h b/src/3rdparty/phonon/phonon/mediasource.h
index da010d9..4cddbad 100644
--- a/src/3rdparty/phonon/phonon/mediasource.h
+++ b/src/3rdparty/phonon/phonon/mediasource.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/mediasource_p.h b/src/3rdparty/phonon/phonon/mediasource_p.h
index bfac7ad..46caef3 100644
--- a/src/3rdparty/phonon/phonon/mediasource_p.h
+++ b/src/3rdparty/phonon/phonon/mediasource_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/objectdescription.cpp b/src/3rdparty/phonon/phonon/objectdescription.cpp
index 3296792..e058b89 100644
--- a/src/3rdparty/phonon/phonon/objectdescription.cpp
+++ b/src/3rdparty/phonon/phonon/objectdescription.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/objectdescription.h b/src/3rdparty/phonon/phonon/objectdescription.h
index 108f02c..985cdcc 100644
--- a/src/3rdparty/phonon/phonon/objectdescription.h
+++ b/src/3rdparty/phonon/phonon/objectdescription.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/objectdescription_p.h b/src/3rdparty/phonon/phonon/objectdescription_p.h
index 1069f11..bcf56de 100644
--- a/src/3rdparty/phonon/phonon/objectdescription_p.h
+++ b/src/3rdparty/phonon/phonon/objectdescription_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/objectdescriptionmodel.cpp b/src/3rdparty/phonon/phonon/objectdescriptionmodel.cpp
index b67344f..7237e91 100644
--- a/src/3rdparty/phonon/phonon/objectdescriptionmodel.cpp
+++ b/src/3rdparty/phonon/phonon/objectdescriptionmodel.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/objectdescriptionmodel.h b/src/3rdparty/phonon/phonon/objectdescriptionmodel.h
index a3c72b2..96187c3 100644
--- a/src/3rdparty/phonon/phonon/objectdescriptionmodel.h
+++ b/src/3rdparty/phonon/phonon/objectdescriptionmodel.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/objectdescriptionmodel_p.h b/src/3rdparty/phonon/phonon/objectdescriptionmodel_p.h
index f036bc8..2200c8d 100644
--- a/src/3rdparty/phonon/phonon/objectdescriptionmodel_p.h
+++ b/src/3rdparty/phonon/phonon/objectdescriptionmodel_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/path.cpp b/src/3rdparty/phonon/phonon/path.cpp
index ef3530c..51c33b2 100644
--- a/src/3rdparty/phonon/phonon/path.cpp
+++ b/src/3rdparty/phonon/phonon/path.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
@@ -244,8 +244,8 @@ bool Path::disconnect()
//lets build the disconnection list
QList<QObjectPair> disco;
if (list.count() >=2 ) {
- QObjectList::const_iterator it = list.begin();
- for(;it+1 != list.end();++it) {
+ QObjectList::const_iterator it = list.constBegin();
+ for(;it+1 != list.constEnd();++it) {
disco << QObjectPair(*it, *(it+1));
}
}
diff --git a/src/3rdparty/phonon/phonon/path.h b/src/3rdparty/phonon/phonon/path.h
index eeabe82..6193054 100644
--- a/src/3rdparty/phonon/phonon/path.h
+++ b/src/3rdparty/phonon/phonon/path.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/path_p.h b/src/3rdparty/phonon/phonon/path_p.h
index 1345ad5..51b7e83 100644
--- a/src/3rdparty/phonon/phonon/path_p.h
+++ b/src/3rdparty/phonon/phonon/path_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/phonon_export.h b/src/3rdparty/phonon/phonon/phonon_export.h
index 5f93ea0..96b5159 100644
--- a/src/3rdparty/phonon/phonon/phonon_export.h
+++ b/src/3rdparty/phonon/phonon/phonon_export.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/phonondefs.h b/src/3rdparty/phonon/phonon/phonondefs.h
index d1a114a..15a1815 100644
--- a/src/3rdparty/phonon/phonon/phonondefs.h
+++ b/src/3rdparty/phonon/phonon/phonondefs.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/phonondefs_p.h b/src/3rdparty/phonon/phonon/phonondefs_p.h
index 09037b5..778d7f6 100644
--- a/src/3rdparty/phonon/phonon/phonondefs_p.h
+++ b/src/3rdparty/phonon/phonon/phonondefs_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/phononnamespace.cpp b/src/3rdparty/phonon/phonon/phononnamespace.cpp
index f594d3c..ba20aa5 100644
--- a/src/3rdparty/phonon/phonon/phononnamespace.cpp
+++ b/src/3rdparty/phonon/phonon/phononnamespace.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/phononnamespace.h b/src/3rdparty/phonon/phonon/phononnamespace.h
index 2492ee6..ec42d51 100644
--- a/src/3rdparty/phonon/phonon/phononnamespace.h
+++ b/src/3rdparty/phonon/phonon/phononnamespace.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/phononnamespace.h.in b/src/3rdparty/phonon/phonon/phononnamespace.h.in
index 54c5578..c65c121 100644
--- a/src/3rdparty/phonon/phonon/phononnamespace.h.in
+++ b/src/3rdparty/phonon/phonon/phononnamespace.h.in
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
@@ -90,7 +90,7 @@ namespace Phonon
};
/**
- * Provided as keys for \ref MediaObject::metaData for convenience, in addition to the strings defined in
+ * Provided as keys for MediaObject::metaData for convenience, in addition to the strings defined in
* the Ogg Vorbis specification.
*/
enum MetaData {
diff --git a/src/3rdparty/phonon/phonon/phononnamespace_p.h b/src/3rdparty/phonon/phonon/phononnamespace_p.h
index 4dd0ee8..2fa520a 100644
--- a/src/3rdparty/phonon/phonon/phononnamespace_p.h
+++ b/src/3rdparty/phonon/phonon/phononnamespace_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/platform.cpp b/src/3rdparty/phonon/phonon/platform.cpp
index ed660dc..49c4561 100644
--- a/src/3rdparty/phonon/phonon/platform.cpp
+++ b/src/3rdparty/phonon/phonon/platform.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/platform_p.h b/src/3rdparty/phonon/phonon/platform_p.h
index 379c54b..c4edb2f 100644
--- a/src/3rdparty/phonon/phonon/platform_p.h
+++ b/src/3rdparty/phonon/phonon/platform_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/platformplugin.h b/src/3rdparty/phonon/phonon/platformplugin.h
index e1ab1b7..c75bc96 100644
--- a/src/3rdparty/phonon/phonon/platformplugin.h
+++ b/src/3rdparty/phonon/phonon/platformplugin.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/qsettingsgroup_p.h b/src/3rdparty/phonon/phonon/qsettingsgroup_p.h
index 501fe37..f28ecaa 100644
--- a/src/3rdparty/phonon/phonon/qsettingsgroup_p.h
+++ b/src/3rdparty/phonon/phonon/qsettingsgroup_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/seekslider.cpp b/src/3rdparty/phonon/phonon/seekslider.cpp
index e1eea54..b5b25f0 100644
--- a/src/3rdparty/phonon/phonon/seekslider.cpp
+++ b/src/3rdparty/phonon/phonon/seekslider.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/seekslider.h b/src/3rdparty/phonon/phonon/seekslider.h
index 540079e..0005029 100644
--- a/src/3rdparty/phonon/phonon/seekslider.h
+++ b/src/3rdparty/phonon/phonon/seekslider.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/seekslider_p.h b/src/3rdparty/phonon/phonon/seekslider_p.h
index f4ed616..c87a4b0 100644
--- a/src/3rdparty/phonon/phonon/seekslider_p.h
+++ b/src/3rdparty/phonon/phonon/seekslider_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/streaminterface.cpp b/src/3rdparty/phonon/phonon/streaminterface.cpp
index 3646fc1..666cb1e 100644
--- a/src/3rdparty/phonon/phonon/streaminterface.cpp
+++ b/src/3rdparty/phonon/phonon/streaminterface.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/streaminterface.h b/src/3rdparty/phonon/phonon/streaminterface.h
index 10cc061..67df05d 100644
--- a/src/3rdparty/phonon/phonon/streaminterface.h
+++ b/src/3rdparty/phonon/phonon/streaminterface.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/streaminterface_p.h b/src/3rdparty/phonon/phonon/streaminterface_p.h
index cc41156..426c58d 100644
--- a/src/3rdparty/phonon/phonon/streaminterface_p.h
+++ b/src/3rdparty/phonon/phonon/streaminterface_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/videoplayer.cpp b/src/3rdparty/phonon/phonon/videoplayer.cpp
index 8f76d4c..8851b05 100644
--- a/src/3rdparty/phonon/phonon/videoplayer.cpp
+++ b/src/3rdparty/phonon/phonon/videoplayer.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/videoplayer.h b/src/3rdparty/phonon/phonon/videoplayer.h
index 6da1d98..7970f04 100644
--- a/src/3rdparty/phonon/phonon/videoplayer.h
+++ b/src/3rdparty/phonon/phonon/videoplayer.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/videowidget.cpp b/src/3rdparty/phonon/phonon/videowidget.cpp
index 63f6899..a9e83a6 100644
--- a/src/3rdparty/phonon/phonon/videowidget.cpp
+++ b/src/3rdparty/phonon/phonon/videowidget.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/videowidget.h b/src/3rdparty/phonon/phonon/videowidget.h
index bde7333..1d95490 100644
--- a/src/3rdparty/phonon/phonon/videowidget.h
+++ b/src/3rdparty/phonon/phonon/videowidget.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/videowidget_p.h b/src/3rdparty/phonon/phonon/videowidget_p.h
index c2434f2..3335135 100644
--- a/src/3rdparty/phonon/phonon/videowidget_p.h
+++ b/src/3rdparty/phonon/phonon/videowidget_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/videowidgetinterface.h b/src/3rdparty/phonon/phonon/videowidgetinterface.h
index 7ed8a8a..3e6fd22 100644
--- a/src/3rdparty/phonon/phonon/videowidgetinterface.h
+++ b/src/3rdparty/phonon/phonon/videowidgetinterface.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/volumefadereffect.cpp b/src/3rdparty/phonon/phonon/volumefadereffect.cpp
index 066199e..15d34ee 100644
--- a/src/3rdparty/phonon/phonon/volumefadereffect.cpp
+++ b/src/3rdparty/phonon/phonon/volumefadereffect.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/volumefadereffect.h b/src/3rdparty/phonon/phonon/volumefadereffect.h
index 22f2137..528bffa 100644
--- a/src/3rdparty/phonon/phonon/volumefadereffect.h
+++ b/src/3rdparty/phonon/phonon/volumefadereffect.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/volumefadereffect_p.h b/src/3rdparty/phonon/phonon/volumefadereffect_p.h
index cdd4e00..7937e63 100644
--- a/src/3rdparty/phonon/phonon/volumefadereffect_p.h
+++ b/src/3rdparty/phonon/phonon/volumefadereffect_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/volumefaderinterface.h b/src/3rdparty/phonon/phonon/volumefaderinterface.h
index da4262b..8c6e3a4 100644
--- a/src/3rdparty/phonon/phonon/volumefaderinterface.h
+++ b/src/3rdparty/phonon/phonon/volumefaderinterface.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/volumeslider.cpp b/src/3rdparty/phonon/phonon/volumeslider.cpp
index 1888cb6..00970c1 100644
--- a/src/3rdparty/phonon/phonon/volumeslider.cpp
+++ b/src/3rdparty/phonon/phonon/volumeslider.cpp
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/volumeslider.h b/src/3rdparty/phonon/phonon/volumeslider.h
index 47863a8..f5ef34f 100644
--- a/src/3rdparty/phonon/phonon/volumeslider.h
+++ b/src/3rdparty/phonon/phonon/volumeslider.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/3rdparty/phonon/phonon/volumeslider_p.h b/src/3rdparty/phonon/phonon/volumeslider_p.h
index 6d8009a..3827659 100644
--- a/src/3rdparty/phonon/phonon/volumeslider_p.h
+++ b/src/3rdparty/phonon/phonon/volumeslider_p.h
@@ -6,7 +6,7 @@
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) version 3, or any
later version accepted by the membership of KDE e.V. (or its
- successor approved by the membership of KDE e.V.), Trolltech ASA
+ successor approved by the membership of KDE e.V.), Nokia Corporation
(or its successors, if any) and the KDE Free Qt Foundation, which shall
act as a proxy defined in Section 6 of version 3 of the license.
diff --git a/src/corelib/global/qnamespace.qdoc b/src/corelib/global/qnamespace.qdoc
index 5ac3675..ae47f13 100644
--- a/src/corelib/global/qnamespace.qdoc
+++ b/src/corelib/global/qnamespace.qdoc
@@ -2003,7 +2003,7 @@
\value Tool Indicates that the widget is a tool window. A tool
window is often a small window with a smaller than
usual title bar and decoration, typically used for
- collections of tool buttons. It there is a parent,
+ collections of tool buttons. If there is a parent,
the tool window will always be kept on top of it.
If there isn't a parent, you may consider using
Qt::WindowStaysOnTopHint as well. If the window
diff --git a/src/corelib/kernel/qabstractitemmodel.cpp b/src/corelib/kernel/qabstractitemmodel.cpp
index 8e2273d..10a61ca 100644
--- a/src/corelib/kernel/qabstractitemmodel.cpp
+++ b/src/corelib/kernel/qabstractitemmodel.cpp
@@ -2475,10 +2475,8 @@ void QAbstractItemModel::endRemoveRows()
bool QAbstractItemModelPrivate::allowMove(const QModelIndex &srcParent, int start, int end, const QModelIndex &destinationParent, int destinationStart, Qt::Orientation orientation)
{
// Don't move the range within itself.
- if ( ( destinationParent == srcParent )
- && ( destinationStart >= start )
- && ( destinationStart <= end + 1) )
- return false;
+ if (destinationParent == srcParent)
+ return !(destinationStart >= start && destinationStart <= end + 1);
QModelIndex destinationAncestor = destinationParent;
int pos = (Qt::Vertical == orientation) ? destinationAncestor.row() : destinationAncestor.column();
diff --git a/src/corelib/kernel/qeventdispatcher_win.cpp b/src/corelib/kernel/qeventdispatcher_win.cpp
index 3050b82..0518e24 100644
--- a/src/corelib/kernel/qeventdispatcher_win.cpp
+++ b/src/corelib/kernel/qeventdispatcher_win.cpp
@@ -675,6 +675,11 @@ bool QEventDispatcherWin32::processEvents(QEventLoop::ProcessEventsFlags flags)
bool seenWM_QT_SENDPOSTEDEVENTS = false;
bool needWM_QT_SENDPOSTEDEVENTS = false;
do {
+ if (! (flags & QEventLoop::EventLoopExec)) {
+ // when called "manually", always send posted events
+ QCoreApplicationPrivate::sendPostedEvents(0, 0, d->threadData);
+ }
+
DWORD waitRet = 0;
HANDLE pHandles[MAXIMUM_WAIT_OBJECTS - 1];
QVarLengthArray<MSG> processedTimers;
diff --git a/src/corelib/tools/qscopedpointer_p.h b/src/corelib/tools/qscopedpointer_p.h
index b1636d5..fb627a4 100644
--- a/src/corelib/tools/qscopedpointer_p.h
+++ b/src/corelib/tools/qscopedpointer_p.h
@@ -76,6 +76,16 @@ public:
return this->d;
}
+ inline bool operator==(const QCustomScopedPointer<T, Cleanup> &other) const
+ {
+ return this->d == other.d;
+ }
+
+ inline bool operator!=(const QCustomScopedPointer<T, Cleanup> &other) const
+ {
+ return this->d != other.d;
+ }
+
private:
Q_DISABLE_COPY(QCustomScopedPointer)
};
@@ -120,6 +130,16 @@ public:
QScopedPointerSharedDeleter<T>::cleanup(oldD);
}
+ inline bool operator==(const QScopedSharedPointer<T> &other) const
+ {
+ return this->d == other.d;
+ }
+
+ inline bool operator!=(const QScopedSharedPointer<T> &other) const
+ {
+ return this->d != other.d;
+ }
+
private:
Q_DISABLE_COPY(QScopedSharedPointer)
};
diff --git a/src/gui/dialogs/qprintdialog_unix.cpp b/src/gui/dialogs/qprintdialog_unix.cpp
index 6fc270d..9d6cd55 100644
--- a/src/gui/dialogs/qprintdialog_unix.cpp
+++ b/src/gui/dialogs/qprintdialog_unix.cpp
@@ -835,9 +835,6 @@ void QUnixPrintWidgetPrivate::setOptionsPane(QPrintDialogPrivate *pane)
void QUnixPrintWidgetPrivate::_q_btnBrowseClicked()
{
- const int prevPrinter = widget.printers->currentIndex();
- widget.printers->setCurrentIndex(widget.printers->count() - 2); // the pdf one
-
QString filename = widget.filename->text();
#ifndef QT_NO_FILEDIALOG
filename = QFileDialog::getSaveFileName(parent, QPrintDialog::tr("Print To File ..."), filename,
@@ -849,9 +846,11 @@ void QUnixPrintWidgetPrivate::_q_btnBrowseClicked()
widget.filename->setText(filename);
if (filename.endsWith(QString::fromLatin1(".ps"), Qt::CaseInsensitive))
widget.printers->setCurrentIndex(widget.printers->count() - 1); // the postscript one
+ else if (filename.endsWith(QString::fromLatin1(".pdf"), Qt::CaseInsensitive))
+ widget.printers->setCurrentIndex(widget.printers->count() - 2); // the pdf one
+ else if (widget.printers->currentIndex() != widget.printers->count() - 1) // if ps is not selected, pdf is default
+ widget.printers->setCurrentIndex(widget.printers->count() - 2); // the pdf one
}
- else
- widget.printers->setCurrentIndex(prevPrinter);
}
void QUnixPrintWidgetPrivate::applyPrinterProperties(QPrinter *p)
diff --git a/src/gui/egl/qegl.cpp b/src/gui/egl/qegl.cpp
index 39291d3..c0e4890 100644
--- a/src/gui/egl/qegl.cpp
+++ b/src/gui/egl/qegl.cpp
@@ -62,6 +62,7 @@ QEglContext::QEglContext()
, currentSurface(EGL_NO_SURFACE)
, current(false)
, ownsContext(true)
+ , sharing(false)
{
}
@@ -174,6 +175,7 @@ bool QEglContext::createContext(QEglContext *shareContext, const QEglProperties
if (apiType == QEgl::OpenGL)
contextProps.setValue(EGL_CONTEXT_CLIENT_VERSION, 2);
#endif
+ sharing = false;
if (shareContext && shareContext->ctx == EGL_NO_CONTEXT)
shareContext = 0;
if (shareContext) {
@@ -181,6 +183,8 @@ bool QEglContext::createContext(QEglContext *shareContext, const QEglProperties
if (ctx == EGL_NO_CONTEXT) {
qWarning() << "QEglContext::createContext(): Could not share context:" << errorString(eglGetError());
shareContext = 0;
+ } else {
+ sharing = true;
}
}
if (ctx == EGL_NO_CONTEXT) {
diff --git a/src/gui/egl/qegl_p.h b/src/gui/egl/qegl_p.h
index 16b5b16..51bdbbe 100644
--- a/src/gui/egl/qegl_p.h
+++ b/src/gui/egl/qegl_p.h
@@ -81,6 +81,7 @@ public:
bool isValid() const;
bool isCurrent() const;
+ bool isSharing() const { return sharing; }
QEgl::API api() const { return apiType; }
void setApi(QEgl::API api) { apiType = api; }
@@ -132,6 +133,7 @@ private:
EGLSurface currentSurface;
bool current;
bool ownsContext;
+ bool sharing;
static EGLDisplay getDisplay(QPaintDevice *device);
diff --git a/src/gui/graphicsview/qgraphicsscene.cpp b/src/gui/graphicsview/qgraphicsscene.cpp
index 13f31b8..5b0643d 100644
--- a/src/gui/graphicsview/qgraphicsscene.cpp
+++ b/src/gui/graphicsview/qgraphicsscene.cpp
@@ -4551,6 +4551,10 @@ void QGraphicsScenePrivate::drawItemHelper(QGraphicsItem *item, QPainter *painte
void QGraphicsScenePrivate::drawItems(QPainter *painter, const QTransform *const viewTransform,
QRegion *exposedRegion, QWidget *widget)
{
+ // Make sure we don't have unpolished items before we draw.
+ if (!unpolishedItems.isEmpty())
+ _q_polishItems();
+
QRectF exposedSceneRect;
if (exposedRegion && indexMethod != QGraphicsScene::NoIndex) {
exposedSceneRect = exposedRegion->boundingRect().adjusted(-1, -1, 1, 1);
@@ -5077,6 +5081,10 @@ void QGraphicsScene::drawItems(QPainter *painter,
const QStyleOptionGraphicsItem options[], QWidget *widget)
{
Q_D(QGraphicsScene);
+ // Make sure we don't have unpolished items before we draw.
+ if (!d->unpolishedItems.isEmpty())
+ d->_q_polishItems();
+
QTransform viewTransform = painter->worldTransform();
Q_UNUSED(options);
diff --git a/src/gui/image/qpixmap_s60.cpp b/src/gui/image/qpixmap_s60.cpp
index 21415d3..17baa50 100644
--- a/src/gui/image/qpixmap_s60.cpp
+++ b/src/gui/image/qpixmap_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/image/qpixmapfilter.cpp b/src/gui/image/qpixmapfilter.cpp
index c0b840a..3723500 100644
--- a/src/gui/image/qpixmapfilter.cpp
+++ b/src/gui/image/qpixmapfilter.cpp
@@ -1064,9 +1064,7 @@ void QPixmapDropShadowFilter::setOffset(const QPointF &offset)
QRectF QPixmapDropShadowFilter::boundingRectFor(const QRectF &rect) const
{
Q_D(const QPixmapDropShadowFilter);
- qreal delta = d->radius + 1;
- return rect.adjusted(-2, -2, 2, 2).united(
- rect.translated(d->offset).adjusted(-delta, -delta, delta, delta));
+ return rect.united(rect.translated(d->offset).adjusted(-d->radius, -d->radius, d->radius, d->radius));
}
/*!
@@ -1089,19 +1087,24 @@ void QPixmapDropShadowFilter::draw(QPainter *p,
return;
}
- QImage tmp = src.isNull() ? px.toImage() : px.copy(src.toAlignedRect()).toImage();
+ QImage tmp(px.size(), QImage::Format_ARGB32_Premultiplied);
+ tmp.fill(0);
+ QPainter tmpPainter(&tmp);
+ tmpPainter.setCompositionMode(QPainter::CompositionMode_Source);
+ tmpPainter.drawPixmap(d->offset, px);
+ tmpPainter.end();
// blur the alpha channel
tmp = blurred(tmp, tmp.rect(), qRound(d->radius), true);
// blacken the image...
- QPainter tmpPainter(&tmp);
+ tmpPainter.begin(&tmp);
tmpPainter.setCompositionMode(QPainter::CompositionMode_SourceIn);
- tmpPainter.fillRect(0, 0, tmp.width(), tmp.height(), d->color);
+ tmpPainter.fillRect(tmp.rect(), d->color);
tmpPainter.end();
// draw the blurred drop shadow...
- p->drawImage(pos + d->offset, tmp);
+ p->drawImage(pos, tmp);
// Draw the actual pixmap...
p->drawPixmap(pos, px, src);
diff --git a/src/gui/inputmethod/qcoefepinputcontext_p.h b/src/gui/inputmethod/qcoefepinputcontext_p.h
index d0b488e..e24ee04 100644
--- a/src/gui/inputmethod/qcoefepinputcontext_p.h
+++ b/src/gui/inputmethod/qcoefepinputcontext_p.h
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
index 08d86d7..bdff5e7 100644
--- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
+++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp
index dd2ccf2..04e4b31 100644
--- a/src/gui/kernel/qapplication_s60.cpp
+++ b/src/gui/kernel/qapplication_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qclipboard_s60.cpp b/src/gui/kernel/qclipboard_s60.cpp
index de13a51..48aa331 100644
--- a/src/gui/kernel/qclipboard_s60.cpp
+++ b/src/gui/kernel/qclipboard_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qcursor_s60.cpp b/src/gui/kernel/qcursor_s60.cpp
index 7f5c32a..07b6de4 100644
--- a/src/gui/kernel/qcursor_s60.cpp
+++ b/src/gui/kernel/qcursor_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qdesktopwidget_s60.cpp b/src/gui/kernel/qdesktopwidget_s60.cpp
index 43e0b85..79b8f91 100644
--- a/src/gui/kernel/qdesktopwidget_s60.cpp
+++ b/src/gui/kernel/qdesktopwidget_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qdnd_s60.cpp b/src/gui/kernel/qdnd_s60.cpp
index a8d3ac5..65deb5d 100644
--- a/src/gui/kernel/qdnd_s60.cpp
+++ b/src/gui/kernel/qdnd_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qeventdispatcher_s60.cpp b/src/gui/kernel/qeventdispatcher_s60.cpp
index dcf83bc..9d18c9b 100644
--- a/src/gui/kernel/qeventdispatcher_s60.cpp
+++ b/src/gui/kernel/qeventdispatcher_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qeventdispatcher_s60_p.h b/src/gui/kernel/qeventdispatcher_s60_p.h
index 94282b7..fbce60a 100644
--- a/src/gui/kernel/qeventdispatcher_s60_p.h
+++ b/src/gui/kernel/qeventdispatcher_s60_p.h
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qkeymapper_s60.cpp b/src/gui/kernel/qkeymapper_s60.cpp
index d272d6e..ecfb7fb 100644
--- a/src/gui/kernel/qkeymapper_s60.cpp
+++ b/src/gui/kernel/qkeymapper_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qsound_s60.cpp b/src/gui/kernel/qsound_s60.cpp
index e4b7cec..af0fae6 100644
--- a/src/gui/kernel/qsound_s60.cpp
+++ b/src/gui/kernel/qsound_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qt_s60_p.h b/src/gui/kernel/qt_s60_p.h
index d45c34a..ec8c9cb 100644
--- a/src/gui/kernel/qt_s60_p.h
+++ b/src/gui/kernel/qt_s60_p.h
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp
index c776c36..4aa358f 100644
--- a/src/gui/kernel/qwidget.cpp
+++ b/src/gui/kernel/qwidget.cpp
@@ -11462,6 +11462,17 @@ void QWidget::languageChange() { } // compat
\sa QWidget::setMaximumSize()
*/
+/*!
+ \fn QWidget::setupUi(QWidget *widget)
+
+ Sets up the user interface for the specified \a widget.
+
+ \note This function is available with widgets that derive from user
+ interface descriptions created using \l{uic}.
+
+ \sa {Using a Designer UI File in Your Application}
+*/
+
QRect QWidgetPrivate::frameStrut() const
{
Q_Q(const QWidget);
diff --git a/src/gui/kernel/qwidget.h b/src/gui/kernel/qwidget.h
index b7c55f9..5ba1d23 100644
--- a/src/gui/kernel/qwidget.h
+++ b/src/gui/kernel/qwidget.h
@@ -288,6 +288,10 @@ public:
void setMaximumWidth(int maxw);
void setMaximumHeight(int maxh);
+#ifdef Q_QDOC
+ void setupUi(QWidget *widget);
+#endif
+
QSize sizeIncrement() const;
void setSizeIncrement(const QSize &);
void setSizeIncrement(int w, int h);
diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h
index df28bac..eea929b 100644
--- a/src/gui/kernel/qwidget_p.h
+++ b/src/gui/kernel/qwidget_p.h
@@ -479,7 +479,7 @@ public:
QGraphicsProxyWidget *ancestorProxy = widget->d_func()->nearestGraphicsProxyWidget(widget);
//It's embedded if it has an ancestor
if (ancestorProxy) {
- if (!bypassGraphicsProxyWidget(widget)) {
+ if (!bypassGraphicsProxyWidget(widget) && ancestorProxy->scene() != 0) {
// One view, let be smart and return the viewport rect then the popup is aligned
if (ancestorProxy->scene()->views().size() == 1) {
QGraphicsView *view = ancestorProxy->scene()->views().at(0);
diff --git a/src/gui/kernel/qwidget_s60.cpp b/src/gui/kernel/qwidget_s60.cpp
index 504a538..b1c37d3 100644
--- a/src/gui/kernel/qwidget_s60.cpp
+++ b/src/gui/kernel/qwidget_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
@@ -213,6 +213,15 @@ void QWidgetPrivate::setGeometry_sys(int x, int y, int w, int h, bool isMove)
if ((q->windowType() == Qt::Desktop))
return;
+
+ QPoint oldPos(q->pos());
+ QSize oldSize(q->size());
+ QRect oldGeom(data.crect);
+
+ // Lose maximized status if deliberate resize
+ if (w != oldSize.width() || h != oldSize.height())
+ data.window_state &= ~Qt::WindowMaximized;
+
if (extra) { // any size restrictions?
w = qMin(w,extra->maxw);
h = qMin(h,extra->maxh);
@@ -228,17 +237,10 @@ void QWidgetPrivate::setGeometry_sys(int x, int y, int w, int h, bool isMove)
data.window_state = s;
}
- QPoint oldPos(q->pos());
- QSize oldSize(q->size());
- QRect oldGeom(data.crect);
-
bool isResize = w != oldSize.width() || h != oldSize.height();
if (!isMove && !isResize)
return;
- if (isResize)
- data.window_state &= ~Qt::WindowMaximized;
-
if (q->isWindow()) {
if (w == 0 || h == 0) {
q->setAttribute(Qt::WA_OutsideWSRange, true);
diff --git a/src/gui/painting/qpaintbuffer_p.h b/src/gui/painting/qpaintbuffer_p.h
index adf0564..e100512 100644
--- a/src/gui/painting/qpaintbuffer_p.h
+++ b/src/gui/painting/qpaintbuffer_p.h
@@ -66,7 +66,7 @@ class QPaintBufferPlayback;
class Q_GUI_EXPORT QPaintBuffer : public QPaintDevice
{
- Q_DECLARE_PRIVATE(QPaintBuffer);
+ Q_DECLARE_PRIVATE(QPaintBuffer)
public:
QPaintBuffer();
QPaintBuffer(const QPaintBuffer &other);
diff --git a/src/gui/painting/qpaintdevice.qdoc b/src/gui/painting/qpaintdevice.qdoc
index dca7e0e..6c0b04c 100644
--- a/src/gui/painting/qpaintdevice.qdoc
+++ b/src/gui/painting/qpaintdevice.qdoc
@@ -221,6 +221,18 @@
/*!
\fn int QPaintDevice::numColors() const
+ \deprecated
+
+ Use colorCount() instead.
+
+ Returns the number of different colors available for the paint
+ device. Since this value is an int, it will not be sufficient to represent
+ the number of colors on 32 bit displays, in this case INT_MAX is
+ returned instead.
+*/
+
+/*!
+ \fn int QPaintDevice::colorCount() const
Returns the number of different colors available for the paint
device. Since this value is an int, it will not be sufficient to represent
diff --git a/src/gui/painting/qpathclipper.cpp b/src/gui/painting/qpathclipper.cpp
index ab2dc33..51d6195 100644
--- a/src/gui/painting/qpathclipper.cpp
+++ b/src/gui/painting/qpathclipper.cpp
@@ -1650,7 +1650,7 @@ static void clear(QWingedEdge& list, int edge, QPathEdge::Traversal traversal)
template <typename InputIterator>
InputIterator qFuzzyFind(InputIterator first, InputIterator last, qreal val)
{
- while (first != last && !qFuzzyCompare(qreal(*first), qreal(val)))
+ while (first != last && !QT_PREPEND_NAMESPACE(qFuzzyCompare)(qreal(*first), qreal(val)))
++first;
return first;
}
diff --git a/src/gui/painting/qpdf.cpp b/src/gui/painting/qpdf.cpp
index 41a7fbb..b640858 100644
--- a/src/gui/painting/qpdf.cpp
+++ b/src/gui/painting/qpdf.cpp
@@ -145,7 +145,7 @@ namespace QPdf {
fileBackingActive(false),
handleDirty(false)
{
- dev->open(QIODevice::ReadWrite);
+ dev->open(QIODevice::ReadWrite | QIODevice::Append);
}
ByteStream::ByteStream(bool fileBacking)
diff --git a/src/gui/painting/qregion.cpp b/src/gui/painting/qregion.cpp
index 9d1d965..63dec2b 100644
--- a/src/gui/painting/qregion.cpp
+++ b/src/gui/painting/qregion.cpp
@@ -3867,23 +3867,28 @@ QRegion::QRegion(const QRect &r, RegionType t)
QRegion::QRegion(const QPolygon &a, Qt::FillRule fillRule)
{
if (a.count() > 2) {
- d = new QRegionData;
- d->ref = 1;
+ QRegionPrivate *qt_rgn = PolygonRegion(a.constData(), a.size(),
+ fillRule == Qt::WindingFill ? WindingRule : EvenOddRule);
+ if (qt_rgn) {
+ d = new QRegionData;
+ d->ref = 1;
#if defined(Q_WS_X11)
- d->rgn = 0;
- d->xrectangles = 0;
+ d->rgn = 0;
+ d->xrectangles = 0;
#elif defined(Q_WS_WIN)
- d->rgn = 0;
+ d->rgn = 0;
#endif
- d->qt_rgn = PolygonRegion(a.constData(), a.size(),
- fillRule == Qt::WindingFill ? WindingRule : EvenOddRule);
+ d->qt_rgn = qt_rgn;
+ } else {
+ d = &shared_empty;
+ d->ref.ref();
+ }
} else {
d = &shared_empty;
d->ref.ref();
}
}
-
QRegion::QRegion(const QRegion &r)
{
d = r.d;
diff --git a/src/gui/painting/qregion_s60.cpp b/src/gui/painting/qregion_s60.cpp
index 76b0948..3dc2e8d 100644
--- a/src/gui/painting/qregion_s60.cpp
+++ b/src/gui/painting/qregion_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/painting/qwindowsurface_s60.cpp b/src/gui/painting/qwindowsurface_s60.cpp
index dc4e43b..c66da71 100644
--- a/src/gui/painting/qwindowsurface_s60.cpp
+++ b/src/gui/painting/qwindowsurface_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/painting/qwindowsurface_s60_p.h b/src/gui/painting/qwindowsurface_s60_p.h
index 3c4059f..0305454 100644
--- a/src/gui/painting/qwindowsurface_s60_p.h
+++ b/src/gui/painting/qwindowsurface_s60_p.h
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/styles/qs60style.cpp b/src/gui/styles/qs60style.cpp
index 9179237..939ea45 100644
--- a/src/gui/styles/qs60style.cpp
+++ b/src/gui/styles/qs60style.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
@@ -668,7 +668,7 @@ void QS60StylePrivate::setThemePalette(QPalette *palette) const
s60Color(QS60StyleEnums::CL_QsnTextColors, 55, 0));
palette->setColor(QPalette::BrightText, palette->color(QPalette::WindowText).lighter());
palette->setColor(QPalette::HighlightedText,
- s60Color(QS60StyleEnums::CL_QsnTextColors, 10, 0));
+ s60Color(QS60StyleEnums::CL_QsnTextColors, 24, 0));
palette->setColor(QPalette::Link,
s60Color(QS60StyleEnums::CL_QsnHighlightColors, 3, 0));
palette->setColor(QPalette::LinkVisited, palette->color(QPalette::Link).darker());
diff --git a/src/gui/styles/qs60style.h b/src/gui/styles/qs60style.h
index 885ea40..cd63431 100644
--- a/src/gui/styles/qs60style.h
+++ b/src/gui/styles/qs60style.h
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/styles/qs60style_p.h b/src/gui/styles/qs60style_p.h
index b9789b9..cfe87ac 100644
--- a/src/gui/styles/qs60style_p.h
+++ b/src/gui/styles/qs60style_p.h
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/styles/qs60style_s60.cpp b/src/gui/styles/qs60style_s60.cpp
index b5f2d1c..a8dbf8d 100644
--- a/src/gui/styles/qs60style_s60.cpp
+++ b/src/gui/styles/qs60style_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/styles/qs60style_simulated.cpp b/src/gui/styles/qs60style_simulated.cpp
index 4317483..55d5771 100644
--- a/src/gui/styles/qs60style_simulated.cpp
+++ b/src/gui/styles/qs60style_simulated.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/text/qabstracttextdocumentlayout.h b/src/gui/text/qabstracttextdocumentlayout.h
index 2f8a746..438b291 100644
--- a/src/gui/text/qabstracttextdocumentlayout.h
+++ b/src/gui/text/qabstracttextdocumentlayout.h
@@ -122,6 +122,7 @@ protected:
QTextCharFormat format(int pos);
private:
+ friend class QTextControl;
friend class QTextDocument;
friend class QTextDocumentPrivate;
friend class QTextEngine;
diff --git a/src/gui/text/qfont_s60.cpp b/src/gui/text/qfont_s60.cpp
index 277d88f..0375fdb 100644
--- a/src/gui/text/qfont_s60.cpp
+++ b/src/gui/text/qfont_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/text/qfontdatabase_s60.cpp b/src/gui/text/qfontdatabase_s60.cpp
index ca5be0e..808dca6 100644
--- a/src/gui/text/qfontdatabase_s60.cpp
+++ b/src/gui/text/qfontdatabase_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/text/qfontengine_ft.cpp b/src/gui/text/qfontengine_ft.cpp
index 4041717..293eac7 100644
--- a/src/gui/text/qfontengine_ft.cpp
+++ b/src/gui/text/qfontengine_ft.cpp
@@ -755,9 +755,8 @@ QFontEngineFT::Glyph *QFontEngineFT::loadGlyphMetrics(QGlyphSet *set, uint glyph
load_flags = FT_LOAD_NO_BITMAP;
// apply our matrix to this, but note that the metrics will not be affected by this.
- FT_Matrix matrix = freetype->matrix;
FT_Face face = lockFace();
- matrix = this->matrix;
+ FT_Matrix matrix = this->matrix;
FT_Matrix_Multiply(&set->transformationMatrix, &matrix);
FT_Set_Transform(face, &matrix, 0);
freetype->matrix = matrix;
diff --git a/src/gui/text/qfontengine_s60.cpp b/src/gui/text/qfontengine_s60.cpp
index 88ae8f6..e279ad2 100644
--- a/src/gui/text/qfontengine_s60.cpp
+++ b/src/gui/text/qfontengine_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/text/qfontengine_s60_p.h b/src/gui/text/qfontengine_s60_p.h
index 44f8122..9e22245 100644
--- a/src/gui/text/qfontengine_s60_p.h
+++ b/src/gui/text/qfontengine_s60_p.h
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/text/qtextcontrol.cpp b/src/gui/text/qtextcontrol.cpp
index 2bfe33c..be79773 100644
--- a/src/gui/text/qtextcontrol.cpp
+++ b/src/gui/text/qtextcontrol.cpp
@@ -55,6 +55,7 @@
#include <qstyle.h>
#include <qtimer.h>
#include "private/qtextdocumentlayout_p.h"
+#include "private/qabstracttextdocumentlayout_p.h"
#include "private/qtextedit_p.h"
#include "qtextdocument.h"
#include "private/qtextdocument_p.h"
@@ -126,6 +127,7 @@ QTextControlPrivate::QTextControlPrivate()
#endif
isEnabled(true),
hadSelectionOnMousePress(false),
+ ignoreUnusedNavigationEvents(false),
openExternalLinks(false)
{}
@@ -264,19 +266,25 @@ bool QTextControlPrivate::cursorMoveKeyEvent(QKeyEvent *e)
cursor.setVisualNavigation(visualNavigation);
q->ensureCursorVisible();
+ bool ignoreNavigationEvents = ignoreUnusedNavigationEvents;
+ bool isNavigationEvent = e->key() == Qt::Key_Up || e->key() == Qt::Key_Down;
+
+#ifdef QT_KEYPAD_NAVIGATION
+ ignoreNavigationEvents = ignoreNavigationEvents || QApplication::keypadNavigationEnabled();
+ isNavigationEvent = isNavigationEvent ||
+ (QApplication::navigationMode() == Qt::NavigationModeKeypadDirectional
+ && (e->key() == Qt::Key_Left || e->key() == Qt::Key_Right));
+#else
+ isNavigationEvent = isNavigationEvent || e->key() == Qt::Key_Left || e->key() == Qt::Key_Right;
+#endif
+
if (moved) {
if (cursor.position() != oldCursorPos)
emit q->cursorPositionChanged();
emit q->microFocusChanged();
- }
-#ifdef QT_KEYPAD_NAVIGATION
- else if (QApplication::keypadNavigationEnabled()
- && ((e->key() == Qt::Key_Up || e->key() == Qt::Key_Down)
- || QApplication::navigationMode() == Qt::NavigationModeKeypadDirectional
- && (e->key() == Qt::Key_Left || e->key() == Qt::Key_Right))) {
+ } else if (ignoreNavigationEvents && isNavigationEvent) {
return false;
}
-#endif
selectionChanged(/*forceEmitSelectionChanged =*/(mode == QTextCursor::KeepAnchor));
@@ -2263,6 +2271,18 @@ bool QTextControl::openExternalLinks() const
return d->openExternalLinks;
}
+bool QTextControl::ignoreUnusedNavigationEvents() const
+{
+ Q_D(const QTextControl);
+ return d->ignoreUnusedNavigationEvents;
+}
+
+void QTextControl::setIgnoreUnusedNavigationEvents(bool ignore)
+{
+ Q_D(QTextControl);
+ d->ignoreUnusedNavigationEvents = ignore;
+}
+
void QTextControl::moveCursor(QTextCursor::MoveOperation op, QTextCursor::MoveMode mode)
{
Q_D(QTextControl);
@@ -2319,6 +2339,9 @@ void QTextControl::print(QPrinter *printer) const
tempDoc->setUseDesignMetrics(doc->useDesignMetrics());
QTextCursor(tempDoc).insertFragment(d->cursor.selection());
doc = tempDoc;
+
+ // copy the custom object handlers
+ doc->documentLayout()->d_func()->handlers = d->doc->documentLayout()->d_func()->handlers;
}
doc->print(printer);
delete tempDoc;
diff --git a/src/gui/text/qtextcontrol_p.h b/src/gui/text/qtextcontrol_p.h
index 263af31..bc8e063 100644
--- a/src/gui/text/qtextcontrol_p.h
+++ b/src/gui/text/qtextcontrol_p.h
@@ -95,6 +95,7 @@ class Q_GUI_EXPORT QTextControl : public QObject
Q_PROPERTY(int cursorWidth READ cursorWidth WRITE setCursorWidth)
Q_PROPERTY(Qt::TextInteractionFlags textInteractionFlags READ textInteractionFlags WRITE setTextInteractionFlags)
Q_PROPERTY(bool openExternalLinks READ openExternalLinks WRITE setOpenExternalLinks)
+ Q_PROPERTY(bool ignoreUnusedNavigationEvents READ ignoreUnusedNavigationEvents WRITE setIgnoreUnusedNavigationEvents)
public:
explicit QTextControl(QObject *parent = 0);
explicit QTextControl(const QString &text, QObject *parent = 0);
@@ -163,6 +164,9 @@ public:
void setOpenExternalLinks(bool open);
bool openExternalLinks() const;
+ void setIgnoreUnusedNavigationEvents(bool ignore);
+ bool ignoreUnusedNavigationEvents() const;
+
void moveCursor(QTextCursor::MoveOperation op, QTextCursor::MoveMode mode = QTextCursor::MoveAnchor);
bool canPaste() const;
diff --git a/src/gui/text/qtextcontrol_p_p.h b/src/gui/text/qtextcontrol_p_p.h
index 66459f6..c230512 100644
--- a/src/gui/text/qtextcontrol_p_p.h
+++ b/src/gui/text/qtextcontrol_p_p.h
@@ -206,6 +206,7 @@ public:
QString anchorOnMousePress;
bool hadSelectionOnMousePress;
+ bool ignoreUnusedNavigationEvents;
bool openExternalLinks;
QString linkToCopy;
diff --git a/src/gui/text/qtextdocument.cpp b/src/gui/text/qtextdocument.cpp
index 1aad385..048325c 100644
--- a/src/gui/text/qtextdocument.cpp
+++ b/src/gui/text/qtextdocument.cpp
@@ -64,6 +64,7 @@
#include "qtextdocument_p.h"
#include <private/qprinter_p.h>
+#include <private/qabstracttextdocumentlayout_p.h>
#include <limits.h>
@@ -1722,6 +1723,9 @@ void QTextDocument::print(QPrinter *printer) const
QAbstractTextDocumentLayout *layout = doc->documentLayout();
layout->setPaintDevice(p.device());
+ // copy the custom object handlers
+ layout->d_func()->handlers = documentLayout()->d_func()->handlers;
+
int dpiy = p.device()->logicalDpiY();
int margin = 0;
if (printer->fullPage() && !printer->d_func()->hasCustomPageMargins) {
diff --git a/src/gui/text/qtextdocumentlayout.cpp b/src/gui/text/qtextdocumentlayout.cpp
index 73434b1..2604879 100644
--- a/src/gui/text/qtextdocumentlayout.cpp
+++ b/src/gui/text/qtextdocumentlayout.cpp
@@ -1448,13 +1448,13 @@ void QTextDocumentLayoutPrivate::drawListItem(const QPointF &offset, QPainter *p
painter->fillRect(r, brush);
break;
case QTextListFormat::ListCircle:
- painter->drawEllipse(r);
+ painter->setPen(QPen(brush, 0));
+ painter->drawEllipse(r.translated(0.5, 0.5)); // pixel align for sharper rendering
break;
case QTextListFormat::ListDisc:
painter->setBrush(brush);
painter->setPen(Qt::NoPen);
painter->drawEllipse(r);
- painter->setBrush(Qt::NoBrush);
break;
case QTextListFormat::ListStyleUndefined:
break;
diff --git a/src/gui/text/qtextformat.cpp b/src/gui/text/qtextformat.cpp
index d05d9e5..deda39f 100644
--- a/src/gui/text/qtextformat.cpp
+++ b/src/gui/text/qtextformat.cpp
@@ -265,21 +265,55 @@ private:
friend QDataStream &operator>>(QDataStream &, QTextFormat &);
};
-static uint variantHash(const QVariant &variant)
+// this is only safe if sizeof(int) == sizeof(float)
+static inline uint hash(float d)
{
- switch (variant.userType()) {
- case QVariant::Invalid: return 0;
- case QVariant::Bool: return variant.toBool();
- case QVariant::Int: return variant.toInt();
- case QMetaType::Float: return static_cast<int>(variant.toFloat());
- case QVariant::Double: return static_cast<int>(variant.toDouble());
+ return reinterpret_cast<uint&>(d);
+}
+
+static inline uint hash(const QColor &color)
+{
+ return (color.isValid()) ? color.rgba() : 0x234109;
+}
+
+static inline uint hash(const QPen &pen)
+{
+ return hash(pen.color()) + hash(pen.widthF());
+}
+
+static inline uint hash(const QBrush &brush)
+{
+ return hash(brush.color()) + (brush.style() << 3);
+}
+
+static inline uint variantHash(const QVariant &variant)
+{
+ // simple and fast hash functions to differentiate between type and value
+ switch (variant.userType()) { // sorted by occurrence frequency
case QVariant::String: return qHash(variant.toString());
- case QVariant::Color: return qHash(qvariant_cast<QColor>(variant).rgb());
+ case QVariant::Double: return hash(variant.toDouble());
+ case QVariant::Int: return 0x811890 + variant.toInt();
+ case QVariant::Brush:
+ return 0x01010101 + hash(qvariant_cast<QBrush>(variant));
+ case QVariant::Bool: return 0x371818 + variant.toBool();
+ case QVariant::Pen: return 0x02020202 + hash(qvariant_cast<QPen>(variant));
+ case QVariant::List:
+ return 0x8377 + qvariant_cast<QVariantList>(variant).count();
+ case QVariant::Color: return hash(qvariant_cast<QColor>(variant));
+ case QVariant::TextLength:
+ return 0x377 + hash(qvariant_cast<QTextLength>(variant).rawValue());
+ case QMetaType::Float: return hash(variant.toFloat());
+ case QVariant::Invalid: return 0;
default: break;
}
return qHash(variant.typeName());
}
+static inline int getHash(const QTextFormatPrivate *d, int format)
+{
+ return (d ? d->hash() : 0) + format;
+}
+
uint QTextFormatPrivate::recalcHash() const
{
hashValue = 0;
@@ -3033,13 +3067,15 @@ QTextFormatCollection::~QTextFormatCollection()
int QTextFormatCollection::indexForFormat(const QTextFormat &format)
{
- uint hash = format.d ? format.d->hash() : 0;
- if (hashes.contains(hash)) {
- for (int i = 0; i < formats.size(); ++i) {
- if (formats.at(i) == format)
- return i;
+ uint hash = getHash(format.d, format.format_type);
+ QMultiHash<uint, int>::const_iterator i = hashes.find(hash);
+ while (i != hashes.end() && i.key() == hash) {
+ if (formats.value(i.value()) == format) {
+ return i.value();
}
+ ++i;
}
+
int idx = formats.size();
formats.append(format);
@@ -3049,7 +3085,7 @@ int QTextFormatCollection::indexForFormat(const QTextFormat &format)
f.d = new QTextFormatPrivate;
f.d->resolveFont(defaultFnt);
- hashes.insert(hash);
+ hashes.insert(hash, idx);
} QT_CATCH(...) {
formats.pop_back();
@@ -3060,11 +3096,13 @@ int QTextFormatCollection::indexForFormat(const QTextFormat &format)
bool QTextFormatCollection::hasFormatCached(const QTextFormat &format) const
{
- uint hash = format.d ? format.d->hash() : 0;
- if (hashes.contains(hash)) {
- for (int i = 0; i < formats.size(); ++i)
- if (formats.at(i) == format)
- return true;
+ uint hash = getHash(format.d, format.format_type);
+ QMultiHash<uint, int>::const_iterator i = hashes.find(hash);
+ while (i != hashes.end() && i.key() == hash) {
+ if (formats.value(i.value()) == format) {
+ return true;
+ }
+ ++i;
}
return false;
}
diff --git a/src/gui/text/qtextformat_p.h b/src/gui/text/qtextformat_p.h
index c796343..73ca0ce 100644
--- a/src/gui/text/qtextformat_p.h
+++ b/src/gui/text/qtextformat_p.h
@@ -55,7 +55,7 @@
#include "QtGui/qtextformat.h"
#include "QtCore/qvector.h"
-#include "QtCore/qset.h"
+#include "QtCore/qhash.h"
QT_BEGIN_NAMESPACE
@@ -97,7 +97,7 @@ public:
FormatVector formats;
QVector<qint32> objFormats;
- QSet<uint> hashes;
+ QMultiHash<uint,int> hashes;
inline QFont defaultFont() const { return defaultFnt; }
void setDefaultFont(const QFont &f);
diff --git a/src/gui/util/qdesktopservices_s60.cpp b/src/gui/util/qdesktopservices_s60.cpp
index fd06cf3..1890d56 100644
--- a/src/gui/util/qdesktopservices_s60.cpp
+++ b/src/gui/util/qdesktopservices_s60.cpp
@@ -4,7 +4,7 @@
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
-** This file is part of the QtGui of the Qt Toolkit.
+** This file is part of the QtGui module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** No Commercial Usage
diff --git a/src/gui/widgets/qcalendarwidget.cpp b/src/gui/widgets/qcalendarwidget.cpp
index 08ed7f6..ee536ee 100644
--- a/src/gui/widgets/qcalendarwidget.cpp
+++ b/src/gui/widgets/qcalendarwidget.cpp
@@ -2297,7 +2297,21 @@ int QCalendarWidget::monthShown() const
void QCalendarWidget::setCurrentPage(int year, int month)
{
Q_D(QCalendarWidget);
+ QDate currentDate = d->getCurrentDate();
+ int day = currentDate.day();
+ int daysInMonths = QDate(year, month, 1).daysInMonth();
+ if (day > daysInMonths)
+ day = daysInMonths;
+
d->showMonth(year, month);
+
+ QDate newDate(year, month, day);
+ int row = -1, col = -1;
+ d->m_model->cellForDate(newDate, &row, &col);
+ if (row != -1 && col != -1) {
+ d->m_view->selectionModel()->setCurrentIndex(d->m_model->index(row, col),
+ QItemSelectionModel::NoUpdate);
+ }
}
/*!
diff --git a/src/gui/widgets/qlcdnumber.cpp b/src/gui/widgets/qlcdnumber.cpp
index 3497eba..69c52cf 100644
--- a/src/gui/widgets/qlcdnumber.cpp
+++ b/src/gui/widgets/qlcdnumber.cpp
@@ -441,10 +441,10 @@ QLCDNumber::~QLCDNumber()
/*!
- \obsolete
+ \deprecated
\property QLCDNumber::numDigits
\brief the current number of digits displayed
- \sa setDigitCount()
+ \sa digitCount
*/
void QLCDNumber::setNumDigits(int numDigits)
diff --git a/src/opengl/qgl_qws.cpp b/src/opengl/qgl_qws.cpp
index 5e59975..a189c20 100644
--- a/src/opengl/qgl_qws.cpp
+++ b/src/opengl/qgl_qws.cpp
@@ -206,6 +206,9 @@ bool QGLContext::chooseContext(const QGLContext* shareContext)
d->eglContext = 0;
return false;
}
+ d->sharing = d->eglContext->isSharing();
+ if (d->sharing && shareContext)
+ const_cast<QGLContext *>(shareContext)->d_func()->sharing = true;
#if defined(EGL_VERSION_1_1)
if (d->glFormat.swapInterval() != -1 && devType == QInternal::Widget)
diff --git a/src/opengl/qgl_wince.cpp b/src/opengl/qgl_wince.cpp
index fea2d3a..2553110 100644
--- a/src/opengl/qgl_wince.cpp
+++ b/src/opengl/qgl_wince.cpp
@@ -166,6 +166,9 @@ bool QGLContext::chooseContext(const QGLContext* shareContext)
d->eglContext = 0;
return false;
}
+ d->sharing = d->eglContext->isSharing();
+ if (d->sharing && shareContext)
+ const_cast<QGLContext *>(shareContext)->d_func()->sharing = true;
#if defined(EGL_VERSION_1_1)
if (d->glFormat.swapInterval() != -1 && devType == QInternal::Widget)
diff --git a/src/opengl/qgl_x11egl.cpp b/src/opengl/qgl_x11egl.cpp
index 9b20297..b51c239 100644
--- a/src/opengl/qgl_x11egl.cpp
+++ b/src/opengl/qgl_x11egl.cpp
@@ -115,6 +115,9 @@ bool QGLContext::chooseContext(const QGLContext* shareContext)
d->eglContext = 0;
return false;
}
+ d->sharing = d->eglContext->isSharing();
+ if (d->sharing && shareContext)
+ const_cast<QGLContext *>(shareContext)->d_func()->sharing = true;
#if defined(EGL_VERSION_1_1)
if (d->glFormat.swapInterval() != -1 && devType == QInternal::Widget)
diff --git a/src/opengl/qglpixmapfilter.cpp b/src/opengl/qglpixmapfilter.cpp
index fcb0ea2..c478630 100644
--- a/src/opengl/qglpixmapfilter.cpp
+++ b/src/opengl/qglpixmapfilter.cpp
@@ -989,7 +989,7 @@ bool QGLPixmapDropShadowFilter::processGL(QPainter *painter, const QPointF &pos,
// ensure GL_LINEAR filtering is used
painter->setRenderHint(QPainter::SmoothPixmapTransform);
filter->setOnPainter(painter);
- engine->drawTexture(targetRect, fbo->texture(), fbo->size(), src.rect().translated(0, fbo->height() - src.height()));
+ engine->drawTexture(targetRect, fbo->texture(), fbo->size(), QRectF(0, fbo->height() - targetRect.height(), targetRect.width(), targetRect.height()));
filter->removeFromPainter(painter);
painter->restore();
diff --git a/src/openvg/qpixmapdata_vg_p.h b/src/openvg/qpixmapdata_vg_p.h
index f552c7b..f6fac88 100644
--- a/src/openvg/qpixmapdata_vg_p.h
+++ b/src/openvg/qpixmapdata_vg_p.h
@@ -89,10 +89,10 @@ public:
// Return the VGImage form of this pixmap, creating it if necessary.
// This assumes that there is a VG context current.
- VGImage toVGImage();
+ virtual VGImage toVGImage();
// Return the VGImage form for a specific opacity setting.
- VGImage toVGImage(qreal opacity);
+ virtual VGImage toVGImage(qreal opacity);
QSize size() const { return QSize(w, h); }
@@ -108,7 +108,7 @@ protected:
void cleanup();
#endif
-private:
+protected:
VGImage vgImage;
VGImage vgImageOpacity;
qreal cachedOpacity;
diff --git a/src/plugins/graphicssystems/trace/qgraphicssystem_trace.cpp b/src/plugins/graphicssystems/trace/qgraphicssystem_trace.cpp
index 8756ecb..fb6f5ea 100644
--- a/src/plugins/graphicssystems/trace/qgraphicssystem_trace.cpp
+++ b/src/plugins/graphicssystems/trace/qgraphicssystem_trace.cpp
@@ -82,6 +82,7 @@ QTraceWindowSurface::~QTraceWindowSurface()
QFile outputFile(QString(QLatin1String("qtgraphics-%0.trace")).arg(winId));
if (outputFile.open(QIODevice::WriteOnly)) {
QDataStream out(&outputFile);
+ out.writeBytes("qttrace", 7);
out << *buffer << updates;
}
delete buffer;
diff --git a/src/plugins/imageformats/jpeg/qjpeghandler.cpp b/src/plugins/imageformats/jpeg/qjpeghandler.cpp
index 6b2f885..54bbcda 100644
--- a/src/plugins/imageformats/jpeg/qjpeghandler.cpp
+++ b/src/plugins/imageformats/jpeg/qjpeghandler.cpp
@@ -196,52 +196,52 @@ inline QRgb *QImageSmoothScaler::scanLine(const int line, const QImage *src)
QImage QImageSmoothScaler::scale()
{
- long SCALE;
- long HALFSCALE;
- QRgb *xelrow = 0;
- QRgb *tempxelrow = 0;
- QRgb *xP;
- QRgb *nxP;
- int row, rowsread;
- int col, needtoreadrow;
- uchar maxval = 255;
- qreal xscale, yscale;
- long sxscale, syscale;
- long fracrowtofill, fracrowleft;
- long *as;
- long *rs;
- long *gs;
- long *bs;
- int rowswritten = 0;
- QImage dst;
+ long SCALE;
+ long HALFSCALE;
+ QRgb *xelrow = 0;
+ QRgb *tempxelrow = 0;
+ QRgb *xP;
+ QRgb *nxP;
+ int row, rowsread;
+ int col, needtoreadrow;
+ uchar maxval = 255;
+ qreal xscale, yscale;
+ long sxscale, syscale;
+ long fracrowtofill, fracrowleft;
+ long *as;
+ long *rs;
+ long *gs;
+ long *bs;
+ int rowswritten = 0;
+ QImage dst;
if (d->cols > 4096) {
- SCALE = 4096;
- HALFSCALE = 2048;
+ SCALE = 4096;
+ HALFSCALE = 2048;
} else {
- int fac = 4096;
- while (d->cols * fac > 4096) {
- fac /= 2;
- }
+ int fac = 4096;
+ while (d->cols * fac > 4096)
+ fac /= 2;
- SCALE = fac * d->cols;
- HALFSCALE = fac * d->cols / 2;
+ SCALE = fac * d->cols;
+ HALFSCALE = fac * d->cols / 2;
}
- xscale = (qreal) d->newcols / (qreal) d->cols;
- yscale = (qreal) d->newrows / (qreal) d->rows;
+ xscale = (qreal)d->newcols / (qreal)d->cols;
+ yscale = (qreal)d->newrows / (qreal)d->rows;
sxscale = (long)(xscale * SCALE);
syscale = (long)(yscale * SCALE);
- if ( d->newrows != d->rows ) /* shortcut Y scaling if possible */
- tempxelrow = new QRgb[d->cols];
+ // shortcut Y scaling if possible
+ if (d->newrows != d->rows)
+ tempxelrow = new QRgb[d->cols];
- if ( d->hasAlpha ) {
- as = new long[d->cols];
- for ( col = 0; col < d->cols; ++col )
- as[col] = HALFSCALE;
+ if (d->hasAlpha) {
+ as = new long[d->cols];
+ for (col = 0; col < d->cols; ++col)
+ as[col] = HALFSCALE;
} else {
- as = 0;
+ as = 0;
}
rs = new long[d->cols];
gs = new long[d->cols];
@@ -249,205 +249,217 @@ QImage QImageSmoothScaler::scale()
rowsread = 0;
fracrowleft = syscale;
needtoreadrow = 1;
- for ( col = 0; col < d->cols; ++col )
- rs[col] = gs[col] = bs[col] = HALFSCALE;
+ for (col = 0; col < d->cols; ++col)
+ rs[col] = gs[col] = bs[col] = HALFSCALE;
fracrowtofill = SCALE;
- dst = QImage( d->newcols, d->newrows, d->hasAlpha ? QImage::Format_ARGB32 : QImage::Format_RGB32 );
-
- for ( row = 0; row < d->newrows; ++row ) {
- /* First scale Y from xelrow into tempxelrow. */
- if ( d->newrows == d->rows ) {
- /* shortcut Y scaling if possible */
- tempxelrow = xelrow = scanLine(rowsread++, d->src);
- } else {
- while ( fracrowleft < fracrowtofill ) {
- if ( needtoreadrow && rowsread < d->rows ) {
- xelrow = scanLine(rowsread++, d->src);
- }
- for ( col = 0, xP = xelrow; col < d->cols; ++col, ++xP ) {
- if (as) {
- as[col] += fracrowleft * qAlpha( *xP );
- rs[col] += fracrowleft * qRed( *xP ) * qAlpha( *xP ) / 255;
- gs[col] += fracrowleft * qGreen( *xP ) * qAlpha( *xP ) / 255;
- bs[col] += fracrowleft * qBlue( *xP ) * qAlpha( *xP ) / 255;
- } else {
- rs[col] += fracrowleft * qRed( *xP );
- gs[col] += fracrowleft * qGreen( *xP );
- bs[col] += fracrowleft * qBlue( *xP );
- }
- }
- fracrowtofill -= fracrowleft;
- fracrowleft = syscale;
- needtoreadrow = 1;
- }
- /* Now fracrowleft is >= fracrowtofill, so we can produce a row. */
- if ( needtoreadrow && rowsread < d->rows) {
- xelrow = scanLine(rowsread++, d->src);
- needtoreadrow = 0;
- }
- for ( col = 0, xP = xelrow, nxP = tempxelrow;
- col < d->cols; ++col, ++xP, ++nxP )
- {
- register long a, r, g, b;
-
- if ( as ) {
- r = rs[col] + fracrowtofill * qRed( *xP ) * qAlpha( *xP ) / 255;
- g = gs[col] + fracrowtofill * qGreen( *xP ) * qAlpha( *xP ) / 255;
- b = bs[col] + fracrowtofill * qBlue( *xP ) * qAlpha( *xP ) / 255;
- a = as[col] + fracrowtofill * qAlpha( *xP );
- if ( a ) {
- r = r * 255 / a * SCALE;
- g = g * 255 / a * SCALE;
- b = b * 255 / a * SCALE;
- }
- } else {
- r = rs[col] + fracrowtofill * qRed( *xP );
- g = gs[col] + fracrowtofill * qGreen( *xP );
- b = bs[col] + fracrowtofill * qBlue( *xP );
- a = 0; // unwarn
- }
- r /= SCALE;
- if ( r > maxval ) r = maxval;
- g /= SCALE;
- if ( g > maxval ) g = maxval;
- b /= SCALE;
- if ( b > maxval ) b = maxval;
- if ( as ) {
- a /= SCALE;
- if ( a > maxval ) a = maxval;
- *nxP = qRgba( (int)r, (int)g, (int)b, (int)a );
- as[col] = HALFSCALE;
- } else {
- *nxP = qRgb( (int)r, (int)g, (int)b );
- }
- rs[col] = gs[col] = bs[col] = HALFSCALE;
- }
- fracrowleft -= fracrowtofill;
- if ( fracrowleft == 0 ) {
- fracrowleft = syscale;
- needtoreadrow = 1;
- }
- fracrowtofill = SCALE;
- }
+ dst = QImage(d->newcols, d->newrows, d->hasAlpha ? QImage::Format_ARGB32 : QImage::Format_RGB32);
- /* Now scale X from tempxelrow into dst and write it out. */
- if ( d->newcols == d->cols ) {
- /* shortcut X scaling if possible */
- memcpy(dst.scanLine(rowswritten++), tempxelrow, d->newcols*4);
- } else {
- register long a, r, g, b;
- register long fraccoltofill, fraccolleft = 0;
- register int needcol;
-
- nxP = (QRgb*)dst.scanLine(rowswritten++);
- fraccoltofill = SCALE;
- a = r = g = b = HALFSCALE;
- needcol = 0;
- for ( col = 0, xP = tempxelrow; col < d->cols; ++col, ++xP ) {
- fraccolleft = sxscale;
- while ( fraccolleft >= fraccoltofill ) {
- if ( needcol ) {
- ++nxP;
- a = r = g = b = HALFSCALE;
- }
- if ( as ) {
- r += fraccoltofill * qRed( *xP ) * qAlpha( *xP ) / 255;
- g += fraccoltofill * qGreen( *xP ) * qAlpha( *xP ) / 255;
- b += fraccoltofill * qBlue( *xP ) * qAlpha( *xP ) / 255;
- a += fraccoltofill * qAlpha( *xP );
- if ( a ) {
- r = r * 255 / a * SCALE;
- g = g * 255 / a * SCALE;
- b = b * 255 / a * SCALE;
- }
- } else {
- r += fraccoltofill * qRed( *xP );
- g += fraccoltofill * qGreen( *xP );
- b += fraccoltofill * qBlue( *xP );
- }
- r /= SCALE;
- if ( r > maxval ) r = maxval;
- g /= SCALE;
- if ( g > maxval ) g = maxval;
- b /= SCALE;
- if ( b > maxval ) b = maxval;
- if (as) {
- a /= SCALE;
- if ( a > maxval ) a = maxval;
- *nxP = qRgba( (int)r, (int)g, (int)b, (int)a );
- } else {
- *nxP = qRgb( (int)r, (int)g, (int)b );
- }
- fraccolleft -= fraccoltofill;
- fraccoltofill = SCALE;
- needcol = 1;
- }
- if ( fraccolleft > 0 ) {
- if ( needcol ) {
- ++nxP;
- a = r = g = b = HALFSCALE;
- needcol = 0;
- }
- if (as) {
- a += fraccolleft * qAlpha( *xP );
- r += fraccolleft * qRed( *xP ) * qAlpha( *xP ) / 255;
- g += fraccolleft * qGreen( *xP ) * qAlpha( *xP ) / 255;
- b += fraccolleft * qBlue( *xP ) * qAlpha( *xP ) / 255;
- } else {
- r += fraccolleft * qRed( *xP );
- g += fraccolleft * qGreen( *xP );
- b += fraccolleft * qBlue( *xP );
- }
- fraccoltofill -= fraccolleft;
- }
- }
- if ( fraccoltofill > 0 ) {
- --xP;
- if (as) {
- a += fraccolleft * qAlpha( *xP );
- r += fraccoltofill * qRed( *xP ) * qAlpha( *xP ) / 255;
- g += fraccoltofill * qGreen( *xP ) * qAlpha( *xP ) / 255;
- b += fraccoltofill * qBlue( *xP ) * qAlpha( *xP ) / 255;
- if ( a ) {
- r = r * 255 / a * SCALE;
- g = g * 255 / a * SCALE;
- b = b * 255 / a * SCALE;
- }
- } else {
- r += fraccoltofill * qRed( *xP );
- g += fraccoltofill * qGreen( *xP );
- b += fraccoltofill * qBlue( *xP );
- }
- }
- if ( ! needcol ) {
- r /= SCALE;
- if ( r > maxval ) r = maxval;
- g /= SCALE;
- if ( g > maxval ) g = maxval;
- b /= SCALE;
- if ( b > maxval ) b = maxval;
- if (as) {
- a /= SCALE;
- if ( a > maxval ) a = maxval;
- *nxP = qRgba( (int)r, (int)g, (int)b, (int)a );
- } else {
- *nxP = qRgb( (int)r, (int)g, (int)b );
- }
- }
- }
+ for (row = 0; row < d->newrows; ++row) {
+ // First scale Y from xelrow into tempxelrow.
+ if (d->newrows == d->rows) {
+ // shortcut Y scaling if possible
+ tempxelrow = xelrow = scanLine(rowsread++, d->src);
+ } else {
+ while (fracrowleft < fracrowtofill) {
+ if (needtoreadrow && rowsread < d->rows)
+ xelrow = scanLine(rowsread++, d->src);
+ for (col = 0, xP = xelrow; col < d->cols; ++col, ++xP) {
+ if (as) {
+ as[col] += fracrowleft * qAlpha(*xP);
+ rs[col] += fracrowleft * qRed(*xP) * qAlpha(*xP) / 255;
+ gs[col] += fracrowleft * qGreen(*xP) * qAlpha(*xP) / 255;
+ bs[col] += fracrowleft * qBlue(*xP) * qAlpha(*xP) / 255;
+ } else {
+ rs[col] += fracrowleft * qRed(*xP);
+ gs[col] += fracrowleft * qGreen(*xP);
+ bs[col] += fracrowleft * qBlue(*xP);
+ }
+ }
+ fracrowtofill -= fracrowleft;
+ fracrowleft = syscale;
+ needtoreadrow = 1;
+ }
+ // Now fracrowleft is >= fracrowtofill, so we can produce a row.
+ if (needtoreadrow && rowsread < d->rows) {
+ xelrow = scanLine(rowsread++, d->src);
+ needtoreadrow = 0;
+ }
+ for (col = 0, xP = xelrow, nxP = tempxelrow; col < d->cols; ++col, ++xP, ++nxP) {
+ register long a, r, g, b;
+
+ if (as) {
+ r = rs[col] + fracrowtofill * qRed(*xP) * qAlpha(*xP) / 255;
+ g = gs[col] + fracrowtofill * qGreen(*xP) * qAlpha(*xP) / 255;
+ b = bs[col] + fracrowtofill * qBlue(*xP) * qAlpha(*xP) / 255;
+ a = as[col] + fracrowtofill * qAlpha(*xP);
+ if (a) {
+ r = r * 255 / a * SCALE;
+ g = g * 255 / a * SCALE;
+ b = b * 255 / a * SCALE;
+ }
+ } else {
+ r = rs[col] + fracrowtofill * qRed(*xP);
+ g = gs[col] + fracrowtofill * qGreen(*xP);
+ b = bs[col] + fracrowtofill * qBlue(*xP);
+ a = 0; // unwarn
+ }
+ r /= SCALE;
+ if (r > maxval)
+ r = maxval;
+ g /= SCALE;
+ if (g > maxval)
+ g = maxval;
+ b /= SCALE;
+ if (b > maxval)
+ b = maxval;
+ if (as) {
+ a /= SCALE;
+ if (a > maxval)
+ a = maxval;
+ *nxP = qRgba((int)r, (int)g, (int)b, (int)a);
+ as[col] = HALFSCALE;
+ } else {
+ *nxP = qRgb((int)r, (int)g, (int)b);
+ }
+ rs[col] = gs[col] = bs[col] = HALFSCALE;
+ }
+ fracrowleft -= fracrowtofill;
+ if (fracrowleft == 0) {
+ fracrowleft = syscale;
+ needtoreadrow = 1;
+ }
+ fracrowtofill = SCALE;
+ }
+
+ // Now scale X from tempxelrow into dst and write it out.
+ if (d->newcols == d->cols) {
+ // shortcut X scaling if possible
+ memcpy(dst.scanLine(rowswritten++), tempxelrow, d->newcols * 4);
+ } else {
+ register long a, r, g, b;
+ register long fraccoltofill, fraccolleft = 0;
+ register int needcol;
+
+ nxP = (QRgb *)dst.scanLine(rowswritten++);
+ QRgb *nxPEnd = nxP + d->newcols;
+ fraccoltofill = SCALE;
+ a = r = g = b = HALFSCALE;
+ needcol = 0;
+ for (col = 0, xP = tempxelrow; col < d->cols; ++col, ++xP) {
+ fraccolleft = sxscale;
+ while (fraccolleft >= fraccoltofill) {
+ if (needcol) {
+ ++nxP;
+ a = r = g = b = HALFSCALE;
+ }
+ if (as) {
+ r += fraccoltofill * qRed(*xP) * qAlpha(*xP) / 255;
+ g += fraccoltofill * qGreen(*xP) * qAlpha(*xP) / 255;
+ b += fraccoltofill * qBlue(*xP) * qAlpha(*xP) / 255;
+ a += fraccoltofill * qAlpha(*xP);
+ if (a) {
+ r = r * 255 / a * SCALE;
+ g = g * 255 / a * SCALE;
+ b = b * 255 / a * SCALE;
+ }
+ } else {
+ r += fraccoltofill * qRed(*xP);
+ g += fraccoltofill * qGreen(*xP);
+ b += fraccoltofill * qBlue(*xP);
+ }
+ r /= SCALE;
+ if (r > maxval)
+ r = maxval;
+ g /= SCALE;
+ if (g > maxval)
+ g = maxval;
+ b /= SCALE;
+ if (b > maxval)
+ b = maxval;
+ if (as) {
+ a /= SCALE;
+ if (a > maxval)
+ a = maxval;
+ *nxP = qRgba((int)r, (int)g, (int)b, (int)a);
+ } else {
+ *nxP = qRgb((int)r, (int)g, (int)b);
+ }
+ fraccolleft -= fraccoltofill;
+ fraccoltofill = SCALE;
+ needcol = 1;
+ }
+ if (fraccolleft > 0) {
+ if (needcol) {
+ ++nxP;
+ a = r = g = b = HALFSCALE;
+ needcol = 0;
+ }
+ if (as) {
+ a += fraccolleft * qAlpha(*xP);
+ r += fraccolleft * qRed(*xP) * qAlpha(*xP) / 255;
+ g += fraccolleft * qGreen(*xP) * qAlpha(*xP) / 255;
+ b += fraccolleft * qBlue(*xP) * qAlpha(*xP) / 255;
+ } else {
+ r += fraccolleft * qRed(*xP);
+ g += fraccolleft * qGreen(*xP);
+ b += fraccolleft * qBlue(*xP);
+ }
+ fraccoltofill -= fraccolleft;
+ }
+ }
+ if (fraccoltofill > 0) {
+ --xP;
+ if (as) {
+ a += fraccolleft * qAlpha(*xP);
+ r += fraccoltofill * qRed(*xP) * qAlpha(*xP) / 255;
+ g += fraccoltofill * qGreen(*xP) * qAlpha(*xP) / 255;
+ b += fraccoltofill * qBlue(*xP) * qAlpha(*xP) / 255;
+ if (a) {
+ r = r * 255 / a * SCALE;
+ g = g * 255 / a * SCALE;
+ b = b * 255 / a * SCALE;
+ }
+ } else {
+ r += fraccoltofill * qRed(*xP);
+ g += fraccoltofill * qGreen(*xP);
+ b += fraccoltofill * qBlue(*xP);
+ }
+ }
+ if (nxP < nxPEnd) {
+ r /= SCALE;
+ if (r > maxval)
+ r = maxval;
+ g /= SCALE;
+ if (g > maxval)
+ g = maxval;
+ b /= SCALE;
+ if (b > maxval)
+ b = maxval;
+ if (as) {
+ a /= SCALE;
+ if (a > maxval)
+ a = maxval;
+ *nxP = qRgba((int)r, (int)g, (int)b, (int)a);
+ } else {
+ *nxP = qRgb((int)r, (int)g, (int)b);
+ }
+ while (++nxP != nxPEnd)
+ nxP[0] = nxP[-1];
+ }
+ }
}
- if ( d->newrows != d->rows && tempxelrow )// Robust, tempxelrow might be 0 1 day
- delete [] tempxelrow;
- if ( as ) // Avoid purify complaint
- delete [] as;
- if ( rs ) // Robust, rs might be 0 one day
- delete [] rs;
- if ( gs ) // Robust, gs might be 0 one day
- delete [] gs;
- if ( bs ) // Robust, bs might be 0 one day
- delete [] bs;
+ if (d->newrows != d->rows && tempxelrow)// Robust, tempxelrow might be 0 1 day
+ delete [] tempxelrow;
+ if (as) // Avoid purify complaint
+ delete [] as;
+ if (rs) // Robust, rs might be 0 one day
+ delete [] rs;
+ if (gs) // Robust, gs might be 0 one day
+ delete [] gs;
+ if (bs) // Robust, bs might be 0 one day
+ delete [] bs;
return dst;
}
diff --git a/src/plugins/imageformats/tiff/qtiffhandler.cpp b/src/plugins/imageformats/tiff/qtiffhandler.cpp
index 3669be7..9538745 100644
--- a/src/plugins/imageformats/tiff/qtiffhandler.cpp
+++ b/src/plugins/imageformats/tiff/qtiffhandler.cpp
@@ -192,7 +192,14 @@ bool QTiffHandler::read(QImage *image)
return false;
}
- if (photometric == PHOTOMETRIC_MINISBLACK || photometric == PHOTOMETRIC_MINISWHITE) {
+ uint16 bitPerSample;
+ if (!TIFFGetField(tiff, TIFFTAG_BITSPERSAMPLE, &bitPerSample)) {
+ TIFFClose(tiff);
+ return false;
+ }
+
+ bool grayscale = photometric == PHOTOMETRIC_MINISBLACK || photometric == PHOTOMETRIC_MINISWHITE;
+ if (grayscale && bitPerSample == 1) {
if (image->size() != QSize(width, height) || image->format() != QImage::Format_Mono)
*image = QImage(width, height, QImage::Format_Mono);
QVector<QRgb> colortable(2);
@@ -208,42 +215,43 @@ bool QTiffHandler::read(QImage *image)
if (!image->isNull()) {
for (uint32 y=0; y<height; ++y) {
if (TIFFReadScanline(tiff, image->scanLine(y), y, 0) < 0) {
- TIFFClose(tiff);
- return false;
+ TIFFClose(tiff);
+ return false;
}
}
}
} else {
- uint16 bitPerSample;
- if (!TIFFGetField(tiff, TIFFTAG_BITSPERSAMPLE, &bitPerSample)) {
- TIFFClose(tiff);
- return false;
- }
- if (photometric == PHOTOMETRIC_PALETTE && bitPerSample == 8) {
+ if ((grayscale || photometric == PHOTOMETRIC_PALETTE) && bitPerSample == 8) {
if (image->size() != QSize(width, height) || image->format() != QImage::Format_Indexed8)
*image = QImage(width, height, QImage::Format_Indexed8);
if (!image->isNull()) {
- // create the color table
const uint16 tableSize = 256;
- uint16 *redTable = static_cast<uint16 *>(qMalloc(tableSize * sizeof(uint16)));
- uint16 *greenTable = static_cast<uint16 *>(qMalloc(tableSize * sizeof(uint16)));
- uint16 *blueTable = static_cast<uint16 *>(qMalloc(tableSize * sizeof(uint16)));
- if (!redTable || !greenTable || !blueTable) {
- TIFFClose(tiff);
- return false;
- }
- if (!TIFFGetField(tiff, TIFFTAG_COLORMAP, &redTable, &greenTable, &blueTable)) {
- TIFFClose(tiff);
- return false;
- }
-
QVector<QRgb> qtColorTable(tableSize);
- for (int i = 0; i<tableSize ;++i) {
- const int red = redTable[i] / 257;
- const int green = greenTable[i] / 257;
- const int blue = blueTable[i] / 257;
- qtColorTable[i] = qRgb(red, green, blue);
+ if (grayscale) {
+ for (int i = 0; i<tableSize; ++i) {
+ const int c = (photometric == PHOTOMETRIC_MINISBLACK) ? i : (255 - i);
+ qtColorTable[i] = qRgb(c, c, c);
+ }
+ } else {
+ // create the color table
+ uint16 *redTable = static_cast<uint16 *>(qMalloc(tableSize * sizeof(uint16)));
+ uint16 *greenTable = static_cast<uint16 *>(qMalloc(tableSize * sizeof(uint16)));
+ uint16 *blueTable = static_cast<uint16 *>(qMalloc(tableSize * sizeof(uint16)));
+ if (!redTable || !greenTable || !blueTable) {
+ TIFFClose(tiff);
+ return false;
+ }
+ if (!TIFFGetField(tiff, TIFFTAG_COLORMAP, &redTable, &greenTable, &blueTable)) {
+ TIFFClose(tiff);
+ return false;
+ }
+ for (int i = 0; i<tableSize ;++i) {
+ const int red = redTable[i] / 257;
+ const int green = greenTable[i] / 257;
+ const int blue = blueTable[i] / 257;
+ qtColorTable[i] = qRgb(red, green, blue);
+ }
}
image->setColorTable(qtColorTable);
@@ -371,6 +379,20 @@ bool QTiffHandler::read(QImage *image)
return true;
}
+static bool checkGrayscale(const QVector<QRgb> &colorTable)
+{
+ if (colorTable.size() != 256)
+ return false;
+
+ const bool increasing = (colorTable.at(0) == 0xff000000);
+ for (int i = 0; i < 256; ++i) {
+ if (increasing && colorTable.at(i) != qRgb(i, i, i)
+ || !increasing && colorTable.at(i) != qRgb(255 - i, 255 - i, 255 - i))
+ return false;
+ }
+ return true;
+}
+
bool QTiffHandler::write(const QImage &image)
{
if (!device()->isWritable())
@@ -425,7 +447,8 @@ bool QTiffHandler::write(const QImage &image)
if (image.colorTable().at(0) == 0xffffffff)
photometric = PHOTOMETRIC_MINISWHITE;
if (!TIFFSetField(tiff, TIFFTAG_PHOTOMETRIC, photometric)
- || !TIFFSetField(tiff, TIFFTAG_COMPRESSION, compression == NoCompression ? COMPRESSION_NONE : COMPRESSION_CCITTRLE)) {
+ || !TIFFSetField(tiff, TIFFTAG_COMPRESSION, compression == NoCompression ? COMPRESSION_NONE : COMPRESSION_CCITTRLE)
+ || !TIFFSetField(tiff, TIFFTAG_BITSPERSAMPLE, 1)) {
TIFFClose(tiff);
return false;
}
@@ -450,43 +473,55 @@ bool QTiffHandler::write(const QImage &image)
}
TIFFClose(tiff);
} else if (format == QImage::Format_Indexed8) {
- if (!TIFFSetField(tiff, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_PALETTE)
- || !TIFFSetField(tiff, TIFFTAG_COMPRESSION, compression == NoCompression ? COMPRESSION_NONE : COMPRESSION_PACKBITS)
- || !TIFFSetField(tiff, TIFFTAG_BITSPERSAMPLE, 8)) {
- TIFFClose(tiff);
- return false;
- }
- //// write the color table
- // allocate the color tables
- uint16 *redTable = static_cast<uint16 *>(qMalloc(256 * sizeof(uint16)));
- uint16 *greenTable = static_cast<uint16 *>(qMalloc(256 * sizeof(uint16)));
- uint16 *blueTable = static_cast<uint16 *>(qMalloc(256 * sizeof(uint16)));
- if (!redTable || !greenTable || !blueTable) {
- TIFFClose(tiff);
- return false;
- }
-
- // set the color table
const QVector<QRgb> colorTable = image.colorTable();
+ bool isGrayscale = checkGrayscale(colorTable);
+ if (isGrayscale) {
+ uint16 photometric = PHOTOMETRIC_MINISBLACK;
+ if (image.colorTable().at(0) == 0xffffffff)
+ photometric = PHOTOMETRIC_MINISWHITE;
+ if (!TIFFSetField(tiff, TIFFTAG_PHOTOMETRIC, photometric)
+ || !TIFFSetField(tiff, TIFFTAG_COMPRESSION, compression == NoCompression ? COMPRESSION_NONE : COMPRESSION_PACKBITS)
+ || !TIFFSetField(tiff, TIFFTAG_BITSPERSAMPLE, 8)) {
+ TIFFClose(tiff);
+ return false;
+ }
+ } else {
+ if (!TIFFSetField(tiff, TIFFTAG_PHOTOMETRIC, PHOTOMETRIC_PALETTE)
+ || !TIFFSetField(tiff, TIFFTAG_COMPRESSION, compression == NoCompression ? COMPRESSION_NONE : COMPRESSION_PACKBITS)
+ || !TIFFSetField(tiff, TIFFTAG_BITSPERSAMPLE, 8)) {
+ TIFFClose(tiff);
+ return false;
+ }
+ //// write the color table
+ // allocate the color tables
+ uint16 *redTable = static_cast<uint16 *>(qMalloc(256 * sizeof(uint16)));
+ uint16 *greenTable = static_cast<uint16 *>(qMalloc(256 * sizeof(uint16)));
+ uint16 *blueTable = static_cast<uint16 *>(qMalloc(256 * sizeof(uint16)));
+ if (!redTable || !greenTable || !blueTable) {
+ TIFFClose(tiff);
+ return false;
+ }
- const int tableSize = colorTable.size();
- Q_ASSERT(tableSize <= 256);
- for (int i = 0; i<tableSize; ++i) {
- const QRgb color = colorTable.at(i);
- redTable[i] = qRed(color) * 257;
- greenTable[i] = qGreen(color) * 257;
- blueTable[i] = qBlue(color) * 257;
- }
+ // set the color table
+ const int tableSize = colorTable.size();
+ Q_ASSERT(tableSize <= 256);
+ for (int i = 0; i<tableSize; ++i) {
+ const QRgb color = colorTable.at(i);
+ redTable[i] = qRed(color) * 257;
+ greenTable[i] = qGreen(color) * 257;
+ blueTable[i] = qBlue(color) * 257;
+ }
- const bool setColorTableSuccess = TIFFSetField(tiff, TIFFTAG_COLORMAP, redTable, greenTable, blueTable);
+ const bool setColorTableSuccess = TIFFSetField(tiff, TIFFTAG_COLORMAP, redTable, greenTable, blueTable);
- qFree(redTable);
- qFree(greenTable);
- qFree(blueTable);
+ qFree(redTable);
+ qFree(greenTable);
+ qFree(blueTable);
- if (!setColorTableSuccess) {
- TIFFClose(tiff);
- return false;
+ if (!setColorTableSuccess) {
+ TIFFClose(tiff);
+ return false;
+ }
}
//// write the data
diff --git a/src/s60installs/bwins/QtCoreu.def b/src/s60installs/bwins/QtCoreu.def
index 146d47e..1218b75 100644
--- a/src/s60installs/bwins/QtCoreu.def
+++ b/src/s60installs/bwins/QtCoreu.def
@@ -4384,4 +4384,7 @@ EXPORTS
?staticMetaObject@QAbstractTableModel@@2UQMetaObject@@B @ 4383 NONAME ; struct QMetaObject const QAbstractTableModel::staticMetaObject
?staticMetaObject@QFile@@2UQMetaObject@@B @ 4384 NONAME ; struct QMetaObject const QFile::staticMetaObject
?staticMetaObject@QHistoryState@@2UQMetaObject@@B @ 4385 NONAME ; struct QMetaObject const QHistoryState::staticMetaObject
+ ?QBasicAtomicPointer_isFetchAndAddNative@@YA_NXZ @ 4386 NONAME ; bool QBasicAtomicPointer_isFetchAndAddNative(void)
+ ?QBasicAtomicPointer_isFetchAndStoreNative@@YA_NXZ @ 4387 NONAME ; bool QBasicAtomicPointer_isFetchAndStoreNative(void)
+ ?QBasicAtomicPointer_isTestAndSetNative@@YA_NXZ @ 4388 NONAME ; bool QBasicAtomicPointer_isTestAndSetNative(void)
diff --git a/src/s60installs/eabi/QtCoreu.def b/src/s60installs/eabi/QtCoreu.def
index faf8b1e..99be68e 100644
--- a/src/s60installs/eabi/QtCoreu.def
+++ b/src/s60installs/eabi/QtCoreu.def
@@ -13,7 +13,7 @@ EXPORTS
_Z11qt_int_sqrtj @ 12 NONAME
_Z12noforcepointR11QTextStream @ 13 NONAME
_Z12qSharedBuildv @ 14 NONAME
- _Z12q_atomic_swpPVcc @ 15 NONAME
+ _Z12q_atomic_swpPVcc @ 15 NONAME ABSENT
_Z12qt_s60GetRFsv @ 16 NONAME
_Z13lowercasebaseR11QTextStream @ 17 NONAME
_Z13qErrnoWarningPKcz @ 18 NONAME
@@ -24,7 +24,7 @@ EXPORTS
_Z15lowercasedigitsR11QTextStream @ 23 NONAME
_Z15qAddPostRoutinePFvvE @ 24 NONAME
_Z15qInitResourceIOv @ 25 NONAME
- _Z15qt_atomic_yieldPi @ 26 NONAME
+ _Z15qt_atomic_yieldPi @ 26 NONAME ABSENT
_Z15qt_error_stringi @ 27 NONAME
_Z15uppercasedigitsR11QTextStream @ 28 NONAME
_Z16qt_QString2HBufCRK7QString @ 29 NONAME
@@ -706,7 +706,7 @@ EXPORTS
_ZN15QAnimationGroupD0Ev @ 705 NONAME
_ZN15QAnimationGroupD1Ev @ 706 NONAME
_ZN15QAnimationGroupD2Ev @ 707 NONAME
- _ZN15QBasicAtomicInt20fetchAndStoreOrderedEi @ 708 NONAME
+ _ZN15QBasicAtomicInt20fetchAndStoreOrderedEi @ 708 NONAME ABSENT
_ZN15QDateTimeParser11parseFormatERK7QString @ 709 NONAME
_ZN15QLinkedListData11shared_nullE @ 710 NONAME DATA 20
_ZN15QObjectUserDataD0Ev @ 711 NONAME
@@ -3566,7 +3566,7 @@ EXPORTS
inflateSync @ 3565 NONAME
inflateSyncPoint @ 3566 NONAME
qMetaTypeGuiHelper @ 3567 NONAME DATA 4
- q_atomic_lock @ 3568 NONAME DATA 1
+ q_atomic_lock @ 3568 NONAME DATA 1 ABSENT
qt_addObject @ 3569 NONAME
qt_global_mutexpool @ 3570 NONAME DATA 4
qt_locale_initialized @ 3571 NONAME DATA 1
@@ -3612,4 +3612,11 @@ EXPORTS
_ZNK13QStateMachine10isAnimatedEv @ 3611 NONAME
_ZNK18QAbstractAnimation15currentLoopTimeEv @ 3612 NONAME
_ZNK7QRegExp12captureCountEv @ 3613 NONAME
+ _Z38QBasicAtomicPointer_isTestAndSetNativev @ 3614 NONAME
+ _Z39QBasicAtomicPointer_isFetchAndAddNativev @ 3615 NONAME
+ _Z41QBasicAtomicPointer_isFetchAndStoreNativev @ 3616 NONAME
+ _ZN15QBasicAtomicInt18isTestAndSetNativeEv @ 3617 NONAME
+ _ZN15QBasicAtomicInt19isFetchAndAddNativeEv @ 3618 NONAME
+ _ZN15QBasicAtomicInt21isFetchAndStoreNativeEv @ 3619 NONAME
+ _ZN15QBasicAtomicInt25isReferenceCountingNativeEv @ 3620 NONAME
diff --git a/src/svg/qsvgstyle.cpp b/src/svg/qsvgstyle.cpp
index f834016..57927fd 100644
--- a/src/svg/qsvgstyle.cpp
+++ b/src/svg/qsvgstyle.cpp
@@ -363,7 +363,10 @@ void QSvgStrokeStyle::apply(QPainter *p, const QRectF &, QSvgNode *, QSvgExtraSt
if (m_strokeMiterLimitSet)
pen.setMiterLimit(m_stroke.miterLimit());
- if (setDashOffsetNeeded) {
+ // You can have dash offset on solid strokes in SVG files, but not in Qt.
+ // QPen::setDashOffset() will set the pen style to Qt::CustomDashLine,
+ // so don't call the method if the pen is solid.
+ if (setDashOffsetNeeded && pen.style() != Qt::SolidLine) {
qreal currentWidth = pen.widthF();
if (currentWidth == 0)
currentWidth = 1;
diff --git a/src/xmlpatterns/data/qderivedinteger_p.h b/src/xmlpatterns/data/qderivedinteger_p.h
index 859e03d..19dc4c4 100644
--- a/src/xmlpatterns/data/qderivedinteger_p.h
+++ b/src/xmlpatterns/data/qderivedinteger_p.h
@@ -401,18 +401,18 @@ namespace QPatternist
{
return ValidationError::createError(QtXmlPatterns::tr(
"Value %1 of type %2 exceeds maximum (%3).")
- .arg(formatData(static_cast<xsInteger>(num)))
+ .arg(QPatternist::formatData(static_cast<xsInteger>(num)))
.arg(formatType(np, itemType()))
- .arg(formatData(static_cast<xsInteger>(maxInclusive))));
+ .arg(QPatternist::formatData(static_cast<xsInteger>(maxInclusive))));
}
else if((limitsUsage & LimitDownwards) &&
lessThan(num, minimum))
{
return ValidationError::createError(QtXmlPatterns::tr(
"Value %1 of type %2 is below minimum (%3).")
- .arg(formatData(static_cast<xsInteger>(num)))
+ .arg(QPatternist::formatData(static_cast<xsInteger>(num)))
.arg(formatType(np, itemType()))
- .arg(formatData(static_cast<xsInteger>(minInclusive))));
+ .arg(QPatternist::formatData(static_cast<xsInteger>(minInclusive))));
}
else
return AtomicValue::Ptr(new DerivedInteger(num));
diff --git a/src/xmlpatterns/functions/qcomparingaggregator.cpp b/src/xmlpatterns/functions/qcomparingaggregator.cpp
index 6d07109..acda08c 100644
--- a/src/xmlpatterns/functions/qcomparingaggregator.cpp
+++ b/src/xmlpatterns/functions/qcomparingaggregator.cpp
@@ -195,7 +195,7 @@ ComparingAggregator<oper, result>::typeCheck(const StaticContext::Ptr &context,
!BuiltinTypes::xsYearMonthDuration->xdtTypeMatches(t1))
{
context->error(QtXmlPatterns::tr("The first argument to %1 cannot be of type %2.")
- .arg(formatFunction(context->namePool(), signature()))
+ .arg(QPatternist::formatFunction(context->namePool(), signature()))
.arg(formatType(context->namePool(), m_operands.first()->staticType())),
ReportContext::FORG0006, this);
return me;