Sergio Martins
4613fa20f4
Resize the adjacent anchors when adding a widget, if needed
...
Means that if adding to left/right then we must ensure the top/left
anchor of the group is positioned in a way that respects the widget's
minimum height. Previously we were only honouring width.
And vice-versa for the other orientation, s/left/top,s/right/bottom
2019-08-02 23:55:08 +01:00
Sergio Martins
0e6b3454cd
Add AnchorGroup::adjacentAnchors()
2019-08-02 23:18:41 +01:00
Sergio Martins
16e2141ae5
Remove unneeded debug
2019-08-02 22:28:06 +01:00
Sergio Martins
454f3d1b48
Remove unneeded debug
2019-08-02 22:21:42 +01:00
Sergio Martins
76a5c79ca2
Add a sanity check
2019-08-02 20:11:56 +01:00
Sergio Martins
d9c6452d88
Relax assert, that condition can happen on hover and it's fine
2019-08-02 19:34:17 +01:00
Sergio Martins
f69b17ba7f
print debug when the assert hits
2019-08-02 09:43:06 +01:00
Sergio Martins
51f76d4986
When docking to left/right also adjust height and vice-versa
...
Previously we were only resizing one direction
2019-08-02 09:22:29 +01:00
Sergio Martins
26dc975e11
fix build
2019-08-02 08:39:43 +01:00
Sergio Martins
089f9361c1
Remove DockWidget::titleBar, as it's not needed
...
DockWidget's are either floating or not. If floating they have the
title bar from FloatingWindow, otherwise from Frame
2019-08-01 23:44:25 +01:00
Sergio Martins
4cf50eeb8c
Simplify MultiSplitterLayout::ensureEnoughContentsSize
...
It wasn't even accurate, as it was giving too much size.
Also removed the concept of 'extraUselessSpace". This was from
the time where FloatingWindow was itself a MultiSplitterLayout,
so had to make space for the TitleBar.
2019-08-01 18:23:46 +01:00
Sergio Martins
7a007c15c6
readability++
2019-08-01 17:27:19 +01:00
Sergio Martins
2e21dd484c
Minor readability improvement
2019-08-01 17:25:44 +01:00
Sergio Martins
8c8d6503f8
Don't delete the central frame when restoring
...
This one can be empty.
Caught by a failing unit-test
2019-08-01 17:09:03 +01:00
Sergio Martins
3f2f515553
Comment tests that are still failing
2019-08-01 16:56:30 +01:00
Sergio Martins
3303e1a682
Minor refactoring
2019-08-01 16:52:33 +01:00
Sergio Martins
9acfa2b9bf
Add a failing test
2019-08-01 15:06:42 +01:00
Sergio Martins
a0dda5f0ec
example: Add option to appear with the MainWindow embedded
2019-08-01 14:56:47 +01:00
Sergio Martins
1ac027c201
Don't show the DockWidget that's about to be restored
2019-08-01 10:58:37 +01:00
Sergio Martins
9fd4df484d
Add test for DockWidgetFactoryFunc
2019-08-01 10:50:40 +01:00
Sergio Martins
1849010e3e
Relax check, allow to set Config flags after QApplication
2019-08-01 10:05:25 +01:00
Sergio Martins
06e58c2225
Add a factory func to Config
...
So dock widgets can be created on demand while being restored
2019-07-31 22:52:35 +01:00
Sergio Martins
921d090461
Centralize the OS ifdefs in Config
2019-07-31 22:27:14 +01:00
Sergio Martins
08c858ba6e
Add a Config.h public header, to configure behaviour
...
Like enabling aero snap or native title bar
2019-07-31 22:16:25 +01:00
Sergio Martins
b32e88d50d
Make detaching smooth when having native title bar
2019-07-31 15:55:16 +01:00
Sergio Martins
e3f7a448f3
Make detaching smooth when using aero-snap
...
Needs the grabber
2019-07-31 15:48:28 +01:00
Sergio Martins
9dbe5114e2
Don't allow non-client drag while there's a client drag going on
2019-07-31 15:39:08 +01:00
Sergio Martins
95c883008c
Unbreak native title bar support
...
Send a proper WM_NCHITTEST to know if we're on the title bar or not
2019-07-31 15:08:14 +01:00
Sergio Martins
cb07bdbacc
Remove unneeded argument
2019-07-31 14:33:59 +01:00
Sergio Martins
69cc2a5f9f
Dont grab mouse when using native title bar
2019-07-31 13:24:41 +01:00
Sergio Martins
4fb416f147
Don't count native resizing as a drag
2019-07-31 12:39:43 +01:00
Sergio Martins
c4e13cd949
Delete empty frames in case dock widget isn't found
2019-07-31 12:24:07 +01:00
Sergio Martins
a9bf02ec21
Set the guest widget visible when restoring dock widget
2019-07-31 11:39:24 +01:00
Sergio Martins
6754075c68
Set icon and title to native FloatingWindow title bar too
2019-07-31 11:22:08 +01:00
Sergio Martins
5dfa66b8f2
When using native toolbars make a nice transition from docked to
...
undocked
So movement doesn't break
2019-07-31 11:08:12 +01:00
Sergio Martins
d2f7503359
Added a comment
2019-07-31 09:54:16 +01:00
Sergio Martins
4db2c639c2
Enable aero-snap by default on windows 10
2019-07-31 09:53:35 +01:00
Sergio Martins
9c27cb7dab
Enable aero-snap by default
2019-07-31 09:33:18 +01:00
Sergio Martins
73954d40ff
Fix aero-snap when there's native childs eating WM_NCHITTEST
2019-07-31 09:32:43 +01:00
Sergio Martins
990a98d7d9
Fix tests
...
Some QToolButtons are deleted later
2019-07-30 22:52:57 +01:00
Sergio Martins
aeba3a44f2
Fix build
2019-07-30 22:52:49 +01:00
Sergio Martins
f1b7fc2f89
DebugWindow: Debug if we receive nchittest messages
...
Debugging a case where we don't
2019-07-30 22:28:25 +01:00
Sergio Martins
a924970da6
Add debug code to send an hit test
2019-07-30 22:06:41 +01:00
Sergio Martins
a613aba6e6
Don't crash in qtoolbutton.cpp when unfloating
...
unfloating will trigger a deletion of the qtoolbutton which
is still in its event handler and will still dereference 'd'
2019-07-30 20:25:56 +01:00
Sergio Martins
a0ad09e616
aero-snap: Don't allow to drag FloatingWindow by clicking anywhere
...
Must drag via its TitleBar
2019-07-30 18:53:43 +01:00
Sergio Martins
2101e4be26
Aero-snap: Fix maximization behavior
...
- Maximized windows were being clipped
- Double click no longer maximizes
2019-07-30 18:41:37 +01:00
Sergio Martins
65953c2846
Fix title bar buttons not working with aero-snap
...
We can't return HTCAPTION for those.
Also fixes the used title bar geometry. It was using the geometry
of the hidden titlebar. Use actualTitleBar() instead.
2019-07-30 17:43:03 +01:00
Sergio Martins
5c4c836f30
Move aerosnap implementation into cpp file
2019-07-30 17:23:30 +01:00
Sergio Martins
39dd859584
Added a comment
2019-07-30 17:14:14 +01:00
Sergio Martins
918fceb66c
Cleanup
2019-07-30 17:12:39 +01:00