Commit Graph

1831 Commits

Author SHA1 Message Date
Frederik Gladhorn
ff20caae2b Accessibility: Activate in QGuiApp instead of QApp.
This makes it possible to use accessibility with
QQuickWindow.

Change-Id: I5fccd5f25021c4953b03e146705f48a198dbaaa7
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-16 19:41:58 +01:00
Andy Shaw
0c3cfdba45 Mark the QDesktopServices::StorageLocation enum as obsolete in the docs
The enum was already deprecated but the documentation still listed it
so now it is correctly obsoleted.

Change-Id: I9d64fe58a5e70de7161928da2d09b4532d450274
Reviewed-by: Liang Qi <liang.qi@digia.com>
2012-12-14 19:51:57 +01:00
Samuel Rødal
52619ae778 Fixed invalid memory read in SSSE3 image blending code.
We need to do bounds comparison on the actual offset we're going to use
with _mm_load_si128 to read 16 bytes from memory (even though we won't
use the trailing bytes in the end).

Task-number: QTBUG-28324
Change-Id: Id0d6094da796ca67338d8ad225fa6b2f309bbe6e
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-12-14 17:12:44 +01:00
Frederik Gladhorn
f563599a46 Implicit conversion of shortcuts to string is gone.
This only effects compilation with DEBUG_QSHORTCUTMAP.

Change-Id: I184e644f2165049336cee8a6ac63a3301cf4c849
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-12-14 17:12:44 +01:00
Morten Johan Sorvig
c3b6c04245 Fix memory leak in childAt
Delete the interface if it's not returned.

Change-Id: Ia1e1f94d14584ab3af1b89a0baac5d343ffdd1f4
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2012-12-14 17:12:44 +01:00
Nico Vertriest
e4cd399ef6 Entered hardcoded url for Gnu Emacs
Corrected in qkeysequence.cpp
Link from external-sites not working
So, entered hardcoded url.
Task-number: QTBUG-27512

Change-Id: I5b8d25d2b1f4f4fb0d57d2306de7f1b7c3dc40e3
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2012-12-14 13:06:53 +01:00
Jiang Jiang
fa7661d8b2 Fix styleName support in QPA font database
Font styleName support was disconnected since Qt switched to QPA
fontdatabase. Now add the code from Qt 4.8 back to enable this in
QPA.

Change-Id: Iab2cbfd5468f87542183348c2123ca4b2c270692
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2012-12-14 08:56:02 +01:00
Liang Qi
3c09f6bc9a Mac: fix bugs for font selection in QFontDialog
Use localized family name and style name when selecting font with
non-English locale

Task-number: QTBUG-27415
Change-Id: Ie81507ed011fc096e0f5edad146e97c392e86494
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2012-12-14 08:56:02 +01:00
David Faure
60bd2156f8 XCB: add support for getting and setting appTime and appUserTime.
The QX11Info class needs this.

This required adding the missing nativeResourceFunctionForScreen
in QPlatformNativeInterface.

Change-Id: I2c6e91c7f122f3ecdf769a177deafd2aa3896e2f
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Alberto Mardegan <mardy@users.sourceforge.net>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-12-14 08:56:02 +01:00
David Faure
92bd9aecfb Fix empty window title regression, add application display name to window title
This increases consistency a lot: all windows and dialogs from a Qt
application will show the app display name in the caption, on Windows and X11.
This helps identifying which app a dialog belongs to, which is especially
useful when the dialog is very generic and shows up unexpectedly.

For compatibility reasons, the app name is added to the caption only
if setApplicationDisplayName() was called -- or if the caption would be
completely empty. The standard Qt4 case (setWindowTitle + no display name)
is unchanged.

Change-Id: Ib284c62c1f4c0bc923e5bc2d10247d95e9aa76c1
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-12-14 08:56:02 +01:00
Friedemann Kleint
76ce3e6419 Fix QWidget::setWindowOpacity() when called before show().
Pass opacity from the QWidget to QWindow and to the platform
windows.

Task-number: QTBUG-28477
Change-Id: If5a85d9183bd1ca33dac2052936ecd1e6c0b5f6c
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-12-12 21:55:57 +01:00
Frederik Gladhorn
22c234a34e Accessible: Improve value interface
The stepSize property was missing in Qt 4 and is
a sensible addition to the value interface.

Change-Id: I7571800d50ee7e4194c09c4db40300809a1ce45a
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2012-12-12 15:30:53 +01:00
Shawn Rutledge
f97c8d40c3 De-inline all setters in QWindow
If we don't do this, we can have binary compatibility issues later.
For example https://codereview.qt-project.org/#change,41700 will change
the behavior of setWidth and setHeight to call setSize instead of
setGeometry, because we don't want changing the height to also set
the position of a window; if x and y are left uninitialized it needs
to remember that fact.  But if setWidth is left as an inline method,
calling setGeometry, then an application which was built with 5.0
would behave differently than an application built with 5.1, even if
Qt is upgraded after the application was built.  To generalize,
setters should never be inlined.

Change-Id: I1ec42cb61a45fe541b3f3bb99d1b1ca24ad2a517
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-12-12 14:49:46 +01:00
Vitaliy Kharin
49ba35b990 QSpanData: use isAffine() instead of rolling your own test
QSpanData did not properly check that whether the matrix is an affine
transformation or not. Therefore, qt paint engine chose the wrong
algorithm for drawing in case of a perpective matrix.

Change-Id: If0523bd45e86679a08874713da3fbe33a9852551
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2012-12-12 10:47:48 +01:00
Gunnar Sletta
508db17de3 Some fixes to the OpenGL docs in GUI
Change-Id: I6415ff16b1765a5814d50a4cd39db00495d43073
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2012-12-12 10:47:48 +01:00
Florian Hänel
f65c85c004 FreeType bitmaps interpreted in wrong format
We ask grayscale or mono bitmaps from FreeType but in some cases treat
the output as ARGB without conversion. This surfaces using QGLWidget as
a viewport to QDeclarative content. The offending glyphs are then
generated through QTextureGlyphCache::textureMapForGlyph. This adds a
fix for converting to the expected ARGB32 data.

Change-Id: Ia219582ebd76b7e4e9379111a42312b4d97718de
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2012-12-12 10:47:48 +01:00
Samuel Rødal
d0a6d6a215 Remove incorrect and confusing documentation from qplatformwindow.cpp
Change-Id: If3fd383bf7ff08a04df2e11c727c11aeef05a6de
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2012-12-11 13:37:57 +01:00
Nico Vertriest
de8b1ff884 Added url for SVG Color Keyword Names QTBUG-28500
Change-Id: I7aaf2cbd9b4bf4e6ff35fa39c5340e3dbc4225ff
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2012-12-11 10:51:49 +01:00
Nico Vertriest
c27b33ada0 Added hardcoded url QTBUG-28500
Change-Id: Ida2bcd8e470cc336db69dcec6130ad942e14d3a0
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2012-12-11 10:51:39 +01:00
Volker Krause
0c5e232828 Compile with QT_NO_CURSOR.
Mostly straightforward, the a11y changes might look a bit drastic, but the
base class QAccessibleTextWidget was already disabled in this case, so we
have to obviously take out its sub-classes as well.

Change-Id: I682ace20d6938688ddb1da23c3463f3c025fab8e
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Tasuku Suzuki <stasuku@gmail.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
2012-12-07 08:46:15 +01:00
Laszlo Papp
425367f892 Make the documentation more explicit an talkative
Change-Id: Ifa4b7c3c5f8ec384addbb80a9436d55b32d8bc51
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-12-07 08:45:29 +01:00
Samuel Rødal
7da7bbcd87 Removed requestOrientation() API from QWindow.
There are no proper implementations of this API, and as it stands it
only acts to confuse anyone who stumbles across it. It will be better to
revisit the full cross platform orientation API story for 5.1.

Change-Id: Iff7054a32c6e5e4ad0cc0493a5e4ecc35a6ec4f3
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2012-12-06 20:37:13 +01:00
Eskil Abrahamsen Blomfeldt
f3bbf55cbe doc: Add changes to dnd docs from qtdoc repository
Change da54c5e7c9bf7647664a3529a6db487dee94d331 in the qdoc
repository was made to the wrong version of this documentation.
This change just adds them in qtbase and fixes some of the snippets
which were still broken.

Change-Id: Ie9ba57b5a2d20a629aa5f0a492daa207d35b2053
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2012-12-06 16:45:52 +01:00
aavit
0fc1b9d06e Fix: Do not require GL library if configured with -no-opengl
qt_lib_gui.pri would add an unneeded -lGL, causing the build to fail
on systems with no GL libraries.

Change-Id: I3a49418e1393642e9d97999b79741cc2144a99af
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-06 12:49:02 +01:00
Tasuku Suzuki
6a98976791 Make qtbase compile with QT_NO_IMAGEFORMATPLUGIN
Change-Id: I1fef96481fa902cfd9de63fa814f70412eee4d15
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: aavit <eirik.aavitsland@digia.com>
2012-12-05 15:30:07 +01:00
Samuel Rødal
d7afbdc2d2 Fixed crash in tst_qguiapplication with QT_QPA_PLATFORM=minimal
The tst_qguiapplication creates and destroys multiple instances of
QGuiApplication. Since the minimal platform plugin doesn't report any
theme names, the platform_theme never gets set to 0 in init_platform,
and we end up trying to use or at least delete an already deleted
QPlatformTheme.

Change-Id: I1a41d55b0705c5531c019e60a7a96dac144bacb7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-12-05 11:35:16 +01:00
Oswald Buddenhagen
5ea41a2efa properly syncqt-ize harfbuzz headers
we were already installing them into QtCore/private, so turn them into
proper private headers to start with. this cleans up our project files.

Change-Id: I0795f79e03b60b5854de9e4dc339e9b5a5e6fd87
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-04 13:57:55 +01:00
Friedemann Kleint
81f3b354df Fix warning about cast from ASCII.
Change-Id: Icc251a8d26db022077c84ff2d0911868b56c9fd6
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
2012-12-04 13:44:39 +01:00
Oswald Buddenhagen
23153fb8c5 Merge branch 'master' into stable
Change-Id: I5c0c9a131cca64fea3bc784339d14d84076edc1a
2012-12-03 21:58:14 +01:00
Shawn Rutledge
5021c1d977 xcb: notify when the logical DPI changes; add Q_MM_PER_INCH constant
Change-Id: I15696bf45ae99cc5b0fd95dab4884fc85cbfc6da
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-12-03 14:29:37 +01:00
Shawn Rutledge
168f32f3f4 Removed temporary backwards-compat properties and accessors in QWindow
Change-Id: I718b877e3b6c0b1191a932d934599d5c2f5aa958
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-12-03 14:29:27 +01:00
Andreas Holzammer
72388121aa WINCE: Fix missing cosf
cosf seems to be defined in the cmath header
for Windows CE, so include it to fix the
issue of not finding the symbol cosf.

Change-Id: I7317668838912325d45be0d4087ae3055940d3cd
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2012-12-03 09:22:13 +01:00
Sergio Ahumada
0df026de86 Stop using the name "Trolltech" in QSettings
Also change Trolltech for QtProject in other places

Task-number: QTBUG-23269
Change-Id: Ie4e344f23cab77c575562d18b481b3369ce30491
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-12-03 03:47:08 +01:00
Morten Johan Sørvig
5e61bbe586 Basic high-dpi "retina" support for Qt 5.
Bring Qt 5 on par with Qt 4, prepare for more comprehensive
support later on.

Introduce device independent pixels (dips), device pixels,
and devicePixelRatio. Add high-dpi support to QPainter,
QGLWidget, the cocoa platform plugin, mac and fusion styles.

Dips are similar to CSS pixels, Apple points and
Android density-independent pixels. Device pixels
are pixels in the backing store/physical pixels on screen.
devicePixelRatio is the ratio between them, which is
1.0 on standard displays and 2.0 on "retina" displays.

New API:
QImage::devicePixelRatio() and setDevicePixelRatio()
QPixmap::devicePixelRatio() and setDevicePixelRatio()
QWindow::devicePixelRatio()
QScreen::devicePixelRatio()
QGuiApplicaiton::devicePixelRatio()

Change-Id: If98c3ca9bfdf0e1bdbcf7574cd5b912c9ff63856
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2012-12-01 08:33:20 +01:00
Shawn Rutledge
93fe107b3a Renamed the keyboard-focus doc to make clear it's about Widgets
Also link from the widgets index page.

Change-Id: I49cd415b09d7458d89d75931ecfaafe29c226c6f
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2012-12-01 08:31:19 +01:00
Montel Laurent
ce68ca86f2 Fix compile when we use QT_NO_ACCESSIBILITY
Change-Id: I2d304fa6d91d86130eeb4a4aa07b43173d240312
Reviewed-by: David Faure <david.faure@kdab.com>
2012-12-01 01:49:46 +01:00
hjk
4902d381bd Replace two \returns markers by "The function returns"
Change-Id: I101310f6bd9bddf0ee9d06a81b9fef805313a015
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-11-30 23:56:06 +01:00
Montel Laurent
45ce4740ae Not necessary to assign bool to false for changing just 2 lines after
Change-Id: I4ed9a07e3dc2cac9d82b3070a2dd22cca2d80f3d
Reviewed-by: David Faure <david.faure@kdab.com>
2012-11-30 23:56:02 +01:00
Giuseppe D'Angelo
930207fc1f Add more qtbase implictly-shared classes to the list
QText*Format and QDns* ones are still missing.

Change-Id: I8e87fba596e87289ca935717e0a90bfc0b0a26c0
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-30 21:57:49 +01:00
Giuseppe D'Angelo
139d342f9b Add QText*Format classes to the list of the implicitly shared ones
Change-Id: Iee0ecb1cf02fdf9dbdf8328bbe60b1dc7ca21894
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-30 21:57:49 +01:00
J-P Nurmi
a03d3fd4d3 Docs: revise QApplication snippets
Change-Id: Ibbd31736154af6dd009d331578f9addc4de76e89
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-11-30 21:57:49 +01:00
Gunnar Sletta
06678fd0b5 Fix broken links in the QtWidgets examples.
I remove the widgets examples from the gui docs as they will
introduce broken duplicates (under doc/qtgui/...).

Change-Id: I54255ceaf4187477da3e82f6809be41fb98378a2
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2012-11-30 19:40:47 +01:00
Jocelyn Turcotte
27a945dccd Restore the visibility of a moved QWindow in QWindow::screenDestroyed
QWindow::screenDestroyed triggers an move of the window to the primary
screen. This causes the screen to be destroyed and shown again on the
new QScreen.

The issue is that QWindow::destroy() hides the window but create()
doesn't set it visible, and this ultimately causes any QWindow to be
automatically hidden when their QScreen is destroyed.

As stated in the comment, it could be the intended behavior that
windows aren't shown automatically on a remaining screen like when
using two screens not logically part of the same desktop. Once the
platform plugins have access to an API allowing them to adjust the
screens of their QWindow, this patch shouldn't be needed anymore.

Change-Id: I7628377c969f79f9eebb3deabaf0470542d68a9c
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2012-11-30 18:28:10 +01:00
Miikka Heikkinen
3ee48926e6 Fix crash when requesting QGuiApplication::platformNativeInterface()
If QGuiApplication has not been instantiated, this function would
crash. Change it to return NULL pointer instead.

Change-Id: Ia3d27019daa436d5243c9cce757a132d96aae112
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-11-30 08:23:11 +01:00
David Faure
eca4936ea2 Move session management code from QApplication to QGuiApplication.
QSessionManager was already in QtGui, but not usable since the only API
to get to it was still in QtWidgets. Session management isn't related
to widgets, it also applies to QML apps on the desktop.

The virtual commitData and saveState methods have been removed,
given the two signals which exist since 4.2, and an additional
isSessionSaving() method was added instead.

Change-Id: I8099e70df133303e74456706827da21f013fcc6a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-11-28 16:21:57 +01:00
J-P Nurmi
027168168c QGuiApplication docs: clarify that QWidget needs QApplication
Task-number: QTBUG-28076
Change-Id: I2ebbedd1916f472b9517b509f3b5499d93c71d45
Reviewed-by: Jing Bai <jing.bai@digia.com>
2012-11-27 19:31:21 +01:00
Konstantin Ritt
729ca17b39 Fix possible assertion when using stringToCMap() for a multi engine
If (*nglyphs < len), stringToCMap() sets *nglyphs to len and returns
false immediately; the caller then must resize the buffer and re-try.
However, QFontEngineMulti::stringToCMap() doesn't update the nglyphs value
and thus the second call would fail, too. This is quite unexpected.

Change-Id: Id2cce7b9faf7706c382fccf023e1b7affa9a10be
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2012-11-27 16:06:05 +01:00
Samuel Rødal
7a7102ad07 Fixed abbreviations in QWindow::framePos() and QWindow::setFramePos().
As 672e7c875e did changing pos() to
position() and setPos() to setPosition().

Luckily there's not much code that uses these.

Change-Id: I1e1982f00412a22bd376e667a5e8c30b6149f9b5
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-11-27 15:24:31 +01:00
Eike Ziller
8534bb3dd6 Fix example paths in example manifests that are used by Qt Creator.
Task-number: QTBUG-27801
Change-Id: I345c009fc0e4e1c1eabb43ad142e3b474e7a6fee
Reviewed-by: hjk <qthjk@ovi.com>
2012-11-26 17:33:37 +01:00
Sean Harmer
d6c38bf60a Remove last usages of qSin and friends from QQuaternion
Change-Id: I93fe1d22313da4cfa671603ccdbe9ac8f02cd73b
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-11-26 17:33:37 +01:00