Sergio Martins
a4f6b72157
Fix FloatingWindow::isInDragArea() returning false even with HTCAPTION
...
If the last clicked position is HTCAPTION then we're sure we're
dragging. Problem with comparing the rect is that mouse events are
async, and by the time we use the mouse event pos the window is already
somewhere else. So just use HTCAPTION, which is 100% correct.
Fixes #103
2021-01-17 16:28:11 +00:00
Sergio Martins
de3ca6dba5
vscode: Remove launch.json
...
We'll do this per workspace file instead
2021-01-17 14:10:19 +00:00
Sergio Martins
bdfcfdd0fe
Update ChangeLog
2021-01-16 22:39:11 +00:00
Sergio Martins
dbf357ce66
Fix restoring window maximized state
...
Fixes #81
2021-01-16 22:37:30 +00:00
Sergio Martins
e950cf7fc3
tests: Add a test for issue #81
2021-01-16 21:38:36 +00:00
Sergio Martins
8dfad1c910
vscode: Update the workspace files
...
Now autogenerated from CMakePresets.json.
Added the Qt6 one too.
2021-01-16 19:40:36 +00:00
Sergio Martins
107d4e973c
Remove a script I'm no longer using
2021-01-16 15:50:27 +00:00
Sergio Martins
e33766a4fa
examples: Illustrate Config::Flag_CloseOnlyCurrentTab
2021-01-16 13:19:37 +00:00
Sergio Martins
6a550c6c4a
Added Config::Flag_CloseOnlyCurrentTab
...
When clicking on the TitleBar's close button it closes all the
dock widgets in the tab, by default. With the new option it will
close only the current tab
2021-01-16 13:06:29 +00:00
Sergio Martins
a0fc2a8ce7
Minor logic readability fix
...
They are mutually exclusive
2021-01-16 12:00:43 +00:00
Sergio Martins
ab257b3468
float docked widgets that have LayoutSaverOption::Skip before restore
2021-01-15 21:30:38 +00:00
Sergio Martins
e6bdb28484
Added convenience DockWidgetBase::skipsRestore()
2021-01-15 20:17:45 +00:00
Sergio Martins
c52446f3b0
Merge branch '1.2'
2021-01-15 09:27:17 +00:00
Sergio Martins
9cadfb26d9
Fix toggleAction() when dock widget is in the sidebar
...
It should toggle the overlay, not dock the widget
Fixes #139
2021-01-15 09:24:11 +00:00
Sergio Martins
7d5ea8f908
tests++
2021-01-15 09:20:58 +00:00
Sergio Martins
161b33370e
Add more tests
2021-01-15 09:04:05 +00:00
Sergio Martins
8dd7a90b34
Add convenience DockWidgetBase::isInSideBar()
2021-01-15 08:52:17 +00:00
Sergio Martins
7ff865a36f
tests: Add test for #139
2021-01-15 08:44:21 +00:00
Sergio Martins
d0b8ee606a
Honour LayoutSaverOption::Skip for floating windows with many dock widgets
...
If all dock widgets in the floating window have the Skip flag then the
FloatingWindow can too
2021-01-14 18:33:29 +00:00
Sergio Martins
c6c3b16fd2
LayoutSaver: Add some utility functions
2021-01-14 18:11:29 +00:00
Sergio Martins
64a6cbb2e4
Add all|anyDockWidgetsHave overloads taking a LayoutSaverOption
2021-01-14 18:01:54 +00:00
Sergio Martins
e1cf532437
tests: Add an XFAIL for a LayoutSaverOption::Skip case
2021-01-14 17:57:37 +00:00
Sergio Martins
67f2127710
Add one more unit-test regarding DeleteOnClose
2021-01-14 17:51:02 +00:00
Sergio Martins
9111b424a1
TitleBar: Also update the auto/hide button
...
For completeness, doesn't mean it's actually needed.
For issue #137 .
2021-01-14 11:39:15 +00:00
Sergio Martins
772b51216f
Merge branch '1.2'
2021-01-13 23:15:03 +00:00
Sergio Martins
a79a2f5ecb
Fix restoring non-closable state
...
For issue #137
A simpler solution than on master, doesn't include the refactoring.
2021-01-13 23:13:39 +00:00
Sergio Martins
585c0d64ed
Fix close button enable state not being restored with LayoutSaver
...
Fixes #137
2021-01-13 23:07:49 +00:00
Sergio Martins
7ddb95a417
Add a single TitleBar::updateButtons()
...
updateCloseButton() can now be private
2021-01-13 23:07:49 +00:00
Sergio Martins
02648eb54e
Update ChangeLog re PySide6
2021-01-13 22:51:18 +00:00
Sergio Martins
54a1050fbb
Add unit-test for issue #137
2021-01-13 22:23:44 +00:00
Sergio Martins
f997b2d2f0
qtquick: Fix build
2021-01-13 13:31:33 +00:00
Sergio Martins
8f61e57b57
Add DockWidget::Option::Option_DeleteOnClose
2021-01-13 12:54:18 +00:00
Sergio Martins
cfcff6f2d7
Minor rename
2021-01-12 22:49:07 +00:00
Sergio Martins
44d7cc0588
Add FloatingWindow::allDockWidgetsHave(option) and the any* variant
2021-01-12 22:42:38 +00:00
Sergio Martins
c91275d091
vscode: Use workspace files instead of project settings
...
So we can build for QtQuick too with different settings
2021-01-12 15:20:29 +00:00
Sergio Martins
69c88919c0
cmake: Export a compile_commands.json which helps vscode
...
Need to disable unity build otherwise intellisense can't find
our source files in the compile_commands.json. Only for the dev-*
presets anyway
2021-01-12 14:25:11 +00:00
Sergio Martins
e0e6f55868
Introduce DockWidgetBase::LayoutSaverOptions enum
...
The first enumerator is "Skip", meaning the dock widget won't
be affected by save/restore. It won't disappear while restoring,
and won't be shown if already hidden. (only applies to floating widgets)
2021-01-11 23:33:32 +00:00
Sergio Martins
7698584ee0
Fix potential invalid index when restoring layout
...
We save the index of each FloatingWindow when saving a layout,
but when restoring we might not want to restore all FloatingWindows,
for example, if we use a LayoutSaver with another affinity.
So, the index in Position::deserialize() should be a index to
LayoutSaver::Layout::floatingWindows, and not to DockRegistry::self()->floatingWindows()
since the later might be smaller.
2021-01-11 21:55:47 +00:00
Sergio Martins
d034722ba9
LayoutSaver: Add some utilities
2021-01-11 21:16:02 +00:00
Sergio Martins
e1e07c95ba
Merge pull request #134 from KDAB/python6
...
Added PySide6 support
2021-01-11 19:35:53 +00:00
Renato Araujo Oliveira Filho
4e79c68a7d
Added PySide6 support
...
Task-Id: KDDW-27
2021-01-11 16:31:49 -03: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
36eef80192
Also pass InitialOption to addDockWidgetToContainingWindow()
...
So you can control initial size and such
2021-01-09 13:58:56 +00:00
Sergio Martins
306bf26f66
Remove some qCDebug I never needed
2021-01-09 13:27:30 +00:00
Sergio Martins
e07fb7f121
DockWidget::addDockWidgetToContainingWindow() now accepts docking to main window
...
Was already stated in the docs that it would work with a main window but implementation
only allowed floating window.
Fixes #132
2021-01-09 13:24:06 +00:00
Sergio Martins
bc86cfcb1f
Move Item::insertItem() to the derived class
...
Item itself doesn't know how to insert into the layout.
We'll soon have a new derived class which will do things differently
2021-01-09 00:11:59 +00:00
Sergio Martins
63bb7e31cd
Remove unused method
2021-01-08 22:32:42 +00:00
Sergio Martins
1840d50fc0
Move LayoutBorderLocation out of Item
...
It only affect the box layout
2021-01-08 22:24:53 +00:00