Allen Winter
4c23dff2e0
clang-format set ColumnLimit=0
2022-10-25 09:13:40 -04:00
Sergio Martins
cb5a42ef2e
tests: Fix memory leak
...
The root3 wasn't being put inside anything
2022-10-17 14:37:33 +01:00
Sergio Martins
437bc31aca
Fix memory leak in a test
2022-10-17 13:48:38 +01:00
Sergio Martins
1bed9c8a62
tests: Manually test that LayoutSaver triggers numDockWidgetsChanged
2022-10-03 17:23:29 +01:00
Sergio Martins
66a572f177
tests: Add a test for TitleBar::tst_titlebarNumDockWidgetsChanged()
2022-10-03 17:13:06 +01:00
Sergio Martins
1ee12f5b90
qtquick: Add a
2022-10-03 17:09:41 +01:00
Sergio Martins
60dcec9286
Remove some unneeded mentions of QEvent::Show
2022-09-10 12:58:35 +01:00
Sergio Martins
4e3f4e3073
More replacing of show() with open()
...
This time on DockWidgetViewInterface
2022-09-10 12:40:54 +01:00
Sergio Martins
cf44110033
Rename DockWidget::show() to DockWidget::open()
...
Since non-current tabs are open but not visible.
2022-09-10 12:26:30 +01:00
Sergio Martins
764385de9f
refactor: DockWidget::isOpen() now keeps its state in the controller
...
No longer tied to QtWidget visibility. This will make it easier to
make new frontends.
2022-09-09 19:51:25 +01:00
Sergio Martins
d515969724
Fix QTabBar::setCurrentIndex() not getting called sometimes
...
TabBar::setCurrentIndex() was bailing out and not informing the view
because the current dock widget was the same. That happened because
m_currentDockWidget was being set in two places.
Fixes issue #312
2022-09-07 12:47:04 +01:00
Sergio Martins
ad8457490b
Add an xfailing test for issue #312
2022-09-07 12:07:03 +01:00
Sergio Martins
c0ef4ae0d2
tests: Add a test for DockWidget:setAsCurrentTab()
...
CC issue #312
2022-09-07 11:52:19 +01:00
Sergio Martins
ede6dff09b
qtquick: Use a simple Item instead of a StackLayout
...
StackLayout doesn't allow to reorder children. Instead, just stack
them in an arbitrary order and use visibility to hide the non-current ones.
2022-09-06 22:58:49 +01:00
Sergio Martins
c1420a7e80
tests: Check that current tab matches current widget
2022-09-06 21:51:00 +01:00
Sergio Martins
f9e758d02f
Fix affinity of central frame
...
Fixes issue #245
2022-09-05 22:10:03 +01:00
Sergio Martins
a74dace6e4
tests: Add more tests to TestDocks::tst_addAsPlaceholder()
...
While I'm debugging an issue.
2022-08-22 19:40:19 +01:00
Sergio Martins
f0c008fae3
tests: Add a unit-test for Adding dock widget hidden
2022-08-21 12:57:53 +01:00
Sergio Martins
61e93a1970
tests: Add a unit-test for DockWidget::isOpen()
2022-08-21 00:54:24 +01:00
Sergio Martins
763ad1ae6b
Wrapper views now also get a dummy controller
...
Now we can finally make all setVisible/isVisible calls go
through the controller
2022-08-20 19:24:21 +01:00
Sergio Martins
a1f427e8e2
Remove unused DockRegistry::dockWidgetForGuest()
2022-08-20 18:09:52 +01:00
Sergio Martins
ca26e856db
tests: Fix tst_tabbar for QtQuick
2022-08-15 20:46:36 +01:00
Sergio Martins
be2c297fa9
Fix list of tabs not being updated when dock widget closed
...
When closing, we need to remove from the TabBar controller.
QtWidgets tests no pass again.
2022-08-15 19:55:01 +01:00
Sergio Martins
2a37813409
Remove more TabBarViewInterface related to indexes
...
That's in the controller now, shared by all frontends
2022-08-15 14:14:15 +01:00
Sergio Martins
5a455f86a1
TabBar now knows the list of dockwidgets
...
It's no longer on the view.
2022-08-14 22:43:33 +01:00
Sergio Martins
9a8ca5135e
Fix build
2022-08-14 19:38:51 +01:00
Sergio Martins
4627571f3f
qtquick: Fix current tab being current even after removed
...
Added lots of tests for TabBar.
2022-08-14 15:44:38 +01:00
Sergio Martins
d071fc440a
Don't run tst_qtquick if KDDW_TEST_FRONTENT=1 is set
...
Only QtWidgets test should run in that case.
2022-08-14 14:24:51 +01:00
Sergio Martins
1868ad7bd4
Move more code out of Stack and into TabBar
...
The signals are more about the tabs.
2022-08-13 14:50:19 +01:00
Sergio Martins
1abebef40b
Move move code from StackViewInterface.h to TabBarViewInterface.h
...
Phasing out the former, so frontend writers don't have to implement
two duplicate interfaces
2022-08-13 14:11:33 +01:00
Sergio Martins
69c7d3fd57
Remove View::maximumSize() as we already have View::maxSizeHint()
...
Having both was due to QWidgets having both. For QtQuick and other
frontends we only want the latter.
2022-08-07 14:49:32 +01:00
Sergio Martins
d8189e3e03
.clang-format: wrap at column 100
2022-08-05 16:49:00 +01:00
Sergio Martins
69c2c0770f
tests: Add another test to tst_dropArea
2022-08-03 09:48:30 +01:00
Sergio Martins
3f32bc3dce
tests: Move tst_droparea.cpp into tests/controllers/
2022-08-03 09:24:03 +01:00
Sergio Martins
e4b2d37f96
Rename "addWidget" to "addTab"
2022-07-31 23:03:16 +01:00
Sergio Martins
7b20eedf6d
Add tst_dropArea
...
Removed the requirement to have a parent, it's not really needed,
conceptually.
2022-07-27 10:34:13 +01:00
Sergio Martins
84ec64fade
unnest CreateViewOptions so we can create dart bindings for it
...
Our binding generator doesn't support nested classes yet
2022-07-26 15:03:21 +01:00
Sergio Martins
d0f1f2ce77
tests: Test DockWidget::isOpen() too
2022-07-21 17:54:39 +01:00
Sergio Martins
a9d2be775b
tests: Test that dock widgets are floating after being closed
...
Not that it means much, since they're hidden. But be consistent.
2022-07-21 17:27:37 +01:00
Sergio Martins
06534bb5d8
tests: Add assert
2022-07-20 14:56:26 +01:00
Sergio Martins
a5589dbe29
tests: Add assert
...
Makes it easier to debug, as it crashes sooner
2022-07-20 14:53:14 +01:00
Sergio Martins
36931e7c45
Allow DragController views to have access to its controller
...
For consistency
2022-07-20 13:12:52 +01:00
Sergio Martins
de40629094
Remove duplicate signal "currentDockWidgetChanged"
...
Because they were not equivalent, one was emitted in situations
where the other wasn't. Use a single signal to avoid that.
2022-07-17 19:30:28 +01:00
Sergio Martins
3cfc4c484f
tests: test that Group::currentIndex is correct
2022-07-17 18:52:18 +01:00
Sergio Martins
64a4ad5029
Fix build when dummy platform is disabled
2022-07-11 19:31:26 +01:00
Sergio Martins
adcde3a65c
tests: Add tst_dummyplatform
...
Its only purpose is to instantiate some classes so we're sure
they implement all needed pure virtuals
The dummy platform is just used for copy-pasting into a new
platform, so let's cover as much boiler-plate as possible
2022-07-11 13:45:48 +01:00
Sergio Martins
640ef58553
Allow to pass View* to qDebug
2022-07-10 18:36:35 +01:00
Allen Winter
54a29b5cae
Merge branch 'master' into 2.0
2022-07-09 11:09:35 -04:00
Allen Winter
460b898bea
cmake-lint, cmake-format CMake files
2022-07-09 09:11:45 -04:00
Sergio Martins
b1605cc58b
Rename Group::tabWidget() to Group::stack()
...
Matches its class name now
2022-07-07 11:37:47 +01:00