Sergio Martins
bc2fff2c04
qtquick: Window resizing works on Linux/mac now
2020-11-27 13:59:27 +00:00
Sergio Martins
e0aa547393
qtquick: Start using the WidgetResizeHandler
...
It's no longer commented out in FloatingWindow.
Doesn't do much for QtQuick, but at least we don't have different
code paths
Making it work is next.
2020-11-26 23:13:46 +00:00
Sergio Martins
c25043fa00
qtquick: Enable more QtWidget paths that compile fine
...
Just needed a dummy create() function
2020-11-26 22:28:57 +00:00
Sergio Martins
8a990451d7
Fix casting -1 to WId on mac
2020-11-26 15:59:32 +00:00
Sergio Martins
bc3278b218
qtquick: tst_positionWhenShown
2020-11-25 17:01:37 +00:00
Sergio Martins
43bdb6a4c2
qtquick: Bunch of fixes for min-size support
2020-11-24 11:38:13 +00:00
Sergio Martins
801e49de9d
Make DockWidgetQuick::minimumSize()/max virtual
...
While for QtWidgets we have layouts which propagate the constraints
up, for QtQuick we don't, so we need to override minimumSize instead
2020-11-23 15:45:06 +00:00
Sergio Martins
9937f5d789
qtquick: Fix floating windows having a parentItem
...
they are top-level windows, so shouldn't have a parent item.
Only a QObject::parent()
2020-11-20 16:55:00 +00:00
Sergio Martins
864670b0a1
qtquick: Fix some cases where floating windows didn't have parent
...
Happened because floatingWindow->parentWidget() was null. On QtWidgets
this works because QWidget::parentWidget() will return the transient parent
without a problem.
2020-11-19 17:47:02 +00:00
Sergio Martins
beb2d9e659
qtquick: Add support for non-closable windows
...
fixes tst_preventClose
2020-11-18 18:13:35 +00:00
Sergio Martins
59168da231
qtquick: Fix crash at exit
...
Don't delete our QWindow if the QWindow is currently deleting us
2020-11-18 18:10:32 +00:00
Sergio Martins
52bf449366
qtquick: Fixes for focusing
...
Fixes tst_focus too, and maybe a few other tests
2020-11-18 14:01:55 +00:00
Sergio Martins
08a1c4e6df
qtquick: Implement focus policy
...
fixes tst_dockWidgetGetsFocusWhenDocked
2020-11-18 12:35:46 +00:00
Sergio Martins
f4e33c1409
tests: Port the remaining tests to QtQuick
...
Tests now build with QtQuick too.
2020-11-17 15:26:14 +00:00
Sergio Martins
978f9d3a5e
tests: Port another test to QtQuick
...
29 to go
2020-11-06 23:52:48 +00:00
Sergio Martins
f4d9a96ddb
Added Config::Flag_KeepAboveIfNotUtilityWindow
...
Which sets Qt::WindowStaysOnTopHint for floating windows.
Usually unneeded, as floating windows are Qt::Tool with a transient
parent, but in case you're using Flag_DontUseUtilityFloatingWindows
then you might want (or not) to keep them above.
2020-11-05 12:11:48 +00:00
Sergio Martins
ddad0feaf3
tests: Additional 5 tests build for QtQuick now
...
37 to go
2020-11-02 20:04:14 +00:00
Sergio Martins
b84e0f3605
tests: More tests are now building with QtQuick
...
56 to go
2020-10-29 18:11:24 +00:00
Sergio Martins
7738585d01
tests: Enabled another batch of tests for QtQuick
...
83 of 175 are now building with QtQuick
2020-10-22 20:54:39 +01:00
Sergio Martins
f70722934c
qtquick: Port more tests
2020-10-19 20:47:09 +01:00
Sergio Martins
6f89d94eef
qtquick: Emit Frame::layoutInvalidated() when needed
...
When min/max size changes it needs to be emitted, so layout
notices
2020-10-19 20:06:29 +01:00
Sergio Martins
3a494d706a
qtquick: Implement missing QWidgetAdapter::floatingWindow()
2020-10-19 19:05:10 +01:00
Sergio Martins
97416607e5
qtquick: Allow to set min-sizes on items
2020-10-18 23:27:10 +01:00
Sergio Martins
e5f46ead3b
qtquick: Fix build
2020-10-16 17:08:36 +01:00
Sergio Martins
1f0b208922
qtquick: Enable tst_resizeWindow too
2020-10-10 12:15:18 +01:00
Sergio Martins
c175451284
qtquick: Fix user geometry not being honoured
...
QtQuick doesn't set Qt::WA_Moved, which we expect. Set this attribute
in the wrappers then.
Fixes the unit-test too.
2020-10-10 11:46:24 +01:00
Sergio Martins
9a88cf3a72
tests: Enable tst_honourUserGeometry for QtQuick
...
It's failing. Will fix.
2020-10-10 11:36:16 +01:00
Sergio Martins
63279c187e
quick: Fix QtQuick not reacting to parent change events
...
- We were calling event() directly, which skiped event filters.
- The handler was calling parent(), but the setParent() call is done
later. So first call setParentItem()
2020-10-09 19:09:45 +01:00
Sergio Martins
689ba7da8f
quick: Make dealing with window flags more stable
...
There's only one place where we need to set the flags, it's when
creating the FloatingWindowQuick. So no need to complex machinery
which is bug propne
2020-10-04 11:12:35 +01:00
Sergio Martins
2ea0d54e6c
quick: Fix floating windows not having the correct window flags
...
Add a unit-test too.
2020-10-03 23:30:13 +01:00
Sergio Martins
d4b3bf9de6
quick: Added support for showMinimized()
2020-10-03 18:11:33 +01:00
Sergio Martins
2b234f313c
quick: Remove some QWidget specific code from MainWindowBase
2020-10-03 18:10:23 +01:00
Sergio Martins
f0ac455ec1
Allow the window being dragged to be transparent
2020-08-23 17:44:57 +01:00
Sergio Martins
2c917dcd7c
qml: Show 4 proper indicators when dragging in a floating window
...
They don't do much yet, but at least appear.
2020-08-11 01:35:28 +01:00
Sergio Martins
0b4c017f22
qml: Add subs regarding focus
2020-08-08 17:34:06 +01:00
Sergio Martins
10026ba191
Add FocusScope behaviour to TitleBar
...
Github issue #56 is not a KDDW bug, it's how Qt works. QtWidgets don't
have focus scope. But let's workaround and handroll our own FocusScope.
Now the title bar can be colored differently if the dock widget it controls
contains any focused children.
This just implements half of the story. You have to focus a child
for the title bar to change color. Clicking the title bar directly
isn't done yet. Needs to be figured out. What do we focus when clicking it?
TitleBars usually don't care about keyboard focus. Probably we
just use the user's widget as a focus proxy.
2020-08-08 12:33:23 +01:00
Sergio Martins
051f8ab3a6
qml: Implement widgetForWindow
2020-08-06 23:17:28 +01:00
Sergio Martins
78dcb0f7f3
qml: Abstract some methods that QQuickItem doesn't have
...
geometry(), isMinimized(), etc.
2020-08-06 23:10:08 +01:00
Sergio Martins
c7afbf0803
qml: make qtTopLevelUnderCursor_impl() receive QWindow
...
QWindow works for both QtWidgets and QtQuick
2020-08-06 18:30:53 +01:00
Sergio Martins
769d34d746
qml: implement childAt
...
Added a namespace-level parentWidget() helper, so it works for
both widgets and quick
2020-08-06 17:51:49 +01:00
Sergio Martins
48433a05fb
qml: Fix stray windows not being deleted
2020-08-04 14:13:42 +01:00
Sergio Martins
3e3df799e6
qml: Deliver the close event
2020-08-04 13:53:31 +01:00
Sergio Martins
912f2de1ee
qml: Fix close
2020-08-04 13:16:49 +01:00
Sergio Martins
52626b1874
qml: Add support for the MainWindow
...
Not really a MainWindow in the sense of toolbars and all.
For qml it's just the drop area, acepting drops
2020-08-03 20:05:36 +01:00
Sergio Martins
4fd28f9577
qml: Implement more QtQuick API
2020-08-02 22:10:54 +01:00
Sergio Martins
31f391294c
qml: Implement a few "Implement me"s in the QtQuick glue
2020-08-02 20:05:02 +01:00
Sergio Martins
e4f6893324
qml: Fix warnings about dereferencing null types
2020-08-02 17:43:44 +01:00
Sergio Martins
197a0abb7e
qml: Wire up some events for DockWidget
...
Some events like QEvent::Show, Hide and Close are for QWidget only,
so we have to synthetize them, as KDDW expects them
2020-08-02 12:15:26 +01:00
Sergio Martins
7c77c9597e
qml: less debug noise
2020-07-31 20:37:28 +01:00
Sergio Martins
44da2dca65
qml: Implement dragging via title bar
...
needs to redirect the events from the mouse area to the
C++ draggable
2020-07-30 22:34:36 +01:00