Commit Graph

1116 Commits

Author SHA1 Message Date
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