Commit Graph

749 Commits

Author SHA1 Message Date
Sergio Martins
4e8a9ff8ed tests: fix a flaky test on Windows
The drop area doesn't fill the floating window, so the
center was off and the drop didn't happen

Additionally, disabled AeroSnap, for debugging purposes, so we can
actually see the window moving, otherwise it doesn't move, since
we can't fake a native drag. It's just a visual bonus, doesn't
affect the correctness.
2021-05-20 18:28:23 +01:00
Sergio Martins
18c9963124 qtquick|tests: Fix tst_lastFloatingPositionIsRestored
We need to compare the position of the Window
2021-05-18 15:00:21 -07:00
Sergio Martins
2dbdb9f7eb qtquick: Fix restoring QWindow's geometry
We need to resize the QWindow.

Fixes issue #196
2021-05-17 22:46:56 +01:00
Sergio Martins
70ecdaf54c Add a failing test for issue #196 2021-05-17 21:12:59 +01:00
Sergio Martins
2836edd32d qtquick: Add a test to see that main window position is restored
Will improve it with QtQuick corner cases
2021-05-10 23:04:37 +01:00
Sergio Martins
bbbce6f694 qtquick: Fix close() not hidding the widget
QtQuick will emit a "visibleChanged(true)" when setting nullptr,
which we need to inhibit so it behaves like QtWidgets.
2021-05-02 11:22:26 +01:00
Sergio Martins
ba0d515330 qtquick: Don't run tst_maxSizedFloatingWindow
We only support max-size constraints for QtWidgets, for now.
2021-05-02 00:19:47 +01:00
Sergio Martins
69154c0384 qtquick: Make setParent(nullptr) to hide the widget too
As done for QtWidgets.

Fixes a case where closing the dock widget wouldn't hide it.

As reported by Roman
2021-05-02 00:11:58 +01:00
Sergio Martins
affb48f44d Fix restoring side-bar widget when it was deleted previously
We need to consult the user's widget factory, just as we do
for other cases where the dock widget is missing
2021-04-29 21:36:56 +01:00
Sergio Martins
9e42b11272 Minor coding styling 2021-04-29 18:15:45 +01:00
Sergio Martins
6a8e00bfa2 tests: Test restoring with DeleteOnClose and sidebar widgets
sidebar dock widgets which were deleted should still call
the user's dock widget factory

To be done next
2021-04-29 18:06:41 +01:00
Sergio Martins
d289134b15 Add a unit-test for disabling RelativeFloatingWindowGeometry
Fixes #175
2021-04-28 21:27:47 +01:00
Sergio Martins
66d12fef82 fix build 2021-04-27 23:56:58 +01:00
Sergio Martins
83c744041e Merge branch '1.3' 2021-04-27 23:52:17 +01:00
Sergio Martins
c4d3ba71b2 Fix crash due to MainWindow not clearing m_overlayedDockWidget
When we close the overlayed widget we need to clear this variable

Added 1 real fix and a prophylactic check too.
2021-04-27 23:49:26 +01:00
Sergio Martins
9d7de9ea4d Fix sizing of widgets that skip LayoutSaver's restore
LayoutWidget::onResize() was bailing out early, but the actual
restore hadn't even started
2021-04-23 19:39:07 +01:00
Sergio Martins
b330f902fd tests: Move class into the header
File is getting too big
2021-04-23 18:03:49 +01:00
Sergio Martins
aa76dfba02 LayoutSaver: Support the user's factory func doing remapping
While restoring a layout, we expect all widgets to exist already,
but we allow the user to create them delayed, by providing
us a factory function.

What we're supporting in this commit is the ability of the user's
factory function returning a dock widget with an ID different
than the one that was requested. We then save that mapping so the
rest of the layout restore works with the new ID.
2021-04-23 14:55:01 +01:00
Sergio Martins
39deb9ee83 tests: Minor refactoring, reduce copy-paste 2021-04-20 23:02:07 +01:00
Sergio Martins
2266f4a75c Fix FloatingWindow max size when there's tabbed dock widget
We don't support this case yet
2021-04-20 22:56:26 +01:00
Sergio Martins
06b680f603 Also update FloatingWindow's max size when children change constraints
A dock widget can change its max size later in life, so we need
to react to that
2021-04-20 22:52:08 +01:00
Sergio Martins
d65dfeceb0 Fix QtQuick developer build 2021-04-05 06:34:44 +01:00
Sergio Martins
19730ab6a4 Fix crash when using MainWindow::layoutEqually()
When distributing space we should honour the other widgets
min-size too, and not give too much

