summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* 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-017-22/+54
| | | | | | | | | | | | 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-016-16/+121
| | | | | | | | | | 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
* 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.
* 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
* revert 3c2a43f91e0225bde8d6e6d6076dfe2cddbc2f8eArvid Ephraim Picciani2010-08-314-365/+6
| | | | | | 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-3111-99/+488
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * 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-276-5/+348
| |
| * 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
* | 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-3097-769/+721
|\ \ | |/ |/| | | | | | | | | 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-3018-94/+169
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-272-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-272-6/+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-279-72/+135
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-279-72/+135
| | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 ...
| | | | * Calling QPen::brush() on a Qt::NoPen pen, should return QBrush::NoBrush.Trond Kjernåsen2010-08-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This could cause some strange things to happen in our fallback code used for e.g. printing, since the brush might be valid and e.g. contain alpha values etc. Task-number: QTBUG-12263 Reviewed-by: Gunnar
| | | | * use QFile:map instead of ::mmapArvid Ephraim Picciani2010-08-261-43/+5
| | | | | | | | | | | | | | | | | | | | Reviewed-by: janarve
| | | | * Revert "Refactor blend_transformed_bilinear to simplify the blend type checking"Olivier Goffart2010-08-261-67/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d2089600ea247b5d6354e8eee4becf40802c4693. Reverting in order to avoid conflict in the master branch. We are going to consider backporting the changes to Qt 4.7.1 Reviewed-by: Benjamin Poulain
| | | | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-08-268-96/+196
| | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: 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.
| | | | | * Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into ↵Qt Continuous Integration System2010-08-258-96/+196
| | | | | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4.7-integration * '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: 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.
| | | | | | * Don't rely on mapFromGlobal in QGraphicsScenePrivate::itemsAtPosition.Bjørn Erik Nilsen2010-08-251-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The old approach discovered a bug in QWidget::mapToGlobal in the context of lighthouse, which in turn brought our eyes to QGraphicsScenePrivate::itemsAtPosition. The implementation itself was correct, but we can easily remove the-not-so-cheap mapToGlobal call since we already have the scene position, which is all we need. This functionality is heavily tested by existing auto tests, and all of them pass. Reviewed-by: mae
| | | | | | * Refactor blend_transformed_bilinear to simplify the blend type checkingBenjamin Poulain2010-08-251-66/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function blend_transformed_bilinear_argb() was checking the blend type at runtime for each pixel in order to clamp the coordinates. This code was duplicated in both branch of the function. This patch factorize the code by doing the clamping in a template function. Reviewed-by: Samuel Rødal
| | | | | | * Note RTL behavior changes in docs and changelogJiang Jiang2010-08-251-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Task-number: QT-3292 Reviewed-by: Lars Knoll
| | | | | | * Implement qt_memfill32 with Neon.Benjamin Poulain2010-08-253-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduce a implementation of qt_memfill32 with the Neon instructions set from ARMv7. The loop is unrolled 1 time to get better performance. This implementation of memfill is 330% faster on the N900. Reviewed-by: Samuel Rødal
| | | | | | * Implement the composition mode Plus with Neon.Benjamin Poulain2010-08-255-22/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the benchmark tst_QPainter::compositionModes(), this patches gives the following improvements: -300x300:opaque: 390% -300x300:!opaque: 1085% Reviewed-by: Samuel Rødal
| | | | | | * Fix the broken unicode detection of ODBC driver.Charles Yin2010-08-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the unicode flag is entirely overrided by mistake. Task-number:QTBUG-13109 Reviewed-by:Michael Goddard
| * | | | | | CleanupAaron Kennedy2010-08-273-13/+11
| | | | | | |
| * | | | | | Remove pointless \internal docs (that contain no information)Aaron Kennedy2010-08-272-38/+0
| | | | | | |
| * | | | | | Remove pointless \internal docs (that contain no information)Aaron Kennedy2010-08-2728-375/+4
| | | | | | |
| * | | | | | Internal QML API cleanupAaron Kennedy2010-08-275-108/+124
| |/ / / / /