summaryrefslogtreecommitdiffstats
path: root/src/gui
Commit message (Collapse)AuthorAgeFilesLines
* Port to the new QUrl APIThiago Macieira2012-03-302-3/+3
| | | | | | | | | | | | | | The use of any broken-down components of the query now needs QUrlQuery. The QUrl constructor and toString() are now rehabilitated and the preferred forms. Use toEncoded() and fromEncoded() now only when we need to store data in a QByteArray or the data comes from a QByteArray anyway. Change to toString() or the constructor if the data was in a QString. Change-Id: I9d761a628bef9c70185a48e927a61779a1642342 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Remove the old code using MMX registers.Thiago Macieira2012-03-2810-1687/+8
| | | | | | | | | | | | | | | | | | | There are only 8 MMX registers, each 64-bit wide, and they alias the x87 registers. The access to the MMX register cannot use the new VEX-prefix instructions either. All of the functions being replaced are either present in the qdrawhelper_sse2.cpp and qdrawhelper_ssse3.cpp files, or the plain C++ function in qdrawhelper.cpp is vectorised when compiled with -ftree-vectorize (enabled in -O3), if SSE2 support is enabled. All x86-64 processors have SSE2, so this is a net improvement for 64-bit builds. For 32-bit builds, without further support this will cause the code to use non-vector or x87 instructions, which aren't the best. The solution will come in another commit. Change-Id: I4a22d8a2516b79172867510202d0fd627db54807 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* Remove WA_PaintOutsidePaintEventDebao Zhang2012-03-281-23/+1
| | | | | | | | | WA_PaintOutsidePaintEvent is only suggested to be used when porting Qt3 code to Qt 4 under X11 platform. and it has been broken now. Change-Id: Ie4297b2a449f1055ca10ada9efb930e6018b1efb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Merge master into api_changesKent Hansen2012-03-2719-35/+83
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qisenum.h src/dbus/qdbusconnection_p.h src/widgets/kernel/qwidget.cpp tests/auto/other/qaccessibility/tst_qaccessibility.cpp Change-Id: I85102515d5fec835832cc20ffdc5c1ba578bd01d
| * Fix annoying deprecation warning about QImageTextKeyLangThiago Macieira2012-03-261-3/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we deprecate the entire class, then we get the warning for every use of it with GCC, including the three operators defined inside the class. So instead, mark as only the constructors as deprecated, which should reduce the warnings to the places where the class was instantiated. That should be enough to poison the code enough: to fix the warning, you need to stop using the class there and/or stop calling one of the deprecated functions that deal with it. Unfortunately, we still get one more warning inside the inline code, in QImage::textList. To remove that warning, we disable all deprecation warnings around that code block. Change-Id: If3c11647a9d2cab055e15810d7cfe0d8f5e7042f Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
| * Password editor mask delay stylable by platform pluginPekka Vuorela2012-03-264-1/+11
| | | | | | | | | | | | | | | | | | Replaced hard coding as QT_GUI_PASSWORD_ECHO_DELAY with a style hint. Change-Id: I0b78ebad723dbe19d9b9496583203e31545874e2 Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
| * Fix QGuiApplication::keyboardModifiers()Bradley T. Hughes2012-03-262-0/+8
| | | | | | | | | | | | | | | | | | Make sure that the keybaord modifiers are maintained properly when handling window system events. Change-Id: Ie75cbe5eb509c29e3d2291694f2de509fbf3098a Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
| * Remove the Q_STATIC_TEMPLATE_SPECIALIZATION macroThiago Macieira2012-03-263-9/+0
| | | | | | | | | | | | | | | | This was necessary only for older MS Visual Studio versions, which are no longer supported anyway. Change-Id: I6c96fb2340296c34b480716303c93b892419229b Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * Restore Qt4 compat in QDesktopServices::DataLocationDavid Faure2012-03-242-1/+21
| | | | | | | | | | | | | | "/data/" was appended to the base directory. Change-Id: I220f2ce74c36b795bc49c7c84106feb0709d1547 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Make sure windows send accessibility activated updates.Frederik Gladhorn2012-03-241-4/+17
| | | | | | | | | | | | | | | | Both QWindow and QWidgetWindow should update with the active state signal. Change-Id: I0219f803aa0fb109765f0faa0aedb120c2a439f0 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
| * Silence a warning about a change of sign.Thiago Macieira2012-03-241-1/+1
| | | | | | | | | | | | | | | | | | GLuint is, like the name says, unsigned. To store -1 in it, a change of sign happens. Silence the warning by casting the -1 to GLuint first. Change-Id: I165a32c486358a60f7c5fd0c439204ed2f9f7f16 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * Fix warnings about commas at the end of enumsThiago Macieira2012-03-243-3/+3
| | | | | | | | | | | | | | | | It's non-standard to accept them, so remove them and silence the warnings. Change-Id: I51c5afe99eac408f326ab9fcf40435b60e953b54 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * Fix deprecation warning about QPlatformWindow::visibleThiago Macieira2012-03-241-1/+1
| | | | | | | | | | | | | | The proper getter name of a boolean property is prefixed with is-. Change-Id: Id1fae9ccd11db3e92903c51012bbe75d52726a5a Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * API cleanup: remove CoordinateType enumJan-Arve Saether2012-03-241-9/+3
| | | | | | | | | | | | | | | | The bridge can do the mapping to and from screen position. This is now done in the windows bridge. Change-Id: I5ca5df0fbeeb58202539f55a0f62717fb1685092 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
| * Fix warnings in qtbase.Friedemann Kleint2012-03-241-3/+0
| | | | | | | | | | Change-Id: I981e08872440e35eb9bfad32b20543cfce8439c9 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
* | Remove detection for MMX support and related technologyThiago Macieira2012-03-231-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | This also removes the check for SSE, but the check for SSE2 and further technologies is kept. If SSE2 is present, then SSE is too. We don't have any code that uses the original SSE instructions only. Remove the CMOV detection, since we don't use that anywhere and we're not likely to ever use them.. Change-Id: I3faf2c555ad1c007c52a54644138902f716c1fe1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* | Merge "Merge master into api_changes" into refs/staging/api_changesKent Hansen2012-03-2326-63/+1134
|\ \
| * | Merge master into api_changesKent Hansen2012-03-2326-63/+1134
| |\| | | | | | | | | | Change-Id: I93551e4d13a1b0815b359b9415060e9089477db1
| | * Deprecate QInputMethodEvent::setTentativeCommitString()Pekka Vuorela2012-03-232-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | Free form tentative commit proved to require too much fiddling on rendered text vs. logical content. Needs simpler mechanism. Change-Id: Ia4e341abf342d25675fd1129efb11094dde410b2 Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
| | * Remove the workaround for GCC 3.3 on IRIXThiago Macieira2012-03-221-12/+0
| | | | | | | | | | | | | | | | | | | | | GCC 3.3 is no longer supported. IRIX is no longer supported. Change-Id: I1656a6fdcf2b244f0f6c812e71b0e793d37fb98b Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
| | * Fix compilation on ARM with C++11: narrowing conversionThiago Macieira2012-03-223-3/+3
| | | | | | | | | | | | | | | | | | | | | Cannot have double-to-float conversions inside { } in C++11. Change-Id: I13c27307efd703420b6667d919bb42c2ee82e6cc Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| | * Fix the build of -qt-freetypeThiago Macieira2012-03-221-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The symbol must be exported from QtGui for the plugins to be able to see it. Also, fix the build in namespaced case: cannot use extern in QtPlatformSupport because it's not compiled into the Qt namespace. Change-Id: I029533f3524e3cbf6c87aed79c1f2e7b55aebb9b Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| | * Add a non-implicit virtual destructor for QDashStrokerThiago Macieira2012-03-222-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | The base class has a virtual destructor, so the destructor is already virtual. Make it non-implicit so that the virtual table and other virtual inline methods don't get emitted everywhere. Change-Id: I15296c1114086ff0b1da701ccd51525bec99d76b Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| | * MIPS DSP configure detection and initial blend optimizations.Damir Tatalovic2012-03-228-1/+931
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds new MIPS configure test and -no-mips_dsp and -no-mips_dspr2 configure options. List of optimized implementations: - comp_func_SourceOver - comp_func_Source - qt_memfill32 - qt_destFetchARGB32 - qt_destStoreARGB32 - blend [RGB32][RGB32] - blend [ARGB32_Pre][RGB32] - blend [RGB32][ARGB32_Pre] - blend [ARGB32_Pre][ARGB32_Pre] Change-Id: I35411858295b7b3f4895eb56e3b93397528903cc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Fixed QInputMethod API to use isVisible() instead of visible().Samuel Rødal2012-03-222-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | Deprecate the old API for now as not to break existing usages. Change-Id: I7abbbbe8a34951282537a9d74cded03743f44df7 Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
| | * FocusAboutToChange event to be send before focus changesPekka Vuorela2012-03-221-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Focus change happen as: FocusAboutToChange event -> focus change -> FocusOut event -> FocusIn event. Input method need to have focus when calling commit(). Notification on focus about to be lost allows QWindow implementations to commit in time. Also changes QWidget documentation to match code reality. Change-Id: I17a8a374a33dd700909f79e370b42348869261a6 Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
| | * Remove redundant \since 5.0Debao Zhang2012-03-223-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | \since 5.0 has been add to the class section, so member functions and properties donot need this any more. see SHA: 5728c8a8e7c994b931d340315c241350d646f62a Change-Id: I4e67461373dda99ee1fbfdeb6477fde1dcfec116 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
| | * Remove hardcoded font names in QFont::defaultFamily()Jiang Jiang2012-03-211-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QFont::defaultFamily() should not use any hardcoded font names like "Helvetica" or "Times" as they might not be present in certain systems, it should rather use abstract names like "sans-serif", "serif" and "monospace" then let the platform plugin to decide which font map to them. Change-Id: I5aafb103a5238c17b10773711ad504806c6fc3ce Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
| | * EGLFS: Integrate building into configure.Donald Carr2012-03-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the move to the QPA architecture EGL is now only required by individual platform plugins and the configure script has been adjusted to reflect this. Change-Id: Ieadacef0b970f29752d9e3e36a007e5cbb005b0d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
| | * Set the default QPA plugin for QNX builds to "qnx"Sean Harmer2012-03-201-0/+2
| | | | | | | | | | | | | | | | | | Change-Id: I630c3631d480929c1e3a618d0f0b084fd2cc6ad0 Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
| | * Fix KDE palette.Olivier Goffart2012-03-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In QKdeTheme We want to load every color. Else, only the first color is loaded, and the rest of the palette is just black making the applications basicaly not usable. But KDE only put in its config files the colors that are different from the default colors. This is the reason why we need to resolve against the style's default palette. We need to make sure the resolve_mask is 0 for an empty palette, even before the application palette is set. This was not required in Qt4 because the system palette was initialized differently. I realize this will only work with QApplication (and not with a single QGuiApplication) but it was not working before either. Change-Id: Ifb3c2c1358ef6d83a1ca5aa8fac3d2d4ea712b94 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
| | * Remove QAccessibleEvent child parameter.Frederik Gladhorn2012-03-192-17/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | This makes the api cleaner and generally the child should not be there. It is only sometimes more convenient not to create a QAccessibleInterface instance, so the functionallity is kept. Change-Id: I26018a6d3e0549f4d79856775b4167c5660e229d Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
| | * Accessibility: add text update eventsFrederik Gladhorn2012-03-192-11/+150
| | | | | | | | | | | | | | | Change-Id: Iece9d100b3f5a379d7d8e29dea67a10d0c918c06 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
| | * Fix the compat handleWheelEvent function.Morten Johan Sorvig2012-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Only set the angleDelta QPoint when the platform sends a delta/orientation pair. Change-Id: I0440dca8b290bce10830c04ba42c5c955cd8e001 Reviewed-by: Luis Gabriel Lima <luis.gabriel@openbossa.org> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* | | Cleanup Q3* itemsDebao Zhang2012-03-235-33/+0
|/ / | | | | | | | | | | | | | | Cleanup Q3* items from QtCore and QtGui modules. Change-Id: Id214a077a50e99d820c84e96e34866492a0130d8 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* | Got rid of Map / Unmap events in favor of Expose event.Samuel Rødal2012-03-2210-68/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since change 2e4d8f67a871f2033 the need for Map and Unmap events has gone away, as now the Expose event is used to notify the application about when it can start rendering. The Map and Unmap events weren't really used except by QWidget to set the WA_Mapped flag, which we now set based on the expose / unexpose. Also guarantee that a Resize event is always sent before the first Expose, by re-introducing an asynchronous expose event handler. Since an expose is required before rendering to a QWindow, show a warning if QOpenGLContext::swapBuffers() or QBackingStore::flush() if called on a window that has not received its first expose. Change-Id: Ia6b609aa275d5b463b5011a96f2fd9bbe52e9bc4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* | Crash fix in ~QVariantJędrzej Nowacki2012-03-212-11/+0
| | | | | | | | | | | | | | | | QVariant handlers can not be unregistered. We are not able to guarantee that such operation is safe and we do not want to. Change-Id: Id9a12e6a8c750110e4a08eab1de3e07e5c408675 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge master into api_changesKent Hansen2012-03-194-3/+53
|\| | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qvector.h tests/auto/corelib/kernel/qmetatype/tst_qmetatype.cpp Change-Id: I877256e95f3788e617437f4e9661a88047f38cd6
| * Make copy and assign private for QAccessibleEvent.Frederik Gladhorn2012-03-181-2/+4
| | | | | | | | | | | | | | | | | | Also make the handling of events in the test pointer based since mac-g++ doesn't seem to like const references the way they were before. Change-Id: I7fe39978d4729b8e586be30978b74aa51ca7cfe6 Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
| * Add QWindowSystemInterface::tryHandleSynchronousShortcutEvent()Bradley T. Hughes2012-03-172-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This function sends a shortcut override through the shortcut system and returns the result of the event. This will be used in platform plugins (such as the Cocoa plugin) to make sure that shortcuts work when the user presses a dead-key combination that normally would go through an input method to produce text. An extended overload taking native scan code, virtual key, and modifiers has also been added. Change-Id: Ia3836229ab0c66d2fb6f310e72b6f4d6dfa9ead9 Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
| * Fix font cache check in QFontEngineFT::recalcAdvances()Miikka Heikkinen2012-03-161-1/+3
| | | | | | | | | | | | | | | | | | | | Cached font was used regardless of the format, resulting in incorrect advance in some cases when default format differed from the cached format. Task-number: QTBUG-24188 Change-Id: I39e4156bd9ba743afa7e106e934c90227fbf2b8b Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
* | Merge master into api_changesKent Hansen2012-03-1634-68/+273
|\| | | | | | | | | | | | | | | | | Conflicts: src/corelib/kernel/qmetatype.cpp src/gui/kernel/qplatformsurface_qpa.cpp tests/auto/corelib/tools/qtimeline/qtimeline.pro Change-Id: Iff3fff34eeeb06f02369767ddfce44cfde505178
| * Add a note to QTouchEvent docs about empty touchpoint listsLaszlo Agocs2012-03-151-3/+4
| | | | | | | | | | Change-Id: I65e9e3ed2069d9194f5e70fb9731d605e0979e6d Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * Added missing \since 5.0 and tweaked some docs in QtGui.Samuel Rødal2012-03-158-4/+19
| | | | | | | | | | Change-Id: I91564f7a61962f97b9fb78c96d94d5695a3924db Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
| * Make QWindow::isActive return false when the application loses the focusAnselmo L. S. Melo2012-03-151-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | In QTBUG-24807 there is a test case that shows a case when a segmentation fault happens inside isAncestorOf. When the whole application loses the focus, e.g. when it is minimized or other application receives the focus, QGuiApplication::focusWindow() returns a null pointer, so we need to do a check before proceed inside of isActive. Task-number: QTBUG-24807 Change-Id: I732c92bb9f236804ede5e89592f6e6609a4711b9 Reviewed-by: Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * Fix compiling with --no-accessibilityJerome Leclanche2012-03-152-0/+6
| | | | | | | | | | | | | | | | Adds missing QT_NO_ACCESSIBILITY checks where required to build without accessibility support. Change-Id: Id98ecdcb9b351289b21dc2d382100d0b63857db9 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
| * Use pointers for QAccessibleEvent.Frederik Gladhorn2012-03-156-9/+9
| | | | | | | | | | | | | | | | | | At least on mac g++ badly wants to copy the event and cannot use the copy ctor. The sensible solution is thus to use pointers. This is in line with QCoreApplication::sendEvent. Change-Id: Icb58852be351ab04ffa17069989d7a07d4b377da Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
| * implement virtual destructor in QPlatformSurfaceGunnar Sletta2012-03-152-0/+6
| | | | | | | | | | Change-Id: Iaadd9c3cd7c2e2022066ca859cbe1e912050c561 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * Add a way to query for global handles in QPlatformNativeInterfaceJørgen Lind2012-03-152-0/+6
| | | | | | | | | | Change-Id: I4f29f40a3d6d4237f7da092bb34b8e596321b47d Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * Refactor theme plugin loading.Friedemann Kleint2012-03-153-6/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the old implementation, the QPlatformIntegration was asked for the theme first, so there was no way of overriding that by a custom plugin. Also, there was a memory leak in case the platform theme was actually created by a plugin. QGuiApplication now asks the QPlatformIntegration for a list of potential theme names first, tries to load them using the plugin loader and finally invokes a factory method of QPlatformIntegration in case that fails. The theme is now owned by QGuiApplication. In the XCB plugin, the environment variable DESKTOP_SESSION is queried and appended to the list of themes, making it possible to load plugins for other session types. Change-Id: I1a4b4e061815bca16c65b23e591bb7563a3e44e2 Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>