Since the layouting code is complex, this won't be backported to
1.3
2021-03-31 15:23:24 +01:00
Sergio Martins
44ae75110b Added MainWindowBase::closeAllDockWidgets() 2021-03-31 10:51:20 +01:00
Sergio Martins
446560931b MDI: Fix docked widget geometries not being remembered when floating
We shouldn't move the Frame directly. Instead, do it through the
layout, which will then remember the last docked geometry
2021-03-07 16:56:37 +00:00
Sergio Martins
263f936690 Fix dock widgets in MDI getting bogus sizes
Setting the Item's min-size would resize the guest while the
guest was being set
2021-03-03 12:20:40 +00:00
Sergio Martins
772afe29ea Merge branch '1.3' 2021-02-26 15:45:46 +00:00
Sergio Martins
9c78953800 Fix tests on linux
Native title bar is specific to Windows
2021-02-26 15:38:00 +00:00
Sergio Martins
acdf03fc84 Merge branch '1.3' into master 2021-02-24 13:56:28 +00:00
Sergio Martins
a6f19e07c4 Fixed Flag_NativeTitleBar not hidding the client title bars
When restoring the layout the native title bar would be visible
Fixes #170
2021-02-24 13:52:44 +00:00
Sergio Martins
a73746fe8b tests: Use the MultiSplitter base class in a few places 2021-02-09 16:12:22 +00:00
Sergio Martins
da1fddffe1 Decouple MultiSplitter from MainWindow and FloatingWidget
They deal in its base class instead (LayoutWidget)
2021-02-09 16:05:56 +00:00
Sergio Martins
51dc666181 Added DockWidget::setFloatingGeometry()
Closes #144
2021-02-07 17:26:01 +00:00
Sergio Martins
4c33cd6409 Sidebar overlays now maintain their size when toggled
Fixes #155
2021-02-06 22:55:14 +00:00
Sergio Martins
6ee1900331 Add a test for issue #155 2021-02-06 19:43:26 +00: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
38443048b8 Merge branch '1.2' 2021-02-05 16:42:07 +00:00
Sergio Martins
f1e4f7ecda Add another test 2021-02-05 14:34:12 +00:00
Sergio Martins
249d1b6790 Remove from the sidebar when floating a widget
Fixes #162
2021-02-05 12:35:03 +00:00
Sergio Martins
894e0fd03a Added test for issue #162 2021-02-05 11:49:52 +00:00
Sergio Martins
dadf57c184 Merge branch '1.2' 2021-02-04 19:59:29 +00:00
Sergio Martins
7caa83be19 Also hide overlay when clicking on empty space of a main window 2021-02-04 19:56:35 +00:00
Sergio Martins
e745d38b1e Improve the test a bit
clicking on the bottom is not very effective as that's where the
bottom sidebar is
2021-02-04 19:52:21 +00:00
Sergio Martins
6d389315bf Add test for issue #157 2021-02-04 19:31:31 +00:00
Sergio Martins
799f2a81a7 Remember previous tab position when toggling float
This was already the case, but didn't work in case the tabs
were re-oredered by the user manually

Fixes #154
2021-01-29 19:15:23 +00:00
Sergio Martins
eb9fa6f567 Add unit-test for issue #154 2021-01-29 19:07:32 +00:00
Sergio Martins
9ebd595202 Remove stray debug 2021-01-29 18:32:23 +00:00
Sergio Martins
b01b8908ea qtquick: Fix build
That test is QtWidgets only
2021-01-29 18:23:37 +00:00
Sergio Martins
ee759a5459 Don't trigger "Delete on Close" when sending to the sidebar 2021-01-28 22:40:41 +00:00
Sergio Martins
17638bc29f Fix regression with DockWidget::toggleAction()
Added unit-test too.
While we're processing the toggle action triggering isOpen() is
always false.
2021-01-21 16:16:29 +00:00