Commit Graph

687 Commits

Author SHA1 Message Date
Sergio Martins
3385b6c15c After restoring a placeholder we need to ensure all anchors are bounded
We only ensure the ones next to our item are bounded, but there can be
indirect ones that were holding items that now must shrink
2019-08-12 11:29:45 +01:00
Sergio Martins
47ff3869f1 Update size constraints after updating anchor followings
As anchors occupy space too
2019-08-09 15:43:35 +01:00
Sergio Martins
b8de3aa21f TitleBar: Allow to makeWindow() even if it's not visible
The MainWindow can be hidden still.
Anyway, this won't be called if really invisible, the assert
is a bit tight.
2019-08-08 22:51:33 +01:00
Sergio Martins
74997d35c5 Add test that we can add to an hidden window 2019-08-08 22:45:33 +01:00
Sergio Martins
5325b93573 Add a DockWidget::setLocked() stub 2019-08-08 22:31:14 +01:00
Sergio Martins
990e487fed rename name() to uniqueName() for readability 2019-08-08 22:30:29 +01:00
Sergio Martins
17b3048aeb cmake: Rename target to kddockwidgets instead of docks 2019-08-08 16:03:59 +01:00
Sergio Martins
b946627961 cmake: Fix some includes 2019-08-08 15:58:22 +01:00
Sergio Martins
020571b6f5 The QtQuick stuff compiles now 2019-08-08 12:52:18 +01:00
Sergio Martins
2a0c228733 Abstract the indicator style, now comes from the factory 2019-08-08 11:37:14 +01:00
Sergio Martins
a8ac0412fa More build fixes without QtWidgets 2019-08-08 11:37:14 +01:00
Sergio Martins
b593bcaab3 Abstract TabBar away from QtWidgets 2019-08-08 10:50:58 +01:00
Sergio Martins
daef0c470e Try to not expose the tab bar
It's an implementation detail of FrameWidget. Makes porting
to QtQuick easier
2019-08-08 10:08:38 +01:00
Sergio Martins
cd5ec8cc4a Fix some includes 2019-08-08 02:36:31 +01:00
Sergio Martins
89757def76 Abstract TabWidget away from QtWidgets, so can be used for QtQuick 2019-08-08 00:41:48 +01:00
Sergio Martins
0ba3371c6c Move layouting code from Frame to FrameWidget 2019-08-07 23:53:10 +01:00
Sergio Martins
70db3fe2a3 tests: Don't create frame directly 2019-08-07 23:11:34 +01:00
Sergio Martins
77244f93f5 Fix FloatingWindow sometimes appearing with title bar 2019-08-07 22:29:44 +01:00
Sergio Martins
d2bd2b5601 Update .gitignore 2019-08-07 21:26:21 +01:00
Sergio Martins
6060741851 More QtWidget abstraction 2019-08-07 14:24:11 +01:00
Sergio Martins
bb304a82e5 Fix windows build 2019-08-07 14:11:46 +01:00
Sergio Martins
ebb37e9871 Fix build 2019-08-07 14:03:48 +01:00
Sergio Martins
93303035c4 Drag the QWindow instead of the top-level QWidget
So it works for QtQuick too
2019-08-07 14:01:29 +01:00
Sergio Martins
022e91db78 More QtWidget decoupling 2019-08-07 13:35:45 +01:00
Sergio Martins
f37d9c0a94 Disable QtQuick support in cmake, not ready yet 2019-08-07 11:30:57 +01:00
Sergio Martins
a27b4b387a Split QWidgetAdapter into _widget and _quick variants
So we don't need so many ifdefs
2019-08-07 11:29:39 +01:00
Sergio Martins
823d1b658b FloatingWindow now inherits from QWidgetAdapter too 2019-08-07 00:20:28 +01:00
Sergio Martins
c7754f8206 Remove some QWidget specific code from DropArea 2019-08-06 23:50:50 +01:00
Sergio Martins
266e683f98 Abstract Separator too, it inherits from QWidgetAdapter 2019-08-06 23:17:08 +01:00
Sergio Martins
4bfd76dc61 Introduce QWidgetAdapter and apply it to MultiSplitter
MultiSplitter is now QWidget agnostic, and should work with
QtQuick
2019-08-06 23:07:47 +01:00
Sergio Martins
cb7ecb76e4 Rename the MultiSplitterWidget files too 2019-08-06 22:19:00 +01:00
Sergio Martins
01c4bddcc3 Rename MultiSplitterWidget to MultiSplitter
Since now we're suffixing with Widget the QtWidget specific classes,
not this one that will be shared with QtQuick
2019-08-06 22:12:15 +01:00
Sergio Martins
5613030fd3 Revert "Remove DOCKS_EXPORT_FOR_UNIT_TESTS to simplify things
Maybe let's keep it, since it's on very core classes that
users shouldn't change

This reverts commit db4167dd1f.
2019-08-06 22:08:00 +01:00
Sergio Martins
db4167dd1f Remove DOCKS_EXPORT_FOR_UNIT_TESTS to simplify things
And also to give more power to the user
2019-08-06 22:05:30 +01:00
Sergio Martins
49bd0b42be Add unit-test for dragging by tab widget directly 2019-08-06 21:12:34 +01:00
Sergio Martins
c78180f135 Minor refactoring 2019-08-06 20:51:28 +01:00
Sergio Martins
fc90d1e506 Move more code into tests/utils.cpp 2019-08-06 20:45:16 +01:00
Sergio Martins
1c7d0c0059 tests: refactor drag() to support dragging the TabWidget directly 2019-08-06 20:22:20 +01:00
Sergio Martins
6fe115e3fc Tests for Flag_HideTitleBarWhenTabsVisible 2019-08-06 20:02:15 +01:00
Sergio Martins
efd72df940 Remove FlagDraggableTitleBar, we have Flag_HideTitleBarWhenTabsVisible
There's not much sense to have the former
2019-08-06 16:22:24 +01:00
Sergio Martins
8f2f7e634a Add option to hide title bar when we have tabs 2019-08-06 16:20:27 +01:00
Sergio Martins
c3605fd6d2 Export more classes, since we're letting the user customizing them 2019-08-06 14:18:50 +01:00
Sergio Martins
8aa81d8f99 Add example of customizing SeparatorWidget 2019-08-06 14:10:13 +01:00
Sergio Martins
3ef2cef7b7 Allow to configure separator thickness 2019-08-06 13:56:57 +01:00
Sergio Martins
e206b9f0f8 Fix layout margins, got lost with a refactoring 2019-08-06 13:46:12 +01:00
Sergio Martins
eafc00657b Separator: Decouple the QWidget dependency
There's no Separator and SeparatorWidget. The former only with
state/logic. To be reused by QtQuick.
2019-08-06 13:32:06 +01:00
Sergio Martins
8742da76ae DockWidgetBase: Move layouting code into DockWidget.cpp
We don't want QWidget related code in the base class, to be
shared with QML
2019-08-06 12:58:07 +01:00
Sergio Martins
464ef4fd93 Move widget specific stuff from DockWidgetBase to DockWidget 2019-08-06 00:36:00 +01:00
Sergio Martins
8f05c3fa72 cmake: include_directories-- 2019-08-05 23:55:19 +01:00
Sergio Martins
fb837b7713 Move DockWidget.cpp into widgets/
As it's specific to QtWidgets. It's mostly empty now
and inheriting from DockWidgetBase, but we'll move a few stuff.
2019-08-05 23:35:44 +01:00