summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit 'origin/4.6'Olivier Goffart2009-12-156-81/+71
|\ | | | | | | | | | | | | Conflicts: src/corelib/io/qfsfileengine.cpp src/network/access/qnetworkrequest.cpp tests/auto/qgraphicswidget/tst_qgraphicswidget.cpp
| * Fix crashes when deleting QWidgets and QGraphicsItems in touch event handlers.Bradley T. Hughes2009-12-111-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use QWeakPointer to bail out early if a widget is deleted while we are delivering/propagating a TouchBegin event. In QGraphicsScene, we need to make sure that we clear the scene's active touch points for items that are removed from the scene. This allows us to detect when an item is removed during TouchBegin event delivery/propagation. Unlike QWidget, propagation continues since we use a hit-test instead of the item's hierarchy for propagation. Task-number: QTBUG-6654 Reviewed-by: bnilsen
| * Merge commit 'origin/4.6' into 4.6-upstreamBradley T. Hughes2009-12-091-66/+46
| |\
| | * Cannot drag scrollbars in a QPlainTextEdit on Cocoa.Prasanth Ullattil2009-12-071-66/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QPlainTextEdit can change the scroll ranges while dragging the scrollbar. This will eventualy call QWidget::raise(), on Cocoa it was done by removing the NSView and adding it back. This causes problems like resetting internal state while a mouseDragged was active on the view. The fix we will now sort the views based on their Qt-z-order. lower() & stackUnder() also fixed like this. Reviewed-by: Denis
| * | Merge oslo-staging-2/4.6 into upstream/4.6Olivier Goffart2009-12-094-13/+17
| |\ \ | | |/ | |/|
| | * Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-12-081-1/+5
| | |\ | | | | | | | | | | | | 4.6-staging2
| | | * Minor fixes to softkey dimming support (commit 245c9cc0).Janne Anttila2009-12-081-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Qt invisible actions are disabled by default, and our "Options" softkey is set to invisible in order that it is not show in context menu. Thus we need don't want to dim in softkey even it is disabled. Additionally, QDialogButtonEnabledProxy need to set the initial enabled state for proxy action from button. Fixes bugs in commit: 245c9cc0 Reviewed-by: TrustMe
| | * | Doc: Explicitly mention that QWidget/QGraphicsItem takes ownership of effects.Bjørn Erik Nilsen2009-12-081-0/+2
| | | |
| | * | Fixed memory leaks when removing a QGraphicsEffect from a QGraphicsItem or ↵Yoann Lopes2009-12-073-11/+6
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QWidget with setGraphicsEffect(0). The effect was not deleted in that case, problem solved for both QGraphicsItem and QWidget. Autotest included. Task-number: QTBUG-5917 Reviewed-by: bnilsen
| | * Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-12-071-2/+5
| | |\ | | | | | | | | | | | | 4.6-staging2
| | | * Added dimming support for disabled softkeys in Symbian.Janne Anttila2009-12-071-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If QAction::setEnabled(false) is called, the CBA buttons are dimmed to have visual indication about disabled state. Since enabled/disabled state of buttons in QDialogButtonBox is controlled via QPushButton::setEnabled API, and because button box content in Symbian is mapped to sofkkeys we also need to have proxy for button enabled state to forward the information for underlying QAction. Reviewed-by: Sami Merila
| | | * Fixed "...QString::QString(const char *)... is deprecated" warning.Janne Anttila2009-12-031-1/+1
| | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-6290 Reviewed-by: TrustMe
* | | | QGuiEventDispatcherGlib::flush() does nothing despite documentationBradley T. Hughes2009-12-112-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | otherwise. The documentation for flush() is that it flushes the outgoing command queue on X11, but not when using Glib. Fix this by implementing flush() in the GUI Glib dispatcher. Task-number: QTBUG-3185
* | | | Don't react to X errors on displays that are not the Qt display.Bradley T. Hughes2009-12-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even though Qt doesn't support multiple displays, it is possible for people to have code that uses multiple displays (either by using Xlib directly or when integrating with another toolkit). Task-number: QTBUG-3337
* | | | Mac: add support for public.vcard UTI (DnD)Richard Moe Gustavsen2009-12-101-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | Added a QMacPasteboard converter for data dragged from the address book on Mac. It is an easy piece of code, and will make it easier for Mac people to work with standard Mac apps.
* | | | Cocoa: scrolling viewports containing many widgets is slowRichard Moe Gustavsen2009-12-091-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of the reasons is that [NSView resetCursorRects] is called for each view, also the ones not actually visible. And the function is slow. This patch does an early check, and bails out if this is the case. Reviewed-by: Prasanth
* | | | Fix performance issue with live resizeRichard Moe Gustavsen2009-12-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling [NSView addTrackingArea] is slow. So doing this for views that are not even visible on screen is unnecesary. This patch will greatly improve the speed for some (perhaps extreme) cases. Task-number: QT-1610 Reviewed-by: MortenS
* | | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qtSimon Hausmann2009-12-051-1/+1
|\ \ \ \ | |/ / /
| * | | Merge commit '33441e2a611f07207b0b942368aab9010cdf8ab1' of ↵Simon Hausmann2009-12-0510-304/+255
| |\ \ \ | | |/ / | |/| | | | | | oslo-staging-1/4.6 into 4.6
| * | | Merge commit 'c0b81480b2909b18ac15bdd124a562ae005c2f41' into origin-4.6Olivier Goffart2009-12-041-1/+1
| |\ \ \ | | | |/ | | |/|
| | * | Fixed softkey merging/traversing over window boundaries.Janne Anttila2009-12-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If current dialog implementation had parent and no softkeys set, the dialog got softkeys from parent. This commit changes the behaviour so that softkeys are not traversed over window boundaries. Also added autotest for the bug report. Task-number: QTBUG-6163 Reviewed-by: Jason Barron
* | | | Cocoa: amend dnd optimization: 067cab5afRichard Moe Gustavsen2009-12-041-10/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A couple of minutes after commiting 067cab5af, I realized I need to act a bit more nice to native NSViews that also might exist in the window: Let NSWindow handle the dnd drop if the view is not a QWidget (and not also if it is a QWidget, but not subscribing to dnd) Task-number: QT-1586
* | | | Cocoa: impl. performance boost for dndRichard Moe Gustavsen2009-12-047-65/+151
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It turns out that registering drag types for each NSView that can receive drop events is _really_ slow. And many widget in Qt subscribe for DnD (QTextEdit, QScrollArea, etc), so the result is an application that will spend startup time preparing for DnD. For some edge cases, we're talking several seconds! This patch removes this overhead by moving drag type registering out of NSView, and into NSWindow (that is, QCocoaWindow and QCocoaPanel). Task-number: QT-1586 Reviewed-by: Prasanth
* | | | Merge commit 'oslo-staging-1/4.6' into master-mainlineRichard Moe Gustavsen2009-12-0410-304/+255
|\ \ \ \ | | |_|/ | |/| |
| * | | Ensure the button state is correct when creating a QWheelEvent on Mac.Andy Shaw2009-12-032-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Mac when we receive a scrollWheel event on Carbon or Cocoa then we need to use QApplication::mouseButtons() in order to ensure the QWheelEvent has the right button states set. This is because the buttons state information is not passed in the native event at all. Reviewed-by: MortenS
| * | | Compile fix for mac after the merge.Denis Dzyubenko2009-12-031-0/+1
| | | | | | | | | | | | | | | | Reviewed-by: trustme
| * | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.6-staging1Denis Dzyubenko2009-12-0310-298/+286
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qcocoapanel_mac.mm src/gui/kernel/qcocoawindow_mac.mm
| | * | | Cocoa: refactor common code into a shared fileRichard Moe Gustavsen2009-12-036-277/+195
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QCocoaWindow and QCocoaPanel has many methods that are implemented _exactly_ the same way. Those methods are just copied/pasted between the classes because of inheritance problems. This is error-prone as bugs tends to be fixed inside one of the classes, but easily forgotten in the other class. This patch refactors out this code into a new file that is simply #included from the two classes. We do this fix for a patch release to ease a couple of fixes that is about to be integrated. Reviewed-by: Prasanth Reviewed-by: Denis
| * | | Improved mouse wheel event delivery on Mac.Denis Dzyubenko2009-12-031-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When a popup is open we should not deliver wheel events to widget outside of the popup - native Cocoa applications don't do that. Reviewed-by: Richard
| * | | Do not emulate mouse event out of touch pad eventsDenis Dzyubenko2009-12-021-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the touch event comes from a touchpad it doesn't seem necessary to send fake mouse events. At least on the platform that actually supports touchpad events (i.e. Mac) native apps don't do that and the current implementation breaks popup handling - since touch events are only sent by default if two or more fingers touch the touchpad, we send fake MouseButtonPress when second finger is pressed and MouseButtonRelease when the second finger is released - i.e. at the same time when the system send scrollWheel events. This causes the active popup to close when using two-finger scroll gesture. Reviewed-by: Brad
| * | | Improved implicit mouse grabbing on Cocoa.Denis Dzyubenko2009-12-024-42/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This improves 106121a74bca32a6411b9ca968ee415f8bdfbff1 which was incomplete and didn't work properly for comboboxes (or in general - when a popup window opens due to a mouse press). Reviewed-by: Prasanth
* | | | Merge branch '4.6'Thiago Macieira2009-12-026-50/+141
|\ \ \ \ | | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.h src/gui/dialogs/qfiledialog_win.cpp src/plugins/qpluginbase.pri src/qbase.pri tests/auto/selftests/expected_cmptest.txt tests/auto/selftests/expected_crashes_3.txt tests/auto/selftests/expected_longstring.txt tests/auto/selftests/expected_maxwarnings.txt tests/auto/selftests/expected_skip.txt tools/assistant/tools/assistant/doc/assistant.qdocconf tools/qdoc3/test/assistant.qdocconf tools/qdoc3/test/designer.qdocconf tools/qdoc3/test/linguist.qdocconf tools/qdoc3/test/qmake.qdocconf tools/qdoc3/test/qt-build-docs.qdocconf tools/qdoc3/test/qt.qdocconf
| * | | Merge commit 'upstream/4.6' into 4.6Bradley T. Hughes2009-12-024-10/+87
| |\ \ \ | | |/ / | |/| / | | |/
| | * Clarify the docs a bit when setting focus.axis2009-12-011-2/+8
| | | | | | | | | | | | RevBy: Trust me
| | * Merge branch 'mmfphonon' into 4.6Gareth Stockwell2009-11-303-8/+79
| | |\
| | | * Symbian control invokes slots before and after native draw opsGareth Stockwell2009-11-263-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Direct Screen Access (DSA) allows a client to request notification from the window server when drawing is performed by other threads, into a specified region of the screen. This allows DSA rendering - for example video - to be suspended when notifications are drawn, preventing the video content from overwriting the notification. If the drawing originates from the same thread as that which holds the DSA session, DSA must be suspended while drawing takes place. This change allows a widget to request notification when native drawing is about to be performed by QSymbianControl::Draw. Task-number: QTBUG-5467 Reviewed-by: Jason Barron
| | | * Allow Symbian widget implementations to select native paint modeGareth Stockwell2009-11-263-8/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the Symbian platform, the Qt raster paint engine targets an off-screen buffer owned by the Font & Bitmap server (FBSERV). When an area of the screen needs to be refreshed, the window server (WSERV) asks the control environment (CONE) to redraw the control(s) intersecting that screen region. Each Qt native widget has an associated Symbian control, whose Draw function blits the required region of the backing store via WSERV. Use cases involving Direct Screen Access (DSA) may require this behaviour to be modified, to either of the following: - Disable: the Draw function does nothing. In this case, the output of paint events, rendered to the backing store, is not blitted to the screen. This mode was introduced by change 8f445e13. - Zero fill: the Draw function fills all pixels within the redraw region with zeroes. This change allows the widget implementation to select either of these alternative modes by setting a flag in its QWExtra structure. Note that these alternative modes are only suitable for native widgets, because they act on a per-control rather than per-widget basis. Task-number: QTBUG-5467 Reviewed-by: Jason Barron
| * | | Creator crashes when reloading externally modified .ui files on MacPrasanth Ullattil2009-12-011-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Mac QWidget::destroy() sends an AcceptDropsChange event after clearing the guards for QPointer. This was used to store a QPointer to the widget being deleted & that will never be cleared. The fix removed the setAcceptDrops() from destroy. And as an extra protection make sure designer will not treat that event as interesting. Task-number: QTCREATORBUG-307 Reviewed-by: Denis Dzyubenko Reviewed-by: Friedemann Kleint
| * | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt into 4.6Simon Hausmann2009-11-292-36/+50
| |\ \ \ | | |/ /
| | * | Merge commit oslo-staging-2/4.6 into upstream/4.6Olivier Goffart2009-11-272-36/+50
| | |\ \
| | | * \ Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵axis2009-11-262-36/+50
| | | |\ \ | | | | | | | | | | | | | | | | | | 4.6-staging2
| | | | * | Fixes for tab/space usage in qwidget.cpp.Janne Anttila2009-11-251-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | Reviewed-by: TrustMe
| | | | * | Fix crash in QApplication::beep() on S60Shane Kearns2009-11-251-21/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using an asynchronous API synchronously caused a crash, because the data structure was deleted while an async request is still pending. Depending on the multimedia implementation on the phone, the crash will happen or you just get no sound (or it can even work if the underlying implementation is blocking). Solution is to use the API asynchronously, and delete the handling object in qt_cleanup. Also raised the tone by one octave to be more similar to the system beep. Task-number: QTBUG-6170 Reviewed-by: Janne Anttila Reviewed-by: Miikka Heikkinen
| * | | | | Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt into 4.6Simon Hausmann2009-11-272-19/+6
| |\ \ \ \ \ | | |/ / / /
| * | | | | On Mac OS X, QLineEdit should handle MoveToStart/EndOfBlockBenjamin Poulain2009-11-261-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Mac OS X, with a QLineEdit, QKeySequence::MoveToStartOfBlock should move the cursor to the beginning of the input, and QKeySequence::MoveToEndOfBlock to the end of the block Same for selection. The shortcuts also had to be updated. Task-number: QTBUG-4679 Reviewed-by: Olivier Goffart
* | | | | | fix QKeySequence::fromStringChani Armitage2009-12-022-12/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | now emacs-style shortcuts are parsed correctly, like in the constructor, and they share the code too. Merge-request: 1279 Reviewed-by: Leonardo Sobral Cunha <leo.cunha@nokia.com>
* | | | | | Revert back to using the native graphics system on Mac.Morten Johan Sørvig2009-12-021-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The issues with raster are currently to visible and is preventing us from doing other work on Qt.
* | | | | | Merge branch '4.6'Thiago Macieira2009-11-2526-241/+360
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/src/modules.qdoc examples/assistant/simpletextviewer/findfiledialog.cpp examples/webkit/fancybrowser/mainwindow.cpp src/gui/widgets/qtabbar.cpp src/gui/widgets/qtabbar_p.h tests/auto/qpixmap/tst_qpixmap.cpp tools/assistant/compat/helpdialog.cpp tools/assistant/compat/tabbedbrowser.cpp translations/translations.pri
| * | | | | Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6David Boddie2009-11-252-19/+6
| |\ \ \ \ \ | | |/ / / / | |/| / / / | | |/ / /
| | * | | Merge commit 'oslo-staging-2/4.6' into upstream/4.6Olivier Goffart2009-11-252-19/+6
| | |\ \ \ | | | |/ /