Sergio Martins
d263ae649e
Allow to configure the MDI popup threshold
2021-03-03 16:33:32 +00:00
Sergio Martins
a37ab34fae
qtquick|MDI: When dragging don't trigger the resize drag handlers
...
MouseArea.enabled, even if false, will change the cursor shape.
So explicitly change the cursor to ArrowShape
2021-03-02 20:58:44 +00:00
Sergio Martins
ff67b9bcbc
Merge branch '1.3' into master
2021-02-26 15:20:32 +00:00
Sergio Martins
ba4a2eef5c
Also cancel a drag if we receive a non-client double click
2021-02-25 21:58:12 +00:00
Sergio Martins
f75c3a123e
Merge branch '1.3' into master
2021-02-17 17:44:05 +00:00
Sergio Martins
12dfe49d9b
Fix unused variable warning
2021-02-17 17:14:10 +00:00
Sergio Martins
545618964d
Only apply the async mouse compensation when undocking
...
Not needed when moving regular windows
2021-02-17 17:01:03 +00:00
Sergio Martins
544d3b026a
MDI windows will now poput into floating mode
...
when dragged behond the edges
Please enter the commit message for your changes. Lines starting
2021-02-13 18:30:59 +00:00
Sergio Martins
15ff882919
MDI: Raise window when we're dragging it
...
Otherwise it's appearing under others, possibly
2021-02-13 16:29:32 +00:00
Sergio Martins
18d405bdfb
MDI: Don't let windows escape its parent
2021-02-13 16:19:05 +00:00
Sergio Martins
a73f35af22
MDI: Implement internal move
...
You can now move internal windows around without them becoming
floating
2021-02-13 13:03:14 +00:00
Sergio Martins
a4d03c1514
Add a mdi-example
...
Don't want the main example to be too complex
2021-02-13 12:01:01 +00:00
Allen Winter
a421cb0b01
various - include private header first, remove header dupes
2021-02-07 07:07:49 -05:00
Sergio Martins
863691c313
Remove some private API from DockWidgetBase.h
...
Moved it into the pimpl
2021-02-06 16:32:13 +00:00
Sergio Martins
a6b9a82e9c
Fix crash when hosting QQuickWidget
...
There's no need to check if invisible widgets are candidates
for docking. There's usually no downside either, except that
QQuickWidget is very sensitive with when its platform window
is created, so don't force the creation.
Will cherry-pick to 1.2 if no regression is found
Fixes #150
2021-01-31 13:05:20 +00:00
Sergio Martins
d5b80b0bbd
Fix offset when dragging too fast
...
On Windows, when we start a drag, we switch to native dragging in
mid-flight, so that AeroSnap still works
Fixes #121
2021-01-19 22:23:20 +00:00
Sergio Martins
ae14e49338
Add a comment, explains why we switch to native drag
2021-01-19 21:53:35 +00:00
Sergio Martins
c23bce9829
Minor coding style: Remove nested ifdef
2021-01-19 21:50:31 +00:00
Sergio Martins
370d139dfc
Fix Flag_NativeTitleBar
...
It shouldn't use the FloatingWindow::isInDragArea() code path
2021-01-17 23:11:41 +00:00
Sergio Martins
d80325ec8f
Merge branch '1.2' into master
2021-01-10 23:11:17 +00:00
Sergio Martins
e9925785ab
Cancel the drag if the draggable is destroyed
...
Can be destroyed for reasons we can't control or simply destroyed
because the draggable was docked/undocked
Fixes #120
2021-01-10 23:07:57 +00:00
Sergio Martins
81efda2d11
Add a QPointer guard for the draggable
...
So we can detect if it was deleted meanwhile
2021-01-10 23:00:19 +00:00
Sergio Martins
4cceec82ac
Remove unused variable
...
Should fix MingW build with -Werror
2021-01-03 21:24:21 +00:00
Allen Winter
875544a449
Merge branch '1.2'
2021-01-02 09:32:20 -05:00
Allen Winter
a2f4c972a6
update copyright year
2021-01-02 09:27:50 -05:00
Sergio Martins
92063ab61b
Remove some duplicate code, Qt does the same already
...
Recently Qt implemented something similar. Since we only support
aero snap with Qt 5.15 we dont need KDDW's native win32 code anymore
cc issue #121
2020-12-28 13:06:37 -08:00
Jacob Young
0fe58fd160
Fix filename case so that it will build on a case-sensitive filesystem.
2020-12-28 12:34:03 +00:00
Jacob Young
e4502d4f64
Fix filename case so that it will build on a case-sensitive filesystem.
2020-12-28 03:07:30 -05:00
Sergio Martins
771bf10951
Merge branch '1.2'
2020-12-22 18:48:22 +00:00
Sergio Martins
cd859d6725
Fix a bunch of clazy warnings
2020-12-22 17:01:50 +00:00
Sergio Martins
6b846fcdff
qt6: Use more 'auto' to fix some Wconversion errors
2020-12-19 22:54:06 +00:00
Allen Winter
e41cdb6f78
various - fix misspellings
2020-12-16 16:49:22 -05:00
Sergio Martins
9a9488117c
Add a State dtor, fixes a -Wweak-vtables warning
2020-12-09 11:13:55 +00:00
Sergio Martins
89635d8b98
qt6: build is fixed now
2020-12-08 21:47:35 +00:00
Sergio Martins
f475312f11
qt6: Port away from QStateMachine
...
QStateMachine was moved to qtsxml module, which is not ported to
Qt6 yet.
We use QStateMachine for the semantics it gives us, not because of
its implementation. The implementation is trivial, so do it outselves.
We used very little from QStateMachine.
2020-12-08 19:55:52 +00:00
Sergio Martins
785db1b50c
qtquick: Fix detaching windows not working smoothly
...
Use the global event filter, as grabing isn't reliable in QtQuick.
Either not the same item is getting the mouse moves and release, or
it's because QtQuick internally is also setting/unsetting grabbers,
as seen in the source code
2020-12-01 20:14:46 +00:00
Sergio Martins
52bff59024
Remove duplicated logic regarding mouse events
2020-11-30 23:14:00 +00:00
Sergio Martins
bba0195196
Move "mouseEvent()" function to Utils_p.h
...
So it can be reused
2020-11-30 23:00:30 +00:00
Sergio Martins
60331fc654
qtquick: Remove some unneeded QtWidget includes
2020-11-29 17:57:14 +00:00
Sergio Martins
1d2a791dfc
qtquick: Fix DND operation never ending
...
When double-clicking a title bar we're getting: Press, Release,
Press and never the Release. We get the MouseDblClickEvent instead,
so handle that
2020-11-29 14:40:03 +00:00
Sergio Martins
5372920cd0
qtquick: Port NCHITTESTEventFilter
2020-11-26 21:53:48 +00:00
Sergio Martins
0980a7f601
qtquick: Port qtTopLevelForHWND() to Windows
...
Deals in QWindow instead of QWidget
2020-11-26 18:54:58 +00:00
Sergio Martins
b9962b3df0
qtquick: Make the QWinWidget case specific to QtWidgets
...
With QtQuick we don't have QWinWidget
2020-11-26 13:23:06 +00:00
Sergio Martins
774e66ba6f
Minor: add an assert
...
Provides a nicer backtrace when it happens.
Currently repro on QtQuick only
2020-11-17 21:04:32 +00:00
Sergio Martins
046ceae500
Remove unneeded null check from DropArea::drop()
2020-10-18 12:31:04 +01:00
Sergio Martins
33c0cda582
Minor readability, just call setWindowBeingDragged(true)
...
It's always true here.
2020-10-18 12:28:10 +01:00
Sergio Martins
bf1c5140cd
Wayland: Fix another missing mapToGlobal
...
Hovering indicators was fine, but dropping was off by a few pixels
vertically due to the menu bar
2020-10-17 11:41:19 +01:00
Sergio Martins
fb7a35db5b
Wayland: Fix indicator hover being off
...
Drag events are in local coords, while DropArea wants it in
global
2020-10-17 11:05:56 +01:00
Sergio Martins
171023558e
Introduce WindowBeingDraggedWayland
...
This is just a cleanup. Instead of having WindowBeingDragged
having both code paths, let's keep the non-wayland platforms code
small and clean.
2020-10-16 17:08:36 +01:00
Sergio Martins
bc04863439
Wayland: Dragging a tab or a nested dock widget now shows pixmap
...
TODO: Supporting a drop for those two cases
2020-10-16 10:33:01 +01:00