summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* Doc: corrected broken linksNico Vertriest2013-12-201-2/+2
| | | | | | | | | | | Task-number: QTBUG-34749 Corrected link to drag and drop example. Corrected link to {mandatory fields} Created target referring to macros for defining plugins Change-Id: I387a2d9bab428b2eacd8d371f08c72f42f7e2be2 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Fix writingSystems determination by code page range bitsKonstantin Ritt2013-12-191-2/+42
| | | | | | | | | | Do exactly what windows font database does to determine writingSystems in case of non-truetype fonts. Task-number: QTBUG-13585 Change-Id: I4a1a48d74c36e403c31f20847cf80295d89a34bc Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix build with HarfBuzz-NG older than 0.9.20Konstantin Ritt2013-12-171-1/+1
| | | | | | | | It is annoying that HB maintains binary compatibility but does not really care about source compatibility. Change-Id: Ife7b011919f28527b77858ad8398fe723c65b1b3 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix build with -WerrorKonstantin Ritt2013-12-172-2/+2
| | | | | Change-Id: I2fe4b006dc0696e5491792846bdb8c99ac31af6e Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Use #pragma warning(push) and pop to control our warningsThiago Macieira2013-12-161-1/+2
| | | | | | | | | | Using "default" means "reset to default compiler settings", not "revert to command-line settings". And even if it did, it's possible some other headers by the user toggled the settings. We shouldn't affect that. Task-number: QTBUG-35622 Change-Id: If7c4bd0cc8c210f88ee89e3fa2dd3b7194ad77bb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Fix strings in QImageWriter.ABBAPOH2013-12-161-9/+5
| | | | | | Change-Id: Id5ff5f05843a2feb92ff60fce20df699ed4a0476 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Check if device is opened before trying to create image handler.ABBAPOH2013-12-121-14/+35
| | | | | | Change-Id: I60f1f6890fdd73e489da4aab9928370163f55f58 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: aavit <eirik.aavitsland@digia.com>
* Move notification of layout change up from QApplication to QGuiApplication.Robin Burchell2013-12-101-0/+5
| | | | | | | | | | QGuiApplication-using things (like QtQuick) need to know about this, too -- this makes QGuiApplication::setLayoutDirection actually work. Task-number: QTBUG-21573 Change-Id: I2d2ac7dc07f11be5c7e501a3575b1d0978d8ac31 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Windows: Show context menu on mouse release.Friedemann Kleint2013-12-102-1/+5
| | | | | | | | | | Introduce a hint to QPlatformTheme to control the behavior. Task-number: QTBUG-35231 Change-Id: Ia28e153a8dd3f1931321a222d8906ca87166ed62 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Remove unused function "quadraticRoots"Thiago Macieira2013-12-091-31/+0
| | | | | | | | | qbezier.cpp(122): warning #177: function "quadraticRoots" was declared but never referenced Change-Id: I590f59ed6e41462d0a14a9239adb8bd0acbeeae4 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Simplify linking to different jpeg libs.Mitch Curtis2013-12-091-2/+4
| | | | | | | | | | This makes it slightly more obvious which compiler should be used with which. Task-number: QTBUG-23119 Change-Id: Ie3e5cf995d686bfa846902a040668716c8b5f526 Reviewed-by: Andy Shaw <andy.shaw@digia.com>
* Merge "Merge remote-tracking branch 'origin/release' into stable" into ↵Frederik Gladhorn2013-12-051-0/+2
|\ | | | | | | refs/staging/stable
| * Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-12-051-0/+2
| |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/macx-ios-clang/features/default_post.prf tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp Change-Id: Iaba97eed2272bccf54289640b8197d40e22f7bf5
| | * Use Q_QDOC for Qt namespace declaration in Qt GuiTopi Reinio2013-12-031-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a workaround for letting qdoc to successfully generate documentation for the Qt namespace. qdoc doesn't properly handle multiple declarations for the same namespace spread across multiple modules. Task-number: QTBUG-35230 Change-Id: I449b17e1171d1a4481b9cf07cd48c803feed5be9 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | | Protect implementation of QNativeGestureEvent against QT_NO_GESTURESAndy Shaw2013-12-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The definition and usage of QNativeGestureEvent had already been protected against QT_NO_GESTURES but the implementation had been missed out before. Change-Id: Ie039e08257ad5eb7705342e4248b904f6ceca8df Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* | | QTextEngine: fix layouting of inline objects in right-aligned tabs.David Faure2013-12-051-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (same thing for center- and delimiter-aligned tabs) The width of the inline object wasn't taken into account, the code in QTextEngine::calculateTabWidth only looked at glyph widths. Change-Id: I303a6561c67870ff2094a685698e642fc1b53b12 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* | | Fix radial gradient shader compilation for OpenGL ES 2.0.Carsten Munk2013-12-051-2/+2
|/ / | | | | | | | | | | | | | | | | Change highp to mediump. This qualifier is ignored on desktop, and mediump should be sufficient elsewhere. Task-number: QTBUG-35353 Change-Id: I79f0ed88717d45dada5dcb781e75b10e72db4bd0 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Merge remote-tracking branch 'origin/release' into stableSimon Hausmann2013-11-291-0/+15
|\| | | | | | | Change-Id: I2e2bf789b0fe8442ed623bc0c8aef591235cdabe
| * Docs: add important QWheelEvent::phase() related notesJ-P Nurmi2013-11-291-0/+15
| | | | | | | | | | | | | | Change-Id: I4901b96b44b7c1179e678689af5962cb4570d50d Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Streamline font match() function.Friedemann Kleint2013-11-281-10/+6
| | | | | | | | | | | | | | Determine writing system before executing the loop. Change-Id: I6c462bdef4d70860e76c7cc9d939e3e92983b173 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Remove unused variable in font match() function.Friedemann Kleint2013-11-281-3/+0
| | | | | | | | | | Change-Id: I0752901556a44c3b7fb4440e3ba0ca88559c1fe2 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Merge "Merge remote-tracking branch 'origin/release' into stable" into ↵Frederik Gladhorn2013-11-283-5/+1
|\ \ | | | | | | | | | refs/staging/stable
| * | Merge remote-tracking branch 'origin/release' into stableSimon Hausmann2013-11-283-5/+1
| |\| | | | | | | | | | Change-Id: I860404a1ef18c88a968a9eded405bb67967047b9
| | * Revert "Store the font's scalability in QFontEngine."Yoann Lopes2013-11-273-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 65b12fbdb13d34c61bcadd5cc8fd6ee28a8dfafd. QFontEngine is not always loaded from QFontDatabase, resulting in the flag not being set. Change-Id: I39bc5bd4a8dea153d191cfc55f4324195f75f64c Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | | Fix font lookup.Friedemann Kleint2013-11-282-16/+29
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | Change match() to return an index and use that to reintroduce the blacklist bookkeeping for fonts for which font engine creation fails (for example, due to missing open type support). Change the algorithm to retry search if that happens. Add empty string as fallback for non-common scripts indicating 'try to find any font matching the script' as is done in Qt 4. Task-number: QTBUG-34908 Change-Id: I9ac81ff1c275ebb635675dc26b52394789fca60c Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Check the thread in QOffscreenSurfaceLaszlo Agocs2013-11-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | The QWindow-based fallback will not work when the QOffscreenSurface is created outside the main thread. Show a warning in this case. Note that it is fine to use the QOffscreenSurface instance in another thread. It is just the creation that must happen on the main thread. Change-Id: If80da39e610813755b9ba2f6831b187b258b8266 Reviewed-by: Yoann Lopes <yoann.lopes@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-11-265-11/+27
|\| | | | | | | Change-Id: I83ff8f4d7dffd7385013a1bd8a1732a89ee20d56
| * Avoid incorrect warning when painting onto a QImageLaszlo Agocs2013-11-231-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change Ia8ef48f3 introduced a regression: Trying to paint onto a QImage, QPicture or QPrinter from outside the main thread incorrectly shows a warning saying that it is not supported. The patch was incorrect because 'extraCondition' was used in the non-default branches of the switch and thus not passing extraCondition==true caused the message appear even when it shouldn't have. Let's just remove the extraCondition parameter altogether since it is not used in practice anyway. Change-Id: Id2e56c585d1f1013f24942cbcd53305fbb66aeba Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| * Allow platform to decide default behavior for show() based on window flagsTor Arne Vestbø2013-11-204-7/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ShowIsMaximized and ShowIsFullscreen style hints were not granular enough to build a default behavior from that would be correct for all platforms. The recent Android patch that excluded dialogs from being shown maximized (Ia249e93dbbea1) has now been moved into a platform override in the Android integration plugin, leaving other platforms to the default behavior of using the style-hints. We still special case popup-windows though, as that behavior has been there for a while. Task-number: QTBUG-34969 Change-Id: Id36346d71bfc46171383ffe334592ca0b94e456f Reviewed-by: BogDan Vatra <bogdan@kde.org> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* | src/gui/text: whitespace fixesJ-P Nurmi2013-11-267-122/+122
| | | | | | | | | | Change-Id: Idd0e0673d76a23593b03558e18bc6afbdb9b38ab Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | QOpenGLTextureHelper (Windows): Don't load desktop DLL when GLES2 is usedAndrew Knight2013-11-211-1/+1
| | | | | | | | | | | | | | | | GL functions should come from the context, not the desktop GL lib, when Qt is configured for OpenGL ES 2 (e.g. ANGLE). Change-Id: I794e1d5989ac72d2e98070d20e91f9c2c4cb7183 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* | Cleanup freetype data in a thread-safe wayRobin Burchell2013-11-204-15/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One less obvious part of this patch: the fontCache pointer in engineData was not safe. It isn't safe to rely on pointer addresses to verify we're cleaning up the right thing, as a sequence of malloc()/free()/malloc() can return the same pointer, and nothing was cleaning up the dangling pointer in engineData. With this, it is possible to safely drop OpenGL contexts in QtQuick under all conditions with no possibility of crashes. Done-with: Aaron Kennedy <aaron.kennedy@jollamobile.com> Change-Id: I7b91384251593730124323a74737d41333a05f59 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | Remove empty QAccessible2 headerFrederik Gladhorn2013-11-202-46/+0
| | | | | | | | | | Change-Id: Ia5e9b1adf9280e6b7d7aaf8cb5b5167b694a6070 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* | Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-11-1811-30/+211
|\| | | | | | | Change-Id: Ie6d44caf1d630cb029178a1af40c637f24a25ee7
| * Try to find GL headers in Mac SDKs.Stephen Kelly2013-11-151-2/+16
| | | | | | | | | | | | | | | | Task-number: QTBUG-32308 Change-Id: Ibbab3852e5cc289faa63d0a66a3816ab8062ccb9 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> Reviewed-by: Brad King <brad.king@kitware.com>
| * Missing entry in QImage inplace_converter_mapAllan Sandfeld Jensen2013-11-151-0/+3
| | | | | | | | | | | | | | | | | | The inplace_converter_map never had an entry for ARGB4444_Premultiplied this leads to the possibility of accessing outside of the array, and means the RGBA8888 formats are misplaced. Change-Id: Ida0d94912b53a7730b8fb5f6ccc31e7879ea3d27 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| * Don't maximize dialogs.BogDan Vatra2013-11-151-1/+1
| | | | | | | | | | | | | | Task-number: QTBUG-34765 Change-Id: Ia249e93dbbea11f3c03881c5fb88396bfad0e8fa Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
| * Enable QOpenGLTexture for OpenGL ES 2Jorgen Lind2013-11-147-25/+179
| | | | | | | | | | Change-Id: I3ec2b7af303070c92e86c0f5ca729eb1a1731682 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * QOpenGLTexture: mark (QImage) ctor explicitMarc Mutz2013-11-141-1/+1
| | | | | | | | | | | | | | Disables implicit conversions from QImage to QOpenGLTexture. Change-Id: I09b4d236dde8eae5258e6a954f4e02b4451990bd Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * QOpenGLTexture: mark (Target) ctor explicitMarc Mutz2013-11-141-1/+1
| | | | | | | | | | | | | | Disables implicit conversions from Target to QOpenGLTexture. Change-Id: I2edd2dc4528a311577f0b7df4f6ce22696336a88 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * QOpenGLPixelTransferOptions: declare as shared, add move assignment operatorMarc Mutz2013-11-141-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | A move constructor cannot be added because the class uses a smart pointer to hold its pImpl, so the move ctor would have to be out-of-line, destroying BC between C++11 and C++98 versions of Qt. Member-swap is required for Q_DECLARED_SHARED, which in turn enables efficient use of the class in Qt containers by marking it movable. Change-Id: I1aaa5bf3343a92e621d9464d8e4352f4e5ceff1f Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Improve interaction between QPlatformTheme and QPlatformIntegration hinting.Michael Brasser2013-11-151-1/+27
| | | | | | | | | | | | | | | | | | | | | | Ensure that custom style hints returned by subclassed QPlatformIntegration::styleHints() are used if not explicitly overridden by subclassed QPlatformTheme::themHints(). Task-number: QTBUG-34589 Change-Id: I0a3114cb00b532d2a5cd40941eca192b32412bcf Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* | Move MaxKeyCount from QKeySequenceEditPrivate to QKeySequencePrivateMarc Mutz2013-11-141-0/+1
|/ | | | | | | | | | | | | Adjust users and add a static_cast that MaxKeyCount be 4. That is instead of adjusting all the code to use MaxKeyCount instead, some of which cannot be thus changed (e.g. where using the QKeySequence(int, int, int, int) constructor). This was requested in the original review, but never implemented. Change-Id: I3812340890f4d75257139f04e73e83083ca09760 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Request the glyph at the right subpixel offsetGunnar Sletta2013-11-101-1/+1
| | | | | Change-Id: Iace18740565862f1c66e2d654a1a2e7bc1a16fc7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Force FT font engine to load the right glyph metricsGunnar Sletta2013-11-101-0/+12
| | | | | Change-Id: If027ea4c1a3b2ca8f972592abe3534165f62cf4e Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Remove disused version of QPlatformMessageDialogHelper::clicked signalShawn Rutledge2013-11-081-1/+0
| | | | | | | | It has been replaced with a version that sends both the button and the role. Change-Id: I47156288bf2039cfdfd4cf09f75563347bfb4141 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Dialogs: provide the StandardButton->ButtonRole mapping in QPAShawn Rutledge2013-11-072-1/+61
| | | | | | | | | | | | | As the QPlatformMessageDialogHelper will be implemented repeatedly, it's useful to have this mapping in one place for reuse. Also, since we do not guarantee that either accepted() or rejected() will be emitted for every possible button on a QtQuick MessageDialog, it's useful for the QtQuick.Dialogs module to have access to this mapping to interpret individual button presses and emit the role-specific signals such as yes(), apply(), help(), etc. Change-Id: I7be753080794adabb784df9b95ac04aa1c29151c Reviewed-by: BogDan Vatra <bogdan@kde.org>
* EglFS: make sure resize events are deliveredPaul Olav Tvete2013-11-064-14/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | Make sure that resize events are delivered when the platform plugin overrides the geometry set in setGeometry(). This fixes a race condition where a widget was resized to its sizeHint() while the window was maximized, and the content was shown scaled on the screen. The problem is that the widget gets the wrong size from QWidget::setWindowState() (which calls adjustSize() in order to support normalGeometry). This size is used to resize the backingStore. When the QWindow is resized, it calls QEglFSWindow::setGeometry() which corrects the size to screen()->availableGeometry(), and triggers a GeometryChangeEvent since the size was corrected. This ends up in QGuiApplicationPrivate::processGeometryChangeEvent() which will not send a resize event, since the size has not changed (it is always availableGeometry()). Therefore the widget is never resized, and the backingStore remains the wrong size. Task-number: QTBUG-34421 Change-Id: Iee49c53cc529de36010db2695d838d8c2284edd4 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Don't hardcode devicePixelRatio to 1.Morten Johan Sørvig2013-11-061-1/+6
| | | | | | | | | | | | | This code path can and will be hit during app startup, and can result in low-resolution images being used on high-dpi systems. Use qApp->devicePixelRatio() instead, which is more likely to be correct. Change-Id: Ic881cfedd8e962037d2d4af4a1242f590d56c194 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
* Revert "Use Qt's own glyph cache with the freetype engine."Gunnar Sletta2013-11-061-1/+2
| | | | | | | | | | | This reverts commit 8c58640fdfe5d182cd8ab9ad0598c54c0487eb7c. The intent was to reduce the maintenance of parallel code paths, but this had a negative impact on performance so we need to enable it again. Change-Id: Ic58f7781ff076055e7c48f20fc0e7a8a2c9e51a4 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>