summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* Fix missing devicePixelRatio propagation on copy.Morten Johan Sørvig2013-03-292-3/+6
| | | | | Change-Id: I0cb541fe8a92b7a7c159e0a6e5036baf43185a93 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Load "@2x" images on high-dpi "retina" systems.Morten Johan Sørvig2013-03-281-0/+11
| | | | | | | | | Check for the existence of a "@2x" file when adding an image to QIcon. For example, adding "foo.png" will also add "foo@2x.png" if that file exists. Change-Id: If32a3446cf56ca0828de17f6a361091e4c874f26 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Doc: Corrected a typo in the constructor documentation.Venu2013-03-271-1/+1
| | | | | | | | | Task-number: QTBUG-30162 Change-Id: I2db9ae7b5bab82cf4b65dc35bcb904ffbfb9e115 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com> Reviewed-by: Martin Smith <martin.smith@digia.com>
* Add qDebug() output for QTouchEvent.Friedemann Kleint2013-03-271-0/+37
| | | | | | | | Task-number: QTBUG-29946 Task-number: QTBUG-29254 Change-Id: I9371954caf4166041239684e90c09b12038065d3 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Fix font stretching issueKonstantin Ritt2013-03-261-2/+2
| | | | | | | | We're treating fontDef.pixelSize as a box height everywhere but in harfbuzzFont initialization code the logic was opposite. Change-Id: I4eecf7861a6084c7f2dbe1df85a71f2e251da845 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Fix handling of 0x00AD code with symbol fonts (Win/QPA/QPF/fallback)Konstantin Ritt2013-03-261-0/+1
| | | | | | | | | ...by updating HB_Face::isSymbolFont value to make HB know that the font is a symbol font. U+00AD is a Unicode soft hyphen character, which shouldn't be threated like a default ignorable (invisible) when 0x00AD occurred in a symbol font. Change-Id: Idd4760aded644f7f11a1a8d3c03c348abc69a3e4 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Fix access to interface in QAccessibleEventFrederik Gladhorn2013-03-231-1/+1
| | | | | | | | | Sometimes we get an invalid interface. In that case the event should just return 0. This avoids some potential crashes. Change-Id: I9f166b5d5547dbe7f22c4756502aee811b0b80a6 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Make QIcon generate high-dpi pixmaps.Morten Johan Sørvig2013-03-233-7/+117
| | | | | | | | | | | | | | | | | | | | | | QIcon::pixmap() can now return pixmaps that are larger than the requested size, This is a behavior change that may require updating existing application code, and is enabled by setting Qt::AA_UseHighDPIIamges. Add new pixmap() and actualSize() overloads that take a window pointer. For 100% correctness you want to target pixmap generation to a specific window, in case the system has a mix of normal and high-dpi displays. (The non-window versions uses QGuiApplication:: devicePixelRatio(), which returns the ratio for the "best" display on the system.) actualSize now returns the size in device-independent pixels - not the pixmap pixel size. This matches its intended use case which is layout calculations. Change-Id: I2eefc4ed4aa48b036a7019446694e56213070efa Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Remove unused private membersThiago Macieira2013-03-231-3/+1
| | | | | | | | | | | | | These members are in private classe, so we can safely remove them. qpathclipper.cpp:762:9: error: private field 'm_point' is not used [-Werror,-Wunused-private-field] qsimpledrag_p.h:100:20: error: private field 'm_cursor_drop_action' is not used etc. Change-Id: I35ed486eb959c49bb971700500a66411308ee7bc Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* QThread: fix race when setting the eventDispatcherDavid Faure2013-03-221-1/+1
| | | | | | | Use QAtomicPointer to make this thread-safe. Change-Id: If71f204699fcefabdb59bd26342d777d1cc9e2a7 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Show warning about QBackingStore::flush() only for toplevel windows.Friedemann Kleint2013-03-221-1/+1
| | | | | | | Task-number: QTBUG-30181 Change-Id: I8c9b515af022cb204649cb1e1f344f73a224c8b7 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Recommit b7b858595e6e2d8dcc9debeb45eb8b9b294b9be6Eskil Abrahamsen Blomfeldt2013-03-211-8/+0
| | | | | | | | This was accidentally removed as part of the merge from dev. Change-Id: I102ff0d67a136b0dbe467d83edccf02880536d7f Reviewed-by: Liang Qi <liang.qi@digia.com>
* Introducing QComposeInputContextGatis Paeglis2013-03-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When switching from Xlib to xcb platform plugin it was agreed that XIM is deprecated. Users should be using QT_IM_MODULE to load input context plugin for a more advance input method framework support. The proposed solution is to parse the compose file directly from Qt. This approach removes the overhead of communication protocols used in Xlib and/or IBUS. TableGenerator class follows [1]. The compose file is searched for in the following order: 1) If the environment variable $XCOMPOSEFILE is set, its value is used as the name of the Compose file. 2) If the user’s home directory has a file named .XCompose, it is used as the Compose file. 3) The system provided compose file is used by mapping the locale to a compose file from the list in /usr/share/X11/locale/compose.dir. Regarding step 3 - TableGenerator searches in hard-coded locations for system-provided compose files. Here I have introcuded a new environment variable QTCOMPOSE which can be used to prepend an extra location to be searched. [1] http://www.x.org/archive/X11R7.7/doc/man/man5/Compose.5.xhtml Task-number: QTBUG-28183 Change-Id: I76dcfd454f3acc23db98192a3673c1ab2af4425f Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* Merge remote-tracking branch 'gerrit/release' into stableSamuel Rødal2013-03-211-6/+6
|\ | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/features/qt_module_headers.prf mkspecs/features/qt_tool.prf src/angle/angle.pro src/tools/bootstrap/bootstrap.pro tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp Change-Id: Ide5759fe419a50f1c944211a48f7c66f662684e0
| * Fixed artifacts when drawing same line with different clips.Samuel Rødal2013-03-141-6/+6
| | | | | | | | | | | | | | | | | | | | Expanding on the change fixing QTBUG-24762 with the realization that any line needs to be drawn in a consistent way regardless of system or painter clip, not just dashed lines. Task-number: QTBUG-25036 Change-Id: Ief7ef19cc92c52e7d792500a581a072ba032767e Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* | Merge branch 'dev' into stableOswald Buddenhagen2013-03-20301-2096/+94498
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This starts Qt 5.1 release cycle Conflicts: src/gui/text/qfontdatabase.cpp src/gui/text/qharfbuzz_copy_p.h src/widgets/kernel/qapplication.cpp src/widgets/kernel/qcoreapplication.cpp Change-Id: I72fbf83ab3c2206aeea1b089428b0fc2a89bd62b
| * | Fix the font engines leakingKonstantin Ritt2013-03-206-111/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. when there were some engines with ref > 1 in the cache, prior to calling QFontDatabase::{add,remove}ApplicationFont()/removeAllApplicationFonts() (QFontCache::clear() has never decreased engine's cache_count); 2. when the QFontEngineData's engine is not in cache i.e. the Box or Test font engine (~QFontEngineData() didn't free engines it keeps). Instead of using the font engine's (external) "cache_count" counter, QFontCache now references a given font engine every time it is inserted to the cache and dereferences exactly that number of times in clear(). Change-Id: I87677ebd24c1f4a81a53526f2e726e596b043c61 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Move QTextEngine implementation details from QTextLayoutKonstantin Ritt2013-03-193-86/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As of now, we'll have everything related to the additional formats handling just in a single place. Make specialData private to prevent accessing it from outside. This helped in tracking-down several related issues: - in format(const QScriptItem *), the resolvedFormatIndices can not be empty at that point, so the code path is dead; - in resolveAdditionalFormats(), testing if formats has not been indexed yet is not needed since they are indexed just in the setter; - in useRawFont mode, hasFormats() didn't check if QTextEngine really has some formats, which potentially leads to formatting artifacts. Change-Id: Id4b912888fd5a1fa83f01007170134b6386e2879 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
| * | Fix build on iOS by using QOPENGLF_APIENTRY intead of APIENTRY directlyTor Arne Vestbø2013-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | QOPENGLF_APIENTRY masks over GL vs ES, as we need GL_APIENTRY on iOS, where APIENTRY is not defined. Change-Id: I60c097d67e0844c30913c913cf88a9b9e181813b Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | Make sure that we #include qconfig.h before testing for features.Thiago Macieira2013-03-1914-4/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is mandatory in public headers (qiodevice.h, qopengl*, etc.), but it's a good idea even in private headers, in case someone includes that header first somewhere. In particular, all platformsupport API is private. Change-Id: If287baa5d9ed14e93c1666efa0e6332c4c1cd9a4 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| * | Perform kerning in QRawFont::advancesForGlyphIndexesAllan Sandfeld Jensen2013-03-192-7/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Being able to calculate advances for series of glyphs include kerning is important to be able get kerning on QGlyphRun. Note this kerning is only truetype kerning, since opentype kerning is performed during shaping. Change-Id: I8d7458066431cbdce699647056fd0d7a76b20aa2 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| * | Add the Deselect StandardKeyAlbert Astals Cid2013-03-182-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ctrl + Shift + A as inverse of Ctrl + A Works in both KDE and GNOME widgets so put as KB_X11 Change-Id: I3d1781933fcf7db03685453deef8612052cc879a Reviewed-by: David Faure (KDE) <faure@kde.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| * | Add convenience distance methods to QVector2DLaszlo Papp2013-03-182-0/+36
| | | | | | | | | | | | | | | | | | Change-Id: I8ecdda35912a95e69c2f8dd98ce9c41c77b222d2 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
| * | Whitespace cleanup: remove trailing whitespaceAxel Waggershauser2013-03-1632-126/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove all trailing whitespace from the following list of files: *.cpp *.h *.conf *.qdoc *.pro *.pri *.mm *.rc *.pl *.qps *.xpm *.txt *README excluding 3rdparty, test-data and auto generated code. Note A): the only non 3rdparty c++-files that still have trailing whitespace after this change are: * src/corelib/codecs/cp949codetbl_p.h * src/corelib/codecs/qjpunicode.cpp * src/corelib/codecs/qbig5codec.cpp * src/corelib/xml/qxmlstream_p.h * src/tools/qdoc/qmlparser/qqmljsgrammar.cpp * src/tools/uic/ui4.cpp * tests/auto/other/qtokenautomaton/tokenizers/* * tests/benchmarks/corelib/tools/qstring/data.cpp * util/lexgen/tokenizer.cpp Note B): in about 30 files some overlapping 'leading tab' and 'TAB character in non-leading whitespace' issues have been fixed to make the sanity bot happy. Plus some general ws-fixes here and there as asked for during review. Change-Id: Ia713113c34d82442d6ce4d93d8b1cf545075d11d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| * | Long live QOpenGLDebug!Giuseppe D'Angelo2013-03-153-2/+2030
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Qt convenience classes for the GL_KHR_debug extension This allows the developer to 1) ask the GL for a log of the last generated messages; 2) emit Qt signals whenever the GL wants to tell us something. Change-Id: I830343a26714c51abb68ce1269163c145d1e2aac Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
| * | Add a minor convenience for calculating the distance to a pointLaszlo Papp2013-03-152-0/+14
| | | | | | | | | | | | | | | Change-Id: I312727bf6858ead6c30fe20bf3abc5afc73a3a14 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * | Fix calling convention in ANGLE builds on WindowsSean Harmer2013-03-151-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Desktop OpenGL builds on windows correctly define APIENTRY whereas at present the ES2 (ANGLE) builds do not. This leads to QOPENGLF_APIENTRY having the wrong calling convention. This fix is required for https://codereview.qt-project.org/#change,48660 but may also fix any random crashes that people may be seeing with other Qt-wrapped OpenGL functions in ANGLE builds. Change-Id: I8068c181d41be949d29168bd5ca1a181cc2245c7 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| * | QTextEngine capitalization doesn't work with QRawFontAllan Sandfeld Jensen2013-03-141-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | The capitalization settings is attempted read via specialData->addFormats, but the QTextCharFormat there is reset when added, and should instead be accessed through specialData->addFormatIndices. Change-Id: I190c419f07c3f7e803ca1d44059e8f538216b9ab Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
| * | Move Unicode script itemization code from text engine to UnicodeToolsKonstantin Ritt2013-03-141-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is still the same trivial implementation with the only difference in that that it properly handles surrogate pairs and combining marks. This temporarily makes QTextEngine::itemize() insignificatly slower due to using intermediate buffer, until refactoring is done. Change-Id: I7987d6306b0b5cdb21b837968e292dd70abfe223 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
| * | Make qaccessible2.h internal.Frederik Gladhorn2013-03-144-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This should have been done right from the start, instead we only made the documentation internal. Also remove the classes from the BIC data. Change-Id: I238a7a7cc5d26980b23931c78e7e5a4477d46920 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
| * | Warn about accessibility interface creation failure only onceFrederik Gladhorn2013-03-141-1/+6
| | | | | | | | | | | | | | | Change-Id: I0555d7d2417149f0eec54b228b842a61d0d08f85 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
| * | Window deactivation should set focus reason.Frederik Gladhorn2013-03-131-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: Iccc46880278bc5f7fe2b706efcdf9b4e6483c3e6 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Caroline Chao <caroline.chao@digia.com>
| * | Don't include custom qopengles2ext.h on iOSTor Arne Vestbø2013-03-131-21/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the build after ec9c0faefd (Update gl2ext.h with the latest version from Khronos). Just like Mac OS X, iOS is a controlled platform, and we should include the system headers instead. The OES_EGL_image_external extension is not yet in the system headers though, so we provide our own typedef to make the qopenglextensions.cpp code build, and the extension will work out of the box once Apple includes driver support for it. Change-Id: Ib6ba09d400ba38f05d91c90d4c9e54a8626889e1 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| * | QTextEngine::itemize(): Minor optimizationKonstantin Ritt2013-03-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid using script_to_hbscript() in generateScriptItems()'s loop. This is absolutely unnecessary due to hbscript_to_script(script_to_hbscript(..)) in QTextEngine::itemize(). Change-Id: I44e710d010f8e57043a6c74dd80f3164e95e18e6 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Hide Harfbuzz from the outer worldKonstantin Ritt2013-03-132-96/+0
| | | | | | | | | | | | | | | | | | | | | | | | Don't export, don't generate private headers, don't mention HB in API. Change-Id: I048ebd178bf4afaf9fda710a00933b95274cf910 Reviewed-by: Josh Faust <jfaust@suitabletech.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Avoid using HB types in QFontEngine APIKonstantin Ritt2013-03-136-55/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This affects HB_Font and HB_Face. As of now, the Hurfbuzz API usage is concentrated in qfontengine(|_ft).cpp and qtextengine.cpp, thus it is a lot easier to switch to Hurfbuzz-NG. Change-Id: Ie06959efd5d6080fe44c407d9f5de0a07dd1c210 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Josh Faust <jfaust@suitabletech.com>
| * | Replace HB types used in API with Qt analogsKonstantin Ritt2013-03-1212-66/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | hb_uint32 <-> quint32 HB_Glyph <-> glyph_t HB_Fixed <-> QFixed, HB_FixedPoint <-> QFixedPoint HB_GlyphAttributes <-> QGlyphAttributes Change-Id: I4338ec4ce9a9c20ea591606ab10e6ef4f19931b8 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Do not list desktop widgets and desktop screen widgets as top-levels.Friedemann Kleint2013-03-121-1/+1
| | | | | | | | | | | | | | | | | | Change-Id: Iea4905d802213848594d2ad0266696e5edb884f8 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
| * | Get rid of qt_determine_writing_systems_from_truetype_bits()Konstantin Ritt2013-03-124-132/+112
| | | | | | | | | | | | | | | | | | | | | Move this code to QPlatformFontDatabase and get rid of all dups of it. Change-Id: Idea6c84819039bf3b345b1305305951ade8d1ac4 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Avoid crash in QVertexArrayObject destructorSean Harmer2013-03-121-1/+2
| | | | | | | | | | | | | | | | | | Change-Id: If43c7b1cfdee504171a26b07db2ade9c20528299 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| * | Add QOpenGLTimerQuery and QOpenGLTimeMonitor classesSean Harmer2013-03-124-3/+1174
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QOpenGLTimerQuery encapsulates a single OpenGL timer query object. QOpenGLTimeMonitor is a convenience wrapper around a sequence of OpenGL timer query objects that can be used to profile OpenGL rendering code or to allow real-time adaptation of rendering methods based upon run-time performance. Change-Id: I873e591927080dea2b079b0e2a1eb9fed15c0372 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: James Turner <james.turner@kdab.com>
| * | Update gl2ext.h with the latest version from KhronosGiuseppe D'Angelo2013-03-121-20/+461
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds (amongst other things) the support for the GL_KHR_debug extension, which is required by QOpenGLDebug classes. Change-Id: Id8b80968807e4f3db7eebd8cc9d9beae23b5d7e2 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
| * | Fix warning about unhandled enumeration value.Friedemann Kleint2013-03-121-0/+2
| | | | | | | | | | | | | | | Change-Id: Ic22a9bddfa04c286f359bc29e1d5d1ec8ef98ecc Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| * | Documentation and versioning for new Window propertiesShawn Rutledge2013-03-122-18/+28
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-29807 Change-Id: Id03ae17270832a7b5915e4324a508e591c0b6d98 Reviewed-by: Alan Alpert <aalpert@blackberry.com> Reviewed-by: Laszlo Papp <lpapp@kde.org>
| * | Add methods to convert lists of QKeySequence to/from stringsKevin Ottens2013-03-062-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QKeySequence provides conversion to and from strings. But a similar convenience was missing for QList<QKeySequence>. It would come in handy when you want for instance to save/restore the shortcuts of a QAction. Change-Id: I9e4f2001c58a595392a5019a57c564992c39bf88 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: David Faure (KDE) <faure@kde.org>
| * | Implement XEmbed protocolAlberto Mardegan2013-03-068-8/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a static QWindow::fromWinId(WId id) constructor which can be used to create a QWindow object representing windows created by other processes. Then, QWindow::setParent() can be used to embed a window into a foreign window socket and QWindow::setTransientParent() to stick the current window on top of a foreign window. The changes in the QtWidgets module ensure that the focus chain (TAB navigation) correctly works when a QtWidgets-based window is embedded into another application. As far as the platform implementation is concerned, this commit only implements the embedding functionality in the XCB plugin. So, this is roughly equivalent to the Qt4 QX11EmbedWidget functionality. Change-Id: Iff8f7b9ee974d33fb30f36056f7838b433a413c7 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-03-0510-5/+68
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure qmake/generators/mac/pbuilder_pbx.cpp src/corelib/kernel/qtimerinfo_unix.cpp src/plugins/platforms/cocoa/qcocoabackingstore.mm src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/windows/qwindowswindow.cpp src/plugins/platforms/xcb/qglxintegration.cpp Change-Id: I8d125fe498f5304874e6976b53f588d3e98a66ac
| * | | Fix crash in flushWindowSystemEvents() in QGuiApplication-cleanup.Friedemann Kleint2013-03-052-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Check for existence of QGuiApplication, discard events if it is 0. Change-Id: I04b27679033fb13ef2fa38e39757d89465cba94b Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
| * | | Output window in warning about flush() for unexposed window.Friedemann Kleint2013-03-051-2/+5
| | | | | | | | | | | | | | | | | | | | Change-Id: I1dd975926c2bea7bcc10a702739836b16b656213 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
| * | | Introducing the Qt Android portPaul Olav Tvete2013-03-051-3/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on the Necessitas project by Bogdan Vatra. Contributors to the Qt5 project: BogDan Vatra <bogdan@kde.org> Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> hjk <hjk121@nokiamail.com> Oswald Buddenhagen <oswald.buddenhagen@digia.com> Paul Olav Tvete <paul.tvete@digia.com> Robin Burchell <robin+qt@viroteck.net> Samuel Rødal <samuel.rodal@digia.com> Yoann Lopes <yoann.lopes@digia.com> The full history of the Qt5 port can be found in refs/old-heads/android, SHA-1 249ca9ca2c7d876b91b31df9434dde47f9065d0d Change-Id: Iff1a7b2dbb707c986f2639e65e39ed8f22430120 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>