| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
the diff -w for this commit is empty.
Started-by: Thiago Macieira <thiago.macieira@intel.com>
Change-Id: I77bb84e71c63ce75e0709e5b94bee18e3ce6ab9e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|\
| |
| |
| | |
Change-Id: I99af0bef7f1c931533a324ebcfb27c40ee871a5e
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The native child windows need to inherit the parent's visual in order
to have a translucent background as well.
Surface with type QSurface::OpenGLSurface should not be forced to use
the parent window's visual - the parent visual for instance, might not
even be GL capable.
Changing WA_TranslucentBackground during runtime is not supported, for
two reasons:
1) Other platform plugins seem not to support it
2) It would require recreating X windows.
Task-number: QTBUG-29625
Change-Id: Ic1474dd2de99069027481c7db6bf865f9b8d616d
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| |
| |
| | |
qwidgetbackingstore.cpp:72:20: error: unused function 'qRectIntersects' [-Werror,-Wunused-function]
Change-Id: Ia3afe8f0547fa86804093281db89efabe68b34a1
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The regression was introduced in bdebec4e2ef79f1771d2dcc22f9a919eb4487567.
Cocoa QPA plugin only could handle the shortcut with one key sequence, not the
multiple key sequences. We just let Qt to handle those cases.
Task-number: QTBUG-33627
Change-Id: I3898308d9f4ecda8bd716d8b286f05f9f311774a
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
|
|\|
| |
| |
| | |
Change-Id: Id13badc270db98806048753fd7fb658aa17f1ede
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change childWidget->windowHandle() to childWidget->internalWinId() in
q_createNativeChildrenAndSetParent() to determine whether should we call
childWidget->winId().
This is because in some circumstances Qt will crash due to accessing
deleted QWidgetWindow object if we use windowHandle(). Think about the
following scenario:
1) create a widget A without parent and add two child widgets B and C to A
2) create a native widget D as the child of B, note that when we set
Qt::WA_NativeWindow attribute to it, its QWidgetWindow will be created
which means its windowHandle() is not null.
3) create a top level widget E as the child of C and show it. This will
make Qt call createWinId() to A and then
q_createNativeChildrenAndSetParent() will be called to create A's native
children recursively and finally make D's QWidgetWindow object become a
child of A's QWidgetWindow object. Please note here that B will not become
a native widget just because at that moment windowHandle() of D is not
null and Qt will not call winId() to its parent B
4) Set A's parent to another widget which has been shown, setParent_sys()
will be called to A and then Qt will call destroy() to A. in destroy() Qt
will try to call destroy() to its children recursively with a condition that
the child has Qt::WA_NativeWindow been set. But D's parent B is not a native
widget right now so B and D is not destroyed. Qt will then deleted the
QWidgetWindow object of A, since E's QWidgetWindow object is a child of
A's QWidgetWindow object, it will also be deleted. Now E hold a deleted
pointer of QWidgetWindow object. This is the source of crash later.
Task-number: QTBUG-35600
Change-Id: I97a20a68e626ee62b15bb4eae580e26f8948923b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/gui/kernel/qplatformtheme.h
tests/auto/network/socket/qudpsocket/tst_qudpsocket.cpp
tests/auto/widgets/widgets/qspinbox/tst_qspinbox.cpp
Change-Id: Iecd3343d6a050b8764f78d809c4a1532aeba69e5
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Check q->isTopLevel() before calling setBackingStore() in
QWidgetPrivate::create_sys() to prevent QBackingStore leaking. This is
because QWidget::setBackingStore() will return if isTopLevel() is true and
the newly created QBackingStore object will be leaked.
Change-Id: I2777acd4c317d5019f5b266feae005042026b8be
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QGuiApplication."
We can't rely on QGuiApplication::topLevelWindows containing top level QWidgets,
because they only exist as actual windows once QWidgetPrivate::create_sys is
called. Thus, make sure to send notifications to all top level widgets, if a
QApplication is being used.
This reverts commit f82ed5b3e30282bb8dc1da321a0d04ad4d463e59.
Task-number: QTBUG-35589
Change-Id: Iac517089af1c22f20094ba6e185d5ed44ebe3d6f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
configure
mkspecs/macx-ios-clang/features/default_post.prf
tests/auto/widgets/widgets/qmenu/tst_qmenu.cpp
Change-Id: Iaba97eed2272bccf54289640b8197d40e22f7bf5
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QStyleAnimation automatically stopped for hidden QWidgets, but didn't
know anything about QQuickItems and kept animating regardless of their
visibility. This change ensures that style animations stop as soon as
the animation target no longer accepts the animation update eg. it has
become hidden or the window was minimized.
Task-number: QTBUG-35319
Change-Id: Ie48191fd918c626c0d9afe2e7d2390c495efb071
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/sql/drivers/sqlite/qsql_sqlite.cpp
Change-Id: Ia7cffd2c99ae3d5eea6b5740683c06e921336dcd
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-33244
Change-Id: I95427b1fd6edaafe99738acfec28f6fd37b70cde
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
|\| |
| | |
| | |
| | | |
Change-Id: Ibb342cc5fc55ff9a3f4b3ecbd53936b57bc13e63
|
| |\|
| | |
| | |
| | | |
Change-Id: I860404a1ef18c88a968a9eded405bb67967047b9
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
As a follow-up to commit 2f87fde9bb4bad6787101c0d135419b350b201a5, we also need
to change "hack" in the QGraphicsItem and QWidget destructor for early item
destruction to support the _qml1 variant of the QObject destroyed callback.
Task-number: QTBUG-35006
Change-Id: I65e37b1e9ddd8d14267aaba024408611b8cd3d77
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For the conflicts in msvc_nmake.cpp the ifdefs are extended since we
need to support windows phone in the target branch while it is not there
in the current stable branch (as of Qt 5.2).
Conflicts:
configure
qmake/generators/win32/msvc_nmake.cpp
src/3rdparty/angle/src/libEGL/Surface.cpp
src/angle/src/common/common.pri
src/corelib/global/qglobal.h
src/corelib/io/qstandardpaths.cpp
src/plugins/platforms/qnx/qqnxintegration.cpp
src/plugins/platforms/qnx/qqnxscreeneventhandler.h
src/plugins/platforms/xcb/qglxintegration.h
src/widgets/kernel/win.pri
tests/auto/corelib/thread/qreadwritelock/tst_qreadwritelock.cpp
tests/auto/corelib/tools/qdatetime/tst_qdatetime.cpp
tests/auto/gui/text/qtextdocument/tst_qtextdocument.cpp
tools/configure/configureapp.cpp
Change-Id: I00b579eefebaf61d26ab9b00046d2b5bd5958812
|
| |\|
| | |
| | |
| | | |
Change-Id: I83ff8f4d7dffd7385013a1bd8a1732a89ee20d56
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Qt::WA_Mapped maps (sic) to windowHandle()->isExposed(), and we set/update
it in QWidgetWindow::handleExposeEvent(). Setting it directly in show_sys
shortcuts QPA and assumes showing a window is synchronous on all platforms,
resulting in trying to flush the widget backingstore when the window was
not exposed yet (due to discardSyncRequest starting to return false).
This reverts commit 829b1d13b225e87b8a385397e2b53c7a9f8cda9e.
Change-Id: I0bd700d4939bc69ba184d8586435b68ec3dd72fb
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This restores the ability from the Qt 4.x series to honor the static
contents region in the backbuffer when resizing a widget. The fix
only applies when running under Windows.
Task-number: QTBUG-34799
[ChangeLog][QtWidgets][Windows] Update QWidgetBackingStore and QWindowsBackingStore to support Qt::WA_StaticContents
QWidgetBackingStore::staticContents() was updated for windows to *not* unconditionally return false. It now
returns true if it has a non-empty static widgets list. QWindowsBackingStore::resize(...) was updated to honor
the provided static contents region. It now copies the static region into the new backbuffer in a manner similar
to what was done in Qt4. The difference is that this version accounts for the possibility of the new buffer having
a smaller region than the old buffer. In Qt4 the ::prepareBuffer method was only called when the buffer was resized
larger.
Change-Id: I135ff8fb16f52759089f1e7353426303c4504db3
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |\|
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
configure
Change-Id: I0d31f23483ea67c4cac5af16014366e1ba5ac093
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The dockwidget's toplevel window would be a parent of the container's
window when floating. When plugged back into the mainwindow the
dockwidget's window is destroyed and the container's window along
with it. Added a function toplevelAboutToBeDestroyed to unparent
the containers window before this happens so parentWasChanged will
work correctly.
Change-Id: I06679cfb3a8fa3834c0db0be5973c012b8277275
Reviewed-by: Ulf Hermann <ulf.hermann@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-33520
Change-Id: I51f9b4634be29fd32f4ad9cc8b5d3e10b19ea2f5
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |\ \
| | | |
| | | |
| | | | |
refs/staging/stable
|
| | |\|
| | | |
| | | |
| | | | |
Change-Id: Ie6d44caf1d630cb029178a1af40c637f24a25ee7
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-34765
Change-Id: Ia249e93dbbea11f3c03881c5fb88396bfad0e8fa
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Whenever a window gets blocked, then the qt_button_down variable should
be reset as it is not going to receive the release event for the mouse.
This fixes problems with the mouse cursor not being updated when moving
over widgets (such as QLineEdit) after a dialog is shown in response to
a press event.
Change-Id: Idfd072eaf36f51b816a0b2a0391cdc447d7a5d9d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-31853
Change-Id: If0d29ee0a125464b32be99332502473b7c626bb0
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When clicking on a widget currently focused, w/o having Qt::ClickFocus
set as focus policy, the focus should stay on the widget and not get
propagated to the widget's parent.
Task-number: QTBUG-34042
Change-Id: I53f1153829cc7228de02a90e38125b5cf4ee5008
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It's not really clear if styles *must* return a non-negative value for
QStyle::pixelMetric(PM_Layout{Vertical,Horizontal}Spacing), but both
QBoxLayout and QGridLayout seems to be robust enough to handle this.
They will simply make sure that the spacing is never negative.
We therefore make QFormLayout equally robust.
Task-number: QTBUG-34731
Change-Id: I62235bfcd8adf7757cf15bc9927b29650ae6459d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use some flags instead.
Task-number: QTBUG-34668
Change-Id: I9a75253c8eb98164c594bb6bb06c1a16c9609537
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Item might be null.
Change-Id: Ia432a35cb1a6bb02ee056ff8ad44a9f35bdbc146
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It's not providing any convenience over using Q_INIT_RESOURCE, which does
its own extern, were never documented, and was added back in 2010 without
any commit message justifying its existence.
Change-Id: I1ca9a042d3f4fca34007d28b140661c50064f11b
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Two template functions for qboject_cast() are defined
in qwidget.h that confuse qdoc because qdoc doesn't
handle template functions correctly. In this case, the
documentation for all qobject_cast() functions appears
in qobject.cpp where it is declared to be related to
QObject. This fix surrounds the template functions in
qwidget.h with #ifndef Q_QDOC ... #endif, since qdoc doesn't
need to see them.
This fix unmasks a linking bug QTBUG-34564, which will
be fixed separately.
Task-number: QTBUG-34505
Change-Id: I97fd32cc563bfa4a232819c097f41be56adf0114
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I83b5852abfbb3437c03516bc4b36eff385ddb983
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The default is now ShowMaximized which behaves as it did before,
i.e. each window will fill the screen but the status bar will be
visible. Calling showFullScreen() explicitly will now hide the
status bar to maximize the amount of screen real estate occupied
by the application.
Task-number: QTBUG-33135
Change-Id: If0d0a2ab72f8026e76818290e2b953dbc0dec156
Reviewed-by: BogDan Vatra <bogdan@kde.org>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On mobile platforms, a line edit should only have keyboard focus
when the virtual keyboard is open. As it stands, the only way to
clear focus when the user hides the keyboard, is to deactivate the
whole window. This is a bit too much, since Qt still expects the
window in front to be active/focused. What we need is a way to
remove focus from the current focus object without disturbing
the state of the window.
QWindow has a virtual function 'focusObject' from before. We now
add a virtual function 'clearFocusObject' to QWindowPrivate
that can be overridden by QWidgetWindowPrivate and
QQuickWindowPrivate. That way we can remove focus from current
focus object when the virtual keyboard is closed from the
platform plugins.
Change-Id: Ica4ec76f8a69cd6107236a8000ff8bd742e988b5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ie8eaa71bee87654c21218a23efd7e9d65b71f022
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|\|
| |
| |
| | |
Change-Id: Ie56539b2e0be611a363b5f15ae5412a78d6945a2
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We change the behavior slightly from the initial implementation in
5.1. Forcing the use of native child widgets is causing massive
performance issues so instead, we attach the embedded QWindow directly
to the root window. The only exception is QScrollArea and QMdiArea
which still enforces native windows for the entire parent chain
to make clipping and stacking work.
Task-number: QTBUG-34138
Change-Id: If713637bd4dce630552ace2f8ad6b2e86c063721
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
|
| |
| |
| |
| |
| | |
Change-Id: I461e8187810e564e06869df86b23cc40aeba72bd
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-34007
Change-Id: If67563e5d9c4040256b58521773736e14db6fbaf
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
|
| |
| |
| |
| |
| | |
Change-Id: Iebea6b6e26e9aca9a64aecc9b125c48fe1cc7e43
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add QWindowSystemInterface::GestureEvent and
QNativeGestureEvent to QtGui. These events are copies
of Qt4's QNativeGestureEvent, where it was an implementation
detail of QGestureManager.
Add gesture message handlers to QNSView and bring
back the Mac gesture recognizers for QGestureManager.
Task-number: QTBUG-28126
Change-Id: I1304e09e776fa7c44d133d54ca8b895ca2f544c5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Introduce QStyleHintsPrivate and introduce internal
setters called by QApplication.
Task-number: QTBUG-33991
Change-Id: Id61f8b1e2b5c9cfd7b4713aaded66e93e6f63719
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
|
|\|
| |
| |
| | |
Change-Id: Ib8cfeee7d9ca15e8ad520e428b72c200827a8628
|