Commit Graph

4718 Commits

Author SHA1 Message Date
Sergio Martins
c6f0ec9d98 flutter: Be notified when a floating window is created 2022-09-10 22:24:44 +01:00
Sergio Martins
4cb4ab9db0 flutter: Add bindings for DockRegistry 2022-09-10 21:05:34 +01:00
Sergio Martins
d5214b8605 flutter: Add WindowWidget.dart
A widget that represents a kddw window.
Specially since flutter doesn't support multi-window. We'll
have to draw them over an overlay.
2022-09-10 18:57:11 +01:00
Sergio Martins
9dbca2618d flutter: Add initial WindowOverlayWidget.dart
Doesn't do much yet.
2022-09-10 18:21:39 +01:00
Sergio Martins
383246aa7f flutter: Regenerated bindings 2022-09-10 16:33:42 +01:00
Sergio Martins
f1efa95802 Make DockWidgetModel::m_tabBar private 2022-09-10 16:13:34 +01:00
Sergio Martins
f18a288def qtquick: Remove unneeded functions from Stack_qtquick 2022-09-10 15:46:56 +01:00
Sergio Martins
cf6b3c06e0 More m_tabWidget -> m_stack renaming 2022-09-10 15:33:49 +01:00
Sergio Martins
94fcdc990c qtquick: Stack_qtquick doesn't need to be exposed to QML 2022-09-10 15:32:13 +01:00
Sergio Martins
96990be5bb qtquick: Move DockWidgetModel to TabBar_qtquick
It's where it's used
2022-09-10 15:26:46 +01:00
Sergio Martins
0157d7d914 Remove 2 more unneeded TODOs 2022-09-10 13:27:12 +01:00
Sergio Martins
fbfec2f196 Remove unneeded TODO
This is in qtcommon now, so it's fine
2022-09-10 13:25:18 +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
3cb6c2b8d0 Add DockWidget::open()
Show/hide/visibility is being deprecated
2022-09-10 12:10:25 +01:00
Sergio Martins
b5a9c03c21 Don't handle QEvent::Hide anymore
Update the buttons in DockWidget::setIsOpen() instead.
This makes the controllers self-contained and not depending
on the "view technology". Other frameworks might not even
have the concept of show/hidden events
2022-09-10 11:37:32 +01:00
Sergio Martins
3a280ae377 Minor indirection removal (DockWidget::Private::onDockWidgetShown()) 2022-09-10 11:30:18 +01:00
Sergio Martins
29be2ae819 Remove DockWidget::hidden() and shown() signals
Visibility isn't useful as a concept, since non current tabs
are also hidden. Instead, use DockWidget::isOpen()
2022-09-10 11:23:39 +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
ea7cb3cbbb README: Explain our versioning 2022-09-08 11:52:29 +01:00
Sergio Martins
4fc43cbadd Merge branch 'master' into 2.0 2022-09-08 11:13:09 +01:00
Sergio Martins
932a80e73b Export SideBarButton
This allows code to link to subclasses of SideBarButton.

(cherry-picked from commit daebe9e680)
2022-09-08 00:15:34 +01:00
Sergio Martins
ac0b00add3 Allow custom sidebars to access its dock widgets
This is useful in cases where a custom sidebar wants behavior that
affects multiple dock widgets it "contains".

(cherry-picked from commit cf7f037af4)
2022-09-08 00:11:16 +01:00
Allen Winter
82729c85ea .reuse/dep5 - minor cleaning
(cherry picked from commit 913c570b2b)
2022-09-07 23:55:57 +01:00
Allen Winter
fd98824184 docs/api/Doxyfile.cmake - add .pngs 2022-09-07 23:52:06 +01:00
Sergio Martins
3ce1a6c77e Add SegmentedIndicators::s_centralIndicatorMaxWidth/height
So the user can change the maximum size of the central indicator

(cherry-picked from commit f84006347b)
2022-09-07 23:41:59 +01:00
Sergio Martins
bc8d17119a Release mouse if Qt doesn't receive mouse release
As explained in commit message for #166, there's a case where Qt
doesn't receive the mouse release from Windows. If that happens
then allow to drop if we're over a drop indicator.

Fixes issue #306

(cherry-picked from commit bde5be9d9c)
2022-09-07 23:29:12 +01:00
Sergio Martins
411750e865 python: Improve Dockerfile
Added more instructions and missing runtime packages

So I can test issue #304

(cherry picked from commit 7e689f0b39)
2022-09-07 23:26:14 +01:00
Sergio Martins
3ac8c5f384 Python: Add a Dockerfile for a python environment
So I can test issue #304

(cherry picked from commit ef78d60751)
2022-09-07 23:24:23 +01:00
Sergio Martins
6b720715bf cmake: Disable unity builds for python preset
It's not supported

(cherry-picked from commit bdbab41674)
2022-09-07 23:07:46 +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
ef1ce9bb1d Remove stray qDebug 2022-09-06 15:50:38 +01:00
Allen Winter
52cd8f753d appveyor.yml - don't build the master branch 2022-09-06 09:09:01 -04:00
Sergio Martins
496be36585 Merge branch '1.6' 2022-09-05 23:13:43 +01:00
Sergio Martins
f277d5efb7 Fix affinity of central frame
Fixes issue #245

(cherry-picked from commit f9e758d02f)
2022-09-05 22:57:02 +01:00
Sergio Martins
f9e758d02f Fix affinity of central frame
Fixes issue #245
2022-09-05 22:10:03 +01:00
Sergio Martins
958d1500e5 Remove unneeded View.h include and tidy forward declarations
Fixes #311
2022-09-05 21:34:11 +01:00
Sergio Martins
282c3106a4 Fix build with installed KDDW, do not expose Screen.h
Screen.h depends on KDDockWidgets_p.h which is not installed.
2022-08-23 07:57:20 +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
1998800883 Remove unneeded "spontaneous" argument from onShown/hidden 2022-08-21 22:55:45 +01:00
Sergio Martins
c8b16c9712 Remove unneeded Group::onDockWidgetShown 2022-08-21 22:09:06 +01:00
Sergio Martins
ffc8038cc4 qtquick: Fix tests when tabs are removed
As explained in the comment
2022-08-21 17:29:16 +01:00
Sergio Martins
21d7d220c5 Remove legacy Group::onDockWidgetHidden code which is now unneeded
Tests pass without it, so let's simplify.
2022-08-21 17:11:06 +01:00
Sergio Martins
b52bb85190 qtquick: Fix test due to renaming tabs not being implemented
A warning will make the tests fail. Downgrade to qDebug as
this is expected.
2022-08-21 16:59:59 +01:00
Sergio Martins
c8386e6ce1 vscode: Fully scope ${workspaceFolder}
So it works if someone adds additional folders.
For example, working on the flutter examples within the same IDE.
2022-08-21 13:19:28 +01:00