summaryrefslogtreecommitdiffstats
path: root/src/widgets
Commit message (Collapse)AuthorAgeFilesLines
* Improve Accessibility documentation.Frederik Gladhorn2012-01-091-0/+2
| | | | | Change-Id: Ifb70d9c6d7b3096e0188e8454191786375296647 Reviewed-by: Geir Vattekar <geir.vattekar@nokia.com>
* Remove unused touch-related code in QApplicationPrivate headerLaszlo Agocs2012-01-091-156/+0
| | | | | | | | | For X11 and Windows the touch handling code lives in the platform plug-ins. The RX71 code is replaced by the generic evdev touch support provided by the touchscreen plug-in. Change-Id: I12c9fd3be8b466565cac7abebbb70805f1e28b5f Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove docs for removed functions.Frederik Gladhorn2012-01-092-147/+0
| | | | | Change-Id: I33346d0a2b324afe4b85b1792854b586aa7685ba Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Remove the Q_TYPENAME define.Stephen Kelly2012-01-082-4/+4
| | | | | | | | | | | | | It is mostly not used (most places in Qt use typename directly), so is already not very useful. For example typename is used in: QDataStream& operator<<(QDataStream& s, const QVector<T>& v) Change-Id: I85337ad7d8d4ebbb424bfa2ab9a356456ff3e90f Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
* Move keyboard locale and input direction to QInputPanelPekka Vuorela2012-01-071-1/+2
| | | | | | | | | | Deprecated QGuiApplication::keyboardInputLocale() and keyboardInputDirection(), introduced QInputPanel::locale() and inputDirection(). Change-Id: Ic48c77f10821a949751c73c73f22bd78e2192b9c Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Remove all references to QAccessible:: {Child|Ancestor|Sibling}Jan-Arve Saether2012-01-061-134/+0
| | | | | | | | | | | These are deprecated in favor of QAccessibleInterface::child() and QAccessibleInterface::parent() QAccessible::Sibling can be done with a combination of those two. This is handled by the bridges, if required. Change-Id: I2e2a6eb2a982e7c9001a393d69f0c5f1ae9c0970 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Add roles to the dataChanged slots in views.Stephen Kelly2012-01-068-14/+14
| | | | | | | | | | | | | | | | This is a source incompatible change. This is for consistency with the signal for the lifetime of Qt5. I could imagine people trying to override a virtual function (in a new class while using the Qt5 library) with the arguments of the signal and have that fail due to the arguments not being correct. It also allows ignoring dataChange events when they are known not to be for roles which are relevant to particular views or delegates. Change-Id: Ica191835125c1c8fdaf665debb62d635e81700dc Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix documentation.Frederik Gladhorn2012-01-062-40/+0
| | | | | Change-Id: Id54263f408e29ed3b9d06712e39759485a42b869 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Remove qdoc for code that no longer exists.Frederik Gladhorn2012-01-063-201/+0
| | | | | Change-Id: I82d4ba930335a03181aa20c9e4cb060ca8b35b9a Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Remove docs for functions that no longer exist.Frederik Gladhorn2012-01-061-382/+0
| | | | | Change-Id: Id79d3eeab85b156348054c727ea1897ac3e5842b Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* Add the roles to the dataChanged slot.Stephen Kelly2012-01-062-7/+7
| | | | | | | | This will allow the possibility of ignoring dataChange signals for roles which are not interesting to particular widgets. Change-Id: Ia7dcebd875f7b9fa90aa5e9bff7ef5ca9f381d55 Reviewed-by: David Faure <faure@kde.org>
* Removed QApplication::setInputContext()Pekka Vuorela2012-01-054-15/+16
| | | | | | | | Obsoleted by platform input context. Setting a custom QInputContext wouldn't work properly anymore. Change-Id: I966573a82fdd7530544878513a655eae7b3ad67b Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Removed Qt::ImhMultiLinePekka Vuorela2012-01-051-1/+0
| | | | | | | | | | | Multi line information does not really work that well as input method hint. Application developer is the one setting value for the hint, and thus would be responsible for always having right value for multi line. Change-Id: I6102be95549f6f6d4da40845f52d5c873cd46a47 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Avoid redefining the lastWindowClosed() signal.Robin Burchell2012-01-051-1/+0
| | | | | | | | This prevents things like the following (from qmlviewer): QMetaObject::indexOfSignal: signal lastWindowClosed() from QGuiApplication redefined in QApplication Change-Id: I4b30235e379aedaa913ea30f05daac7079f285e9 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-05522-523/+523
| | | | | Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* QApplication: Remove unused variable causing a compiler warning.Friedemann Kleint2012-01-051-3/+0
| | | | | Change-Id: I418ac16a2b3e119569512e38d3f00fb493b769d1 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Refactor QVariant handlers.Jędrzej Nowacki2012-01-041-10/+17
| | | | | | | | | | | | | | | | | | | | | | | | | QVariant implementation is based on delegation to a handler. The handler has rather simple construction, it is a set of function that implements a switch statement over known types and redirects calls to a right method of an encapsulated types instance. Unfortunately after qt modularization project, it is not easy to use types directly from different modules, as they can be undefined or completely unaccessible. Which means that each module has to implement own handler to cooperate correctly with QVariant. We can suspect that list of modules known to QVariant will grow and it is not limited to GUI, Widgets and Core, therefore it would be nice to have an unified, from performance and source code point of view, way of working with handlers. This patch is an attempt to cleanup handlers. Keynotes: - Each handler is working only on types defined in the same module - Core handler implements handling of primitive types too - Custom types have an own handler - Each handler is independent which means that dispatch between handlers is done on QVariant level - Handlers might be registered / unregistered using same interface Change-Id: Ib096df65e2c4ce464bc7a684aade5af7d1264c24 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* QLineEdit to use Qt::ImhSensitiveData input hint on password echo modesPekka Vuorela2012-01-031-2/+2
| | | | | Change-Id: I6922e41e7e57563f1190f46e0890b71e5c4b7ef4 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Send ApplicationActivate and ApplicationDeactivate from QtGui.Samuel Rødal2012-01-021-14/+0
| | | | | | | | | | Instead of only from QApplication in QtWidgets, as we need these events for example in QDeclarativeApplication. Task-number: QTBUG-21573 Task-number: QTBUG-23331 Change-Id: I0c960bd1c7911d306d274a6e9a1838f158235ed0 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
* Replace a pseudo-virtual slot with a virtual method.Stephen Kelly2011-12-272-3/+2
| | | | | | Change-Id: I5d0e1e54e0d3d441b71b7594bc14e872512cc937 Reviewed-by: Jonas Gastal <jgastal@profusion.mobi> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Finish removing Qt3 supportBradley T. Hughes2011-12-231-1/+1
| | | | | | | | | | | | | | | | Remove the (-no)-qt3support options from configure, and remove the last remaining references to Qt3Support, QT3_SUPPORT, and QEvent::ChildInserted. The compatibilityChildInsertEvents() tests in tst_QObject and tst_QWidget have been renamed to childEvents(), which is a more appropriate name. Change-Id: Id0b45e9b177efcc8dceee8c9ed8afafedeeace2f Reviewed-by: Kai Koehne <kai.koehne@nokia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Enable Mac style on Mac OS X.Morten Johan Sorvig2011-12-2213-318/+406
| | | | | | | | | | | | | Add styles/qmacstyle_mac back to the build, modify qstylefactory to load it on Q_OS_MAC. Move helper functions from platforms/mac to qmacstyle_mac.mm. QMacStyle should now be self- contained and not rely on anything from platforms/mac. Change-Id: I68fe40bb7f88c01269968bffd9579b7f3b932d4c Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@nokia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Convert macros to functions.Stephen Kelly2011-12-211-2/+3
| | | | | | Change-Id: I43f4188d1c33cd5a07eb7a12bf3343af7e6a211f Reviewed-by: Alexander Neundorf <neundorf@kde.org> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Port to list(APPEND)Stephen Kelly2011-12-211-1/+1
| | | | | | Change-Id: I198622270324eea62dd5ad6343fdf7c89e736e6c Reviewed-by: Alexander Neundorf <neundorf@kde.org> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Fix style in cmake macros files.Stephen Kelly2011-12-211-20/+19
| | | | | | Change-Id: I2806ce63f5948dde9c582740bc2f070900987fb5 Reviewed-by: Alexander Neundorf <neundorf@kde.org> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Connect to the moved signals in the header view.Stephen Kelly2011-12-211-0/+8
| | | | | Change-Id: I6954f77ad7d02970f562abcbaf4e733c6d43ead5 Reviewed-by: David Faure <faure@kde.org>
* Fix whitespace consistency.Stephen Kelly2011-12-211-4/+4
| | | | | Change-Id: Ia5debce8e5be4e9c67e1ef303e136816ab55bf90 Reviewed-by: David Faure <faure@kde.org>
* Add missing connections.Stephen Kelly2011-12-201-0/+8
| | | | | | | Unit tested in next commit. Change-Id: Iab37829f98ef8f2258a30aed60e95aa114379b7e Reviewed-by: David Faure <faure@kde.org>
* Adapt from input context mousehandler to input panel in QLineEditPekka Vuorela2011-12-201-7/+6
| | | | | | Change-Id: If14d0cc18188da1dbc8b152fa2fa9583ff03b3bc Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Remove input context action support from editorsPekka Vuorela2011-12-202-25/+0
| | | | | | | | Relying on obsolete QInputContext API. Change-Id: I954ccf57204cbb24ff5cec622384fa3b9932a079 Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Adapt from QInputContext interface to QInputPanelPekka Vuorela2011-12-201-18/+14
| | | | | | Change-Id: I4143c3b516e7b0e46c706b8a6560bca9d8951572 Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Remove declaration which is exported from QtGui.Stephen Kelly2011-12-192-2/+1
| | | | | | | Fixes static build. Change-Id: I6f82ded7bf6cb3b72b0ef987e781c7e8f9ed932b Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Accessibility: childAt returns interfaceFrederik Gladhorn2011-12-192-23/+0
| | | | | | | | | | | | | | | | | | childAt used to return an integer. Return an interface instead. Not requiring a direct child to be returned allows optimizing by bypassing iterating through the hierarchy of accessibles. For QtQuick this is the only sensible way of implementing this. The bridges are still responsible for finding the top-most element. The default implementation in QAccessibleObject is sufficient to return direct children. The implementation in QAccessibleApplication is therfore no longer needed. Change-Id: Id7100dd5bcc3a98de516a7f4a12eaaa41cb46d26 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Change a slot into a virtual method.Stephen Kelly2011-12-193-15/+9
| | | | | | | | Implements a BiC Qt5 TODO. Change-Id: Ie7dc32d954335019166dbd78d8b01ef79e2ad5c2 Reviewed-by: Robin Burchell <robin+qt@viroteck.net> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Make QMetaTypeInterface POD.Jędrzej Nowacki2011-12-191-1/+1
| | | | | | | | | QMetaTypeInterface has to be POD because it is constructed in a static array. Constructors in POD types are not allowed so we will use a macro instead. Change-Id: Iab9ae776dfe4dcd7148558f02d6181c5917aa5c3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove widget attribute orientation values from Qt:: enum.Robin Burchell2011-12-181-39/+0
| | | | | | | | | | | These were only actually implemented on Symbian, thus, they aren't too useful, apart from confusing developers when they don't work. Removed per the discussion on: http://lists.qt-project.org/pipermail/development/2011-December/000860.html Change-Id: Id097cb392a3d964364adbe51a72a22927b9c382c Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Move proxy and selection models to QtCore.Stephen Kelly2011-12-1617-6610/+4
| | | | | | Change-Id: I71097855cb9e28105238e496778f29f99f7fc84e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* QHeaderView - remove stupid ifThorbjørn Lund Martsum2011-12-151-2/+1
| | | | | | | | | Not only is this extra if unnecesary - it is confusing. oldSize is different from size. (otherwise we would have returned less than 10 lines above) Change-Id: Ie911414f679df2be7b5c8bc2670225d46e986b32 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QHeaderView - no big update work if updates are disabledThorbjørn Lund Martsum2011-12-151-0/+5
| | | | | | | | | | | | | | | There is no reason to find out where to update the headerview if updates aren't enabled. Another approch I considered to skip the whole calculation and just call update. I seriosly doubt that this calculation and update of a particular QHeaderView rect will normally(*) be faster than just updating everything. However to be safe I have done the conservative fix. (*) Normally but with many/fragmented spans in the headerview. Change-Id: Ia812a747ee825653db0345cdc34f9d2f7155ea01 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QPlatformDialogHelpers: Reduce dependency on QDialog.Friedemann Kleint2011-12-1411-219/+875
| | | | | | | | | | For each QDialog-derived class, introduce a Q[X]Options class containing the options of the dialog. An instance is shared between the QDialog (or dialog desktop component) and the helper. Change-Id: Ibabf508a4b9eaea25615638a47a4c1b8f93c019e Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* QHeaderView::ResizeToContents slow hide fixThorbjørn Lund Martsum2011-12-141-1/+7
| | | | | | | | | | | | | | | | | | | | I have been a bit confused about what QHeaderView::ResizeToContents does good. It only sizes depending of the visible part. However in hide it goes crazy and checks calculates size hints for every row. At first I considered to solve it in QTableView. It could be made to calculate the maximum height of the maximum screen - however I decided not to touch it since I was not certain that it wouldn't have any unexpected side effects. Therefore I instead made this patch which is more simple and seems to be safer. The logic is that when a QHeaderView is hidden we actually only want to recalculate sizes if the headerview has a visible parent. Task-number: QTBUG-14234 Change-Id: I186ab6afa95aed43022f2bb7c36e3fd008355d9b Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Remove redundant touch processing in QtGui and widgets.Laszlo Agocs2011-12-142-101/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The duplicated hash tables in QGuiApplicationPrivate and QApplicationPrivate are now unified into one single hash table in QGuiApplicationPrivate. This also reduced the number of lookups. The extra processing needed to keep the touch points' first/lastPos values in sync is now done only once, in QGuiApplication. This eliminates the performance penalty (for widget-based apps) that was introduced during the QPA migration. As an added bonus the patch adds support for touch events arriving simultaenously from multiple devices. This was broken before: As there is no guarantee that two devices/drivers will not send touch points with the same ID, using structures with only the ID as key is wrong. The proper key is composed of the device ID (that is, a QTouchDevice pointer) and the touch point ID. The exported internal function qt_translateRawTouchEvent() has been removed. This function cannot work properly in the QPA world: It injected touches into the widget subsystem (QApplication) only which is wrong, and would result in half-filled touch events due to not routing the injected data through QGuiApplication. Autotests using this function are migrated to QWindowSystemInterface::handleTouchEvent(). Change-Id: I7632781d77f9e0ac4626fd7c9933511c94492156 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Fix Memory leak related to Content MenuDebao Zhang2011-12-131-1/+1
| | | | | | | | | | | | | | | From Qt4.7 on, the contextmenu of QTextEdit/QPlainTextEdit/QLineEdit/QLabel/QMainWindow etc using QMenu::popup() instead of QMenu::exec(), but the setAttribute(Qt::WA_DeleteOnClose) does not work, as QMenu::close() isn't called when the menus disapper. And this causes a memory leak. This is a side effect of b7af368e86874d71ffc9071c9ef009814d6a3467 Task-number: QTBUG-22817 Task-number: QTBUG-19592 Change-Id: I4c2c3edb3f63ce914b7b57cd0fbcec20488c8315 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
* Add the .exe suffix to executables on Windows.Stephen Kelly2011-12-121-1/+1
| | | | | | Change-Id: I257bb7d62ae18ea529df6b10694fcf25eedc83f4 Reviewed-by: Clinton Stimpson <clinton@elemtech.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Make QApplication::type() set by QGuiApplication.Frederik Gladhorn2011-12-122-16/+7
| | | | | | | | | | | | | | | QApplication::type used to be static and set by the QApplicationPrivate constructors. In QCoreApplication we have the new application_type that should take its place. QApplication::GuiServer is deprecated (since it doesn't have any functionallity any more with QWS being removed). This change prepares QStyle to be called from a QQuickCanvase based application that does not inherit the QWidget version of QApplication. Change-Id: Ifbe992e25f1e5821fa047b6eb915f75fa675ab97 Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
* Delay masking the last character in Password echo mode.Andrew den Exter2011-12-122-3/+74
| | | | | | | | | | | | | | | | If QT_GUI_PASSWORD_ECHO_DELAY is defined in qplatformdefs.h with an integer value in milliseconds, QLineEdit and TextInput will display the last character entered unmasked for that delay period and then mask the character as normal. If QT_GUI_PASSWORD_ECHO_DELAY is not defined then the behaviour is unchanged. Task-number: QTBUG-17003 Task-number: QTBUG-20719 Reviewed-by: Martin Jones (cherry picked from commit f9e7aee2019d321edd655bfde7de43f20a106971) Change-Id: If69b384636e3775ad7898b8ffc441011c21abe98 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Fix TextInput test failures.Andrew den Exter2011-12-121-0/+2
| | | | | | | | | | | | | emitCursorPositionChanged won't emit cursorPositionChanged if the cursor position hasn't changed but that doesn't mean the micro focus hasn't changed, so emit updateMicroFocus changed when cursorPositionChanged isn't. Task-number: QTBUG-21017 Task-number: QTBUG-21011 Task-number: QTBUG-20719 Change-Id: I86344621151dbeba0eebc67fbc786a8da76b7021 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Move cursorDelegate with the mouse selection of read only text input.Andrew den Exter2011-12-121-2/+6
| | | | | | | | | Task-number: QTBUG-20719 Task-number: QTBUG-19109 Reviewed-by: Martin Jones Change-Id: I2cec51eb5b01dc5750614edf5b39d6a3da661fc6 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Make it easier to select words at the start of a line.Andrew den Exter2011-12-121-12/+22
| | | | | | | | | | | | | QTextControl's word selection will only include a word if the cursor position is past the mid point of the word. This can make it difficult to select words near the edges of the screen on touch devices. For the TextEdit word selection mode select a word ignore the relative position within a word. Task-number: QT-5206 Task-number: QTBUG-20719 Change-Id: I77e71e01d8021d66ada785cf894ba876faccefdf Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
* Store the primary status in the touch point flags.Laszlo Agocs2011-12-121-3/+1
| | | | | | | | | | | | | | | | | For some reason the primary bit has previously been encoded in the touch point state, even though it has nothing to do with the regular states like Pressed, Released, etc. The value is now stored in the recently introduced flags member of the touch points. This also reduces the need for error-prone internal masking of the state value. The structure used by QWindowSystemInterface::handleTouchEvent also becomes cleaner because the primary status can now be set in the flags member and the isPrimary bool can be dropped. Change-Id: I1da2cb99154afd97e1e3a5943ab115cae3a8232f Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>