summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix IPv6 multicast on UNIXBradley T. Hughes2010-09-011-3/+10
| | | | | The setsockopt() to join/leave a group should change level depending on the type of socket/address being used (and not always use IPPROTO_IP).
* Test IPv6 multicastBradley T. Hughes2010-09-011-25/+51
| | | | | | | Add test data to the multicast tests to bind to ipv6 addresses and to join an ipv6 group. Often, bind() results are unintersting (since we are only looking to initialize the socket) and proxies don't support IPv6 (so we have to expect failures in some cases).
* Add QUdpSocket::setMulticastInterface() and ::multicastInterface()Bradley T. Hughes2010-09-0112-11/+313
| | | | | | | | | This API allows the programmer to set/query the outgoing interface for multicast packets for the socket. Both functions need an initialized socket to work. Autotest updated to test setting each interface in the system as the multicast interface for IPv4 and IPv6 UDP sockets.
* Improve multicast testBradley T. Hughes2010-09-011-62/+164
| | | | | | | Split out the individual socket option tests, and add more test data to these. Move the state checks into their own separate tests, and verify behavior of QUdpSocket multicast in the presence of a proxy (instead of just skipping the test).
* add images for multicastsender and multicastreceiver examplesBradley T. Hughes2010-09-012-0/+0
|
* Add a spinbox to the multicastsender example to change the datagram's TTLBradley T. Hughes2010-09-012-1/+21
|
* Add multicastsender and multicastreceiver examplesBradley T. Hughes2010-09-0114-6/+535
| | | | | | These are clones of the broadcastsender and broadcastreceiver examples, modified to use the multicast API. I've made sure that the examples are linked in the appropriate places as well.
* Update QUdpSocket's overview docs to include multicast referencesBradley T. Hughes2010-09-011-0/+6
| | | | | | The API is very small, joinMulticastGroup(), leaveMulticastGroup(), and the two QAbstractSocket socket options, MulticastTtlOption and MulticastLoopbackOption.
* Initial documentation for multicast socket options and APIBradley T. Hughes2010-09-012-4/+36
|
* Rename doMulticast() to multicastMembershipHelper()Bradley T. Hughes2010-09-012-34/+34
| | | | This is a simple rename done for clarity.
* Don't use WSAIoctl() to get/set the multicast socket optionsBradley T. Hughes2010-09-011-26/+12
| | | | | According to the MSDN docs, we can just use setsockopt() and getsockopt() like we do on UNIX, even if we are using Winsock2.
* Add MulticastTtlOption and MulticastLoopbackOption to QAbstractSocketBradley T. Hughes2010-09-018-24/+68
| | | | | | | | | | | | These options only make sense and work in QUdpSocket when using multicasting. Previously, the loopback was set when joining a multicast group, but the loopback flag is not a per-group flag, it's per socket, hence this change. The ability to set the multicast TTL is needed as well, so this is added as a socket option as well. Autotest updated to test both.
* Implement UDP multicast on WindowsBradley T. Hughes2010-09-017-18/+125
| | | | | | | | | | The code is very similar to the UNIX version, but not identical. It appears the Microsoft compiler does not like the "interface" variable name, so they have been renamed. The autotest had a bug in it that I failed to notice before. The sender was not sending to the multicast group, it was sending to the local address of the receiver (which fails on Windows).
* Remove support for single-source multi-castBradley T. Hughes2010-09-0110-80/+25
| | | | | It's not supported everywhere, so remove it for now until the need to re-add it arises.
* Make ASM work on systems without SSM supportBradley T. Hughes2010-09-011-1/+1
| | | | | | | QHostAddress::Null and QHostAddress::Any are not the same, and we use QHostAddress::Any to signify that we want any-source behavior in QUdpSocket::joinMulticastGroup(). Any means we should skip the single- support SSM, like Mac OS X).
* Set multicast errors correctlyBradley T. Hughes2010-09-011-2/+4
| | | | | | | | If the system does not support SSM, but the source address is specified, the error is unsupported socket operation, not unsupported protocol. if setsockopt() returns an error we don't know about, set the error code/string to unknown error
* Don't crash when trying to join/leave a group with not boundBradley T. Hughes2010-09-011-0/+2
| | | | | d->socketEngine will be zero, which crashes. avoid this by returning if the socket is not in the BoundState
* Improved auto-test for multicast support in QUdpSocketBradley T. Hughes2010-09-011-24/+49
| | | | | | | | | In particular: - test that leaving the group "works" (returns true, still unsure if the test should verify that the socket no longer gets packets) - joining a group is not possible before binding - leaving a group without being bound is not possible
* Compile on systems without IP_ADD_SOURCE_MEMBERSHIP supportBradley T. Hughes2010-09-011-0/+18
| | | | | If a system does not support SSM (e.g. Mac OS X does not), then requesting a specific sender results in a socket error.
* add an autotest for basic multicast supportBradley T. Hughes2010-09-011-0/+38
|
* Implement multicast for the native socket engine on UNIXBradley T. Hughes2010-09-013-0/+160
| | | | | | According to the Stevens book, the socket must be in the bound state to be able to join the group, so we check for the same condition. We support ASM and SSM (for IPv4). Windows implementation TBD.
* Implementation of multicast API for the HTTP and SOCKS5 enginesBradley T. Hughes2010-09-014-0/+50
| | | | | We don't support multicast via proxy, so these function just return false.
* Implement QUdpSocket::joinMulticastGroup() and leaveMulticastGroup()Bradley T. Hughes2010-09-012-1/+53
| | | | | | This is actually just done in the socket engine, so we need to add the API for setting the loopback socket option and joining/leaving the group. Implementation for the various engines will follow.
* Add QUdpSocket::joinMulticastGroup() and leaveMulticastGroup()Bradley T. Hughes2010-09-011-0/+18
| | | | | Each function takes a groupAddress and optional source address, network interface, and flags.
* Align icon positions when using TextUnderIcon for tool buttonsJens Bache-Wiig2010-09-011-3/+0
| | | | | | | | | The widget would explicitly ignore the TextUnderIcon flag if no text was set. This is wrong because it should be up to the style to decide such details and the end result are unaligned icons by default. Task-number: QTBUG-3715 Reviewed-by: richard
* Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-08-319-94/+126
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2: revert 3c2a43f91e0225bde8d6e6d6076dfe2cddbc2f8e Fix compilation on mac. Doc update: Mention the Qt::AA_X11InitThreads application attribute. Fix incorrect include order Add missing QT_BEGIN_NAMESPACE Fix crash introduced with d34287af6fc1c7558e8ed15dbb29c0e6b58b7b00 find .rodata in qt plugins to optimize loading of plugins with no qt section fix missing include Optimize plugin loading on ELF platforms use QFile:map instead of ::mmap QAbstractItemView: optimize handling of editors for view with large numbers of editors.
| * revert 3c2a43f91e0225bde8d6e6d6076dfe2cddbc2f8eArvid Ephraim Picciani2010-08-3115-464/+7
| | | | | | | | | | | | to pass CI again after mystical failure Reviewed-by: Olivier Goffart
| * Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-08-3123-100/+589
| |\ |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Fix compilation on mac. Doc update: Mention the Qt::AA_X11InitThreads application attribute. Fix incorrect include order Add missing QT_BEGIN_NAMESPACE Fix crash introduced with d34287af6fc1c7558e8ed15dbb29c0e6b58b7b00 find .rodata in qt plugins to optimize loading of plugins with no qt section fix missing include Optimize plugin loading on ELF platforms use QFile:map instead of ::mmap QAbstractItemView: optimize handling of editors for view with large numbers of editors.
| * Fix compilation on mac.Olivier Goffart2010-08-301-2/+2
| | | | | | | | Commit d34287af6fc1c forgot to update this platform dependent code.
| * Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-08-3023-141/+592
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | master-integration * 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Doc update: Mention the Qt::AA_X11InitThreads application attribute. Fix incorrect include order Add missing QT_BEGIN_NAMESPACE Fix crash introduced with d34287af6fc1c7558e8ed15dbb29c0e6b58b7b00 find .rodata in qt plugins to optimize loading of plugins with no qt section fix missing include Optimize plugin loading on ELF platforms use QFile:map instead of ::mmap QAbstractItemView: optimize handling of editors for view with large numbers of editors.
| | * Doc update: Mention the Qt::AA_X11InitThreads application attribute.Trond Kjernåsen2010-08-301-6/+10
| | | | | | | | | | | | | | | You need to know this if you're going to make threaded GL apps under X11.
| | * Fix incorrect include orderArvid Ephraim Picciani2010-08-302-2/+4
| | | | | | | | | | | | Reviewed-by: Olivier Goffart
| | * Add missing QT_BEGIN_NAMESPACEArvid Ephraim Picciani2010-08-302-0/+26
| | | | | | | | | | | | Reviewed-by: Olivier Goffart
| | * Fix crash introduced with d34287af6fc1c7558e8ed15dbb29c0e6b58b7b00Olivier Goffart2010-08-301-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Crash occured in tst_QTreeWidget::task253109_itemHeight When we use loop over editorIndexHash, we cannot garantee that the key is still a valid valid pointer, we need to confirm it with the QWeakPointer in indexEditorHash Reviewed-by: Gabriel
| | * find .rodata in qt plugins to optimize loading of plugins with no qt sectionArvid Ephraim Picciani2010-08-304-37/+41
| | | | | | | | | | | | Reviewed-by: janarve
| | * fix missing includeArvid Ephraim Picciani2010-08-301-0/+1
| | |
| | * Optimize plugin loading on ELF platformsArvid Ephraim Picciani2010-08-2718-6/+449
| | |
| | * use QFile:map instead of ::mmapArvid Ephraim Picciani2010-08-271-43/+5
| | | | | | | | | | | | Reviewed-by: janarve
| | * QAbstractItemView: optimize handling of editors for view with large numbers ↵Stephen Bowline2010-08-274-82/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of editors. This change improves algorithmic time complexity for item views during operations which directly (or indirectly such as layout) require bi-directional lookups between model indices and persistent editor widgets. The previous implementation scaled as O(n^2) due to the unordered search through a QVector. Implementations that use large numbers of persistent editors are most dramatically improved. In one "real world" test case with 648 persistent editors, profiling indicates an improvement of layout from 45 seconds to 8 seconds with this change alone. Reviewed-by: Olivier Goffart Merge-Request: 2452
* | | Merge branch 'qt-master-from-4.7' of ↵Qt Continuous Integration System2010-08-30187-950/+5238
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | scm.dev.nokia.troll.no:qt/qt-integration into master-integration * 'qt-master-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration: (474 commits) Different version from the previous patch: use QElapsedTimer Compilation after merge. Correct last right bearing in boundingBox(glyphs) Make sure propagated font in QGraphicsWidget can be set on a QPainter Apparently QPen::brush() can't return a NoBrush for a NoPen. Updated some URLs and required tools versions for Symbian Cleanup Remove pointless \internal docs (that contain no information) Remove pointless \internal docs (that contain no information) Internal QML API cleanup Update example screenshot in doc. Add a test for the QPen::brush() != Qt::NoBrush for a Qt::NoPen pen. Calling QPen::brush() on a Qt::NoPen pen, should return QBrush::NoBrush. use QFile:map instead of ::mmap Added support for DEPLOYMENT.pkg_build_version Do not use global static const references to objects Autotest: don't use Q_FUNC_INFO for testing which method got called fix for memory leak in QSysInfo::s60Version() fix generated makefile dependencies Cocoa: Demo browser can get stuck after closing modal dialog ...
| * | Different version from the previous patch: use QElapsedTimerThiago Macieira2010-08-301-2/+3
| | | | | | | | | | | | Reviewed-By: Olivier Goffart
| * | Compilation after merge.Olivier Goffart2010-08-301-0/+1
| | | | | | | | | | | | | | | a55f392edc2145a071d0d59cb0fc69b0d5205a76 removed include that was required by new code in master
| * | Merge remote branch 'origin/4.7' into qt-master-from-4.7Olivier Goffart2010-08-30186-949/+5235
| |\ \ | | |/ | |/| | | | | | | | | | | | | Conflicts: qmake/generators/win32/msbuild_objectmodel.cpp qmake/generators/win32/msvc_vcxproj.cpp tests/auto/qnetworkreply/tst_qnetworkreply.cpp
| | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-08-3023-102/+381
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (377 commits) Correct last right bearing in boundingBox(glyphs) Make sure propagated font in QGraphicsWidget can be set on a QPainter Apparently QPen::brush() can't return a NoBrush for a NoPen. Add a test for the QPen::brush() != Qt::NoBrush for a Qt::NoPen pen. Calling QPen::brush() on a Qt::NoPen pen, should return QBrush::NoBrush. use QFile:map instead of ::mmap Do not use global static const references to objects Revert "Refactor blend_transformed_bilinear to simplify the blend type checking" Don't rely on mapFromGlobal in QGraphicsScenePrivate::itemsAtPosition. Refactor blend_transformed_bilinear to simplify the blend type checking Note RTL behavior changes in docs and changelog Implement qt_memfill32 with Neon. Implement the composition mode Plus with Neon. Fix the broken unicode detection of ODBC driver. Doc: Fixed qdoc warnings. Doc: updating getting started docs - not finished Make it possible again to build Qt without webkit Doc: fixing creator bugs, removing menus and textbox in the header Fixing qdoc index file...Commit hack to work around the massive amounts of dependencies in the upstream branch. Doc: Fixing overlapping text in header list ...
| | | * Correct last right bearing in boundingBox(glyphs)Jiang Jiang2010-08-277-17/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 07880542ecc479807c23c5646d263135240822ff introduced regression to QFontMetrics::boundingRect and QTextEngine::boundingBox on FT, XLFD and QPF font engine. Because on these platforms, rightBearing of the last glyphs is already removed from the width returned in glyph_metrics_t. Subtracting that rightBearing twice will cause the resulting boundingBox smaller than expected. This patch fix this by removing last right bearing accounting code from generic QTextEngine::boundingBox, instead, we put it into font engines that need them: QFontEngineWin, QCoreTextFontEngine, QFontEngineMac, QFontEngineS60 and QFontEngineQWS. So that the resulting width should be correct on all platforms without introducing any performance penalties. Task-number: QTBUG-6854, QTBUG-12950 Reviewed-by: Eskil
| | | * Make sure propagated font in QGraphicsWidget can be set on a QPainterEskil Abrahamsen Blomfeldt2010-08-273-2/+200
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In QWidget and QGraphicsWidget, propagating fonts blank out the resolve mask, mainly to help in determining inheritance. This means that when the font is set on a QPainter with device and therefore resolved against the device font, none of the attributes in the font will take presedence and the font will essentially just be ignored. For QWidgets this has not been a problem due to the fact that the painter is opened on the widget, getting the propagated font as its device font. For QGraphicsWidget, however, the QPainter is opened on the viewport and the viewport's font will therefore override the propagated font when it's passed into setFont(). To fix this, we need the font returned by QGraphicsWidget::font() to contain the resolve mask of the inherited parts of its font as well. This is done last minute to avoid messing up the rules of inheritance in the QGraphicsWidget tree (problem arises e.g. in hierarchy A -> B -> C and a font is set on B which should override the font C has previously inherited from A.) Task-number: QTBUG-13188 Reviewed-by: Lars
| | | * Apparently QPen::brush() can't return a NoBrush for a NoPen.Trond Kjernåsen2010-08-273-14/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are explicit tests in qdatastream for this. IMO it's wrong, wrong, wrong, but it's currently abused in the SVG module so we can't change it. Reviewed-by: Gunnar
| | | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-08-2713-78/+160
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (374 commits) Add a test for the QPen::brush() != Qt::NoBrush for a Qt::NoPen pen. Calling QPen::brush() on a Qt::NoPen pen, should return QBrush::NoBrush. use QFile:map instead of ::mmap Do not use global static const references to objects Revert "Refactor blend_transformed_bilinear to simplify the blend type checking" Don't rely on mapFromGlobal in QGraphicsScenePrivate::itemsAtPosition. Refactor blend_transformed_bilinear to simplify the blend type checking Note RTL behavior changes in docs and changelog Implement qt_memfill32 with Neon. Implement the composition mode Plus with Neon. Fix the broken unicode detection of ODBC driver. Doc: Fixed qdoc warnings. Doc: updating getting started docs - not finished Make it possible again to build Qt without webkit Doc: fixing creator bugs, removing menus and textbox in the header Fixing qdoc index file...Commit hack to work around the massive amounts of dependencies in the upstream branch. Doc: Fixing overlapping text in header list Use Ctrl rather than Alt for switching tabs in the demo browser Doc: add link to new gettings started to index.html Doc: Fixing bug involving header misplacement in Creator style ...
| | | | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-08-2713-78/+160
| | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: (374 commits) Add a test for the QPen::brush() != Qt::NoBrush for a Qt::NoPen pen. Calling QPen::brush() on a Qt::NoPen pen, should return QBrush::NoBrush. use QFile:map instead of ::mmap Do not use global static const references to objects Revert "Refactor blend_transformed_bilinear to simplify the blend type checking" Don't rely on mapFromGlobal in QGraphicsScenePrivate::itemsAtPosition. Refactor blend_transformed_bilinear to simplify the blend type checking Note RTL behavior changes in docs and changelog Implement qt_memfill32 with Neon. Implement the composition mode Plus with Neon. Fix the broken unicode detection of ODBC driver. Doc: Fixed qdoc warnings. Doc: updating getting started docs - not finished Make it possible again to build Qt without webkit Doc: fixing creator bugs, removing menus and textbox in the header Fixing qdoc index file...Commit hack to work around the massive amounts of dependencies in the upstream branch. Doc: Fixing overlapping text in header list Use Ctrl rather than Alt for switching tabs in the demo browser Doc: add link to new gettings started to index.html Doc: Fixing bug involving header misplacement in Creator style ...
| | | | | * Add a test for the QPen::brush() != Qt::NoBrush for a Qt::NoPen pen.Trond Kjernåsen2010-08-261-0/+7
| | | | | |