summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Teach font database to populate families lazilyTor Arne Vestbø2014-03-205-39/+136
| | | | | | | | | | | | | | | | | | | | | | Instead of requiring that QPlatformFontDatabase::populateFontDatabase() populates every single font in the system by calling registerFont(), we now allow the platform database to call registerFontFamily() instead, and then keep track of which families we've yet to fully populate in the font database. Once a property of a family is requested (such as its writing system, style, etc), the family is lazily populated by calling back to the platform database through QPlatformFontDatabase::populateFamily(), which in turn does the final call to registerFont() as before. This cuts application startup on OS X and iOS (of which the font population used to be a major limiting factor) from roughly one second to about 350ms. Task-number: QTBUG-37165 Change-Id: Ic2fc3447beb818ffe23635a5b7816ed7e70c93a7 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fix bundled HarfBuzz-NG build on MacKonstantin Ritt2014-03-202-1/+15
| | | | | Change-Id: I2229c77b4951c2ba9b445286cb94a2a86e345c34 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Respect scrollbar position setting on MacJens Bache-Wiig2014-03-201-4/+4
| | | | | | | | | | | This was a regression from Qt 4.7. [ChangeLog][Widgets][QScrollArea] Respect scrollbar setting for click-position on Mac. Task-number: QTBUG-36314 Change-Id: I8bdb1aec9b308b0907f5db29d3519998bc843c18 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Android: Try to hide the sw keyboard on finishComposingText.BogDan Vatra2014-03-201-1/+1
| | | | | | | | | finishComposingText is called when the composing text is finished also when the sw keyboard is hidden. Task-number: QTBUG-37631 Change-Id: I4f4e90e60ac3f89784755b591f578e07fdbfdd2a Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* network: add support for NTLM Session SecurityPeter Hartmann2014-03-201-2/+9
| | | | | | | | | tested manually with internal proxy. Patch-by: Jonathan Lauvernier <Jonathan.Lauvernier@gmail.com> Change-Id: Ief5b4579b3444ce70eb99637edf771d37d3971fb Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
* BlackBerry networking: call special select() methodPeter Hartmann2014-03-201-0/+48
| | | | | | | | | | | | | | ... so that the socket notifiers are enabled after selecting and thus emit signals even after selecting (select() is called e.g. by the waitFor* methods). Task-number: QTBUG-36144 Change-Id: I385f288e8c42f92a9c84e53bce843e52f8094ada Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Fanda Vacek <fvacek@blackberry.com> Reviewed-by: Bernd Weimer <bweimer@blackberry.com> Reviewed-by: Richard J. Moore <rich@kde.org>
* Logging: Remove PatternFlag::Invalid from QLoggingRuleKai Koehne2014-03-202-6/+2
| | | | | | | | | | | The flag is not orthogonal to the rest, and e.g. checking with flags & Invalid will fail. Rather make it explicit by comparing with 0. Change-Id: I428d5e71f5ecd05f61d543aaa78532548ef93d5a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* QFusionStyle: support transient scrollbarsJ-P Nurmi2014-03-202-32/+168
| | | | | | | | | | | | | | | | | | | | QFusionStyle doesn't make scrollbars transient by default, but the feature can be enabled with a proxy style: class MyProxyStyle : public QProxyStyle { public: int styleHint(StyleHint sh, const QStyleOption *opt = 0, const QWidget *w = 0, QStyleHintReturn *ret = 0) const { if (sh == QStyle::SH_ScrollBar_Transient) return 1; return QProxyStyle::styleHint(sh, opt, w, ret); } }; Change-Id: Ibf169e219ad920cbe7edb06e128e09ed4d8faf96 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* QPushButton: draw label using the stylesheet's font.Mitch Curtis2014-03-201-0/+8
| | | | | | | | | | | The RenderRule for the stylesheet has the correct font information, it just wasn't being set on the painter that draws the label. Task-number: QTBUG-8990 Change-Id: I7cbaffc570421db04ebf3254cb6a21a68f7b868b Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Stop omitted enum value from showing up in Qt namespace doc.Mitch Curtis2014-03-202-2/+3
| | | | | | | | | | | | | | | | | The following omitted enum description can be seen at [1]: "Ensures that the longest variant is always used when computing the size of a multi-variant string. (Internal)" This is because \omitvalue does not allow a description (whereas \value does). The description was moved to the qnamespace.h as a code comment. [1] http://qt-project.org/doc/qt-5/qt.html#TextFlag-enum Change-Id: I7983613bffa90f3071a4e2d678696391048c8757 Reviewed-by: Martin Smith <martin.smith@digia.com>
* QApplication: fix scroll phase handling for wheel eventsJ-P Nurmi2014-03-201-2/+2
| | | | | | | | Set scroll phase correctly for propagated wheel events, and do not let Qt::ScrollBegin/End steal focus when using Qt::WheelFocus policy. Change-Id: Ia38b64059d96a228c3b83c9b455db6e30dfb9a46 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Docs: Correct OpenGL ES namingLaszlo Agocs2014-03-202-381/+381
| | | | | | | | Not sure where "OpenGL/ES" is coming from but there is no such thing. The correct name is OpenGL ES. Change-Id: If071ee5bd928fea1a2f1aebc11155344df1efe2d Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Resurrect advanced bindTexture() features in QtOpenGLLaszlo Agocs2014-03-201-3/+42
| | | | | | | | | | | | | | During the Qt 4 -> 5 migration the setting of the extension flags in QOpenGLFunctions/Extensions suffered a regression: flags like GenerateMipmap were never set. This led to the unfortunate sitation that features that were tied to these flags, like compressed texture support or mipmap generation, got disabled. This is now corrected by checking for the extensions like Qt 4 did. Task-number: QTBUG-37588 Change-Id: I4a7beb1b435af11e05f5304aa04df2ec63b34c18 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* ANGLE D3D11: Fix internal index buffer for level 9 hardwareAndrew Knight2014-03-202-75/+350
| | | | | | | | | | | | | | | | | | Some level 9 hardware does not support 32-bit indices, and in most places this is already checked. It would appear that most phone hardware actually does support 32-bit indices, and so this bug wasn't caught until testing on the Surface RT. This is not surprising, as some level 9 resources are only a minimum for the hardware spec, not the true limit of the device/driver. This patch provides the general fix to use 16-bit indices on such hardware, but a whitelist of known good GPUs should be added to enable 32-bit indices where available. Change-Id: I282ede5dd4a323037ade6c44b7cfac2c6445b491 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* Print when logging rule is invalid.Kai Koehne2014-03-201-1/+5
| | | | | | | Print a warning when an invalid logging rule is parsed. Change-Id: I3bf9a6df4053d36b3803652b2faa86168d5222bc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Fix crash if SSL_get0_next_proto_negotiated() cannot be resolved.Friedemann Kleint2014-03-201-4/+6
| | | | | | | | | | | | | Crash occurs after warnings like: QSslSocket: cannot call unresolved function SSL_get0_next_proto_negotiated Task-number: QTBUG-37515 Task-number: QTBUG-33208 Change-Id: I18b803e4709b9d5f6b33717c2ac43179676351a4 Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
* Fix creating directory hierarchy for WinRTMaurice Kalinowski2014-03-201-0/+14
| | | | | | | | | | | | | | mkpath was not working consistently on WinRT. The reason is that createDirectory() starts from C:/ which is outside the sandbox and an illegal access error has been returned. In case the chunk is still inside the "known" writable area, we continue to the next chunk. Known writable is derived from QStandardPaths. All but Temp are children of the DataLocation on WinRT. Task-number: QTBUG-35472 Change-Id: I3b4ab390bd321285da51d02f5eeaf06da4d56298 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* Cocoa: Follow-up m_sendUpAsRightButton for DnDMorten Johan Sørvig2014-03-201-2/+2
| | | | | | | | | | | Clear and test for the correct button according to the m_sendUpAsRightButton flag. (Fixes the warning mentioned QTBUG-35804) Task-number: QTBUG-35804 Change-Id: I5d724d1cfa66b88b8f54e228bd7fb73a04a9f4c9 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Cococa: Make QMacNativeWidget work again.Morten Johan Sørvig2014-03-201-1/+3
| | | | | | | | | | | | The NSWindow releasing code in recreateWindow() has regressed to not handle the m_contentViewIsToBeEmbedded case. Release the NSWindow directly instead of calling recreateWindow() Change-Id: Ibc6d10faf4c6dae42e02c400b16f28a1d28eb192 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Cocoa: call SetFrontProcess on raise()Morten Johan Sørvig2014-03-201-0/+3
| | | | | | | | | | This will raise the window in front of windows from other processes as well. Following Qt 4, only do this for top-level windows. Task-number: QTBUG-29087 Change-Id: Iae1b9c2928a627501112f97728198ed6dd614b2d Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Accessibility Mac: Implement most TextEdit functionsFrederik Gladhorn2014-03-201-21/+68
| | | | | | | | | With this patch reading QTextEdit line by line works with VoiceOver. Task-number: QTBUG-37204 Change-Id: Id9d7c4294254aaa8fe51ee8b612bfbb43348b777 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Accessibility Mac: Implement setting focusFrederik Gladhorn2014-03-201-2/+8
| | | | | | | | [ChangeLog][QtGui][Accessibility] Allow assistive apps such as VoiceOver to set the focus on widgets and controls. Change-Id: I657bf7d827c5e5293cfd628dbb6b8f0592a84f24 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Accessibility: Improve QTextEditFrederik Gladhorn2014-03-201-1/+5
| | | | | | | | | | | | | EditableTextInterface was implemented but not reported to the accessibility bridges. Newlines in QTextEdit when using QCursor::selectedText are returned as unicode paragraphs, replace them by newlines. [ChangeLog][QtWidgets][Accessibility] Fixed QTextEdit not reporting newlines to accessibility frameworks and add editable text interface. Change-Id: Iac21e70f5468a16f8abf242ae148290dbab3f8e4 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Accessibility Mac: Fix TextEditFrederik Gladhorn2014-03-201-0/+94
| | | | | | | | | [ChangeLog][QtGui][Accessibility] Implemented text attributes to enable VoiceOver to read QTextEdit and QPlainTextEdit. Task-number: QTBUG-37204 Change-Id: Ie2fa8086a1bcf4907ac59850dc5c6c08b5f0b7f2 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* QProcessEnvironment: Fix handling of magic environment variablesDaniel Teske2014-03-201-1/+1
| | | | | | | | | | The cmd shell on Windows sets special environment variables starting with a '='. Task-number: QTCREATORBUG-8716 Change-Id: Id2852188897522558907d9846fb2af069600235f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Update year in About Qt dialogKai Koehne2014-03-201-1/+1
| | | | | | Change-Id: Ibbca2026c21394b68309cafe71e6d46065785f9b Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com> Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
* Avoid QImage copy in toTexture()Morten Johan Sørvig2014-03-201-0/+8
| | | | | | | | | | | | | | Desktop OpenGL has GL_UNPACK_ROW_LENGTH which we can use use to specify the image row stride. This removes the need to call QImage::copy(). On a retina MacbBok pro this reduces toTexture's share of the total run time by 1-4%. (on tests/manual/ qopenglwidget/openglwidget) Change-Id: Ia7f49d5c4ffcc347a495701bbaca6aecc2dc3433 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Return false on context creation failureLaszlo Agocs2014-03-201-3/+3
| | | | | | | | | | | | | | Make QOpenGLContext::create() return false when the native context could not be initialized. This way the return value and isValid() become equivalent. Relying on on having a non-NULL platform context is not enough, many platforms will return a new instance even if the underlying platform code failed to create a native context. To ensure that a platform context is really usable, isValid() has to be checked too. Change-Id: I6b4e9fdb24347ad52fbd6edbb8d144d51e16c301 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Correct QPainter::setPen() documentation.Mitch Curtis2014-03-201-1/+1
| | | | | | | | | The default pen width is 1 as of Qt 5. Task-number: QTBUG-37277 Change-Id: I5b7b9c2019bd0e812384e67812b7bcfde37d0b53 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Fix positional binding values order in QSqlQueryTobias Koenig2014-03-201-4/+9
| | | | | | | | | | | | Adapt the stringification code, that is used to produce the keys for QSqlQuery::boundValues() return value, to keep the right order of the binding values. Task-number: QTBUG-12186 Change-Id: Ic11a455bfd9ffd1418b1b021ce5cf78cae9b4504 [ChangeLog][QtSql] Fixed the order of values with positional binding in a QSqlQuery Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Android: Check for exception before calling NewGlobalRef().Christian Strømme2014-03-201-2/+14
| | | | | | | | | | Calling NewGlobalRef() throws an exception if it gets an invalid ref. If one of the jni object-calls throws an exception and the returned reference is invalid, the subsequent call to NewGlobalRef() will trigger the second exception and the process will be terminated. Change-Id: I50c622e695542373d5b2eebd911c882e8e0f6bf7 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
* Android: Re-enable threaded renderingEskil Abrahamsen Blomfeldt2014-03-201-1/+2
| | | | | | | | | | | | | | | In Qt 5.2.x, the platform plugin inherited from the EGLFS platform plugin, so calling the super class implementation of hasCapability() would return true for ThreadedOpenGL. Since this link was removed in Qt 5.3, we would return false for all devices, giving us a large performance regression. Task-number: QTBUG-37586 Change-Id: I27758649ee9c0921902787b93be943751c839eb8 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> Reviewed-by: BogDan Vatra <bogdan@kde.org> Reviewed-by: Alessandro Portale <alessandro.portale@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Fix QAbstractScrollArea to respect transiency per scrollbarJ-P Nurmi2014-03-201-25/+31
| | | | | | | | Do not query scrollarea's own style whether the scrollarea itself is a transient scrollbar, but query both scrollbar's style individually. Change-Id: I6397a29bc7b276a92c538cbb7fc0dd921595d093 Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Cocoa: Set surface resolution for all GL surfacesMorten Johan Sørvig2014-03-201-1/+1
| | | | | Change-Id: Ic54ad954a157ff777312361b7816b1752afbf75f Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* QOpenGLWidget retina support.Morten Johan Sørvig2014-03-202-5/+29
| | | | | | | Use device pixels where appropriate. Change-Id: Ia953e6da4034eecbfccf798701ec1b850eea9d5b Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Delete the OpenGL context before the window.Morten Johan Sørvig2014-03-201-4/+2
| | | | | | | | Fix a crash-on-exit on Mac, where deleting the context references the attached NSView. Change-Id: Iac38184dab7a406e4072452fd9a6b175e6968ade Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Cocoa: Close windows with QWSI::handleCloseEvent()Morten Johan Sørvig2014-03-201-1/+2
| | | | | | | | Calling QWindow::close() directly bypasses some of the window close logic in the QWindow subclasses. Change-Id: I208db5600e6a756e25e207eaaf55dcfad255f406 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Cocoa: Enable QQuickWidget on Mac OS X.Morten Johan Sørvig2014-03-204-1/+8
| | | | | Change-Id: I0635bf0bfcd49c20987a81c6f8895fc3343fbd20 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* Use parent cursor for QLineEdit's clear button when not shown.Friedemann Kleint2014-03-202-3/+12
| | | | | | Task-number: QTBUG-37548 Change-Id: I8a4eb52f9a5a9551e53dab100f2337cf201d7401 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Fix compile for embedded Androidaavit2014-03-201-1/+1
| | | | | | | Cannot use JNI to query for standard paths Change-Id: I1596106fd4d5e532d3ac1cd6dbfce3fb9fe1db5a Reviewed-by: Christian Stromme <christian.stromme@digia.com>
* Fixes: style runtime warnings when painting too small widgetsaavit2014-03-201-2/+2
| | | | | | | | | Trying to create a 0-size cache image would lead to trying to paint to a null image, giving runtime warnings. Task-number: QTBUG-37035 Change-Id: I0a7fdb19cc7548dea2770d6be4eb283f6b898ada Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* QOpenGLContext: Use color depth information from QSurfaceFormatKurt Pattyn2014-03-193-1/+26
| | | | | | | | | | | When a new QOpenGLContext is requested, the color depth information is now also taken into account on OS X and WGL. Task-number: QTBUG-37411 Change-Id: I69d04989a20de3ace041b009fbbdc03fa02cfdf8 Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Workaround for misbehaving [UIScreen screens] in iOS 7.1Eduard Veleba2014-03-191-1/+3
| | | | | | | | | | | | On iOS 7.1 [UIScreen screens] sometimes returns empty NSArray which is against documentation and causes immediate application crash. This workaround uses [UIScreen mainScreen] in case [UIScreen screens] returns empty NSArray. Task-number: QTBUG-37601 Change-Id: I9b341b9ca788b5fc81804489d2e0a3af84207168 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Remove 'register' storage class specifier in armv6 atomicsTor Arne Vestbø2014-03-191-8/+8
| | | | | | | It is deprecated, and produces warnings on recent Clang versions. Change-Id: I83181dd12c06a600a2f0eafbd83fe6111cf7752c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QMenu: Enable sloppy submenu mouse navigationGabriel de Dietrich2014-03-193-5/+8
| | | | | | | | | | | | | Since we're in the 21st century, we set QCommonStyle to return true to the SH_Menu_SloppySubMenus style hint. This unlocks all the logic already available in QMenu. Task-number: QTBUG-20094 [ChangeLog][QtWidgets][QMenu] Enable sloppy submenu mouse navigation Change-Id: I134c87e348d98d1f46055e0bfef2b4a4a3d2993a Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* QMenuPrivate: Make sloppyDelayTimer non-staticGabriel de Dietrich2014-03-192-11/+10
| | | | | | | | | | | Keeping the timer static would trigger warnings when enabling SH_Menu_SloppySubMenus in QCommonStyle in a forthcoming patch. This would happen if we opened a second level submenu quickly enough and get the mouse event handler to reset the timer its parent menu started. Change-Id: Ia768603b40b219f87138c60a595c65ef408761ae Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* QMenu: Sloppy menu selection should allow hovering separatorsGabriel de Dietrich2014-03-191-0/+1
| | | | | | | | | | | Setting the current action to 0 clears the sloppy region and closes the submenu if we hover a separator on the way to the submenu popup. Now, we choose not to while the sloppy delay timer is running. Task-number: QTBUG-20094 Change-Id: I9d1b1358fe64c259dc47f35db8fc8f2b19a73153 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Fix typos in QRegExp documentationKai Koehne2014-03-191-2/+2
| | | | | | Change-Id: I80bce716ac1c161fd87291ecdbf21eb8f3f25e5a Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Update bundled libxkbcommon version to 0.4.0Gatis Paeglis2014-03-1954-9320/+11383
| | | | | | | | | | | | | This release comes with important bug fixes. Also we can now remove the workaround code which was needed for libxkbcommon 0.2.0. Task-number: QTBUG-31712 Task-number: QTBUG-33732 Task-number: QTBUG-34056 Change-Id: I57caf7f803b9a01a15541a5ad82e464de3b8abbb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix bundled HarfBuzz-NG build outside QtGuiKonstantin Ritt2014-03-192-32/+45
| | | | | | | | | | | | | | On Mac, hb_coretext requires both CTFont and CGFont. Due to not supporting the 0 tag by CoreText, hb_blob_get_data() always fails causing the hb_coretext_shaper initialization to fail, too. Since HarfBuzz-NG is not a part of QtGui module anymore, there are two possibilities to workaround this: either engineer the font data by querying tables one-by-one and generating the font directory table, or pass CTFont and CGFont refs directly to hb_coretext via the hb_face's user_data. This patch implements the latter. Change-Id: I7d2e2df00818ea811642cb6a6c3b9c9abd5d7b94 Reviewed-by: Lars Knoll <lars.knoll@digia.com>