Commit Graph

62 Commits

Author SHA1 Message Date
Sergio Martins
cc8dbd3d0c Fix typo on View::onResized()
Width and height were swapped. Caught by the tests.
2022-08-10 21:19:07 +01:00
Sergio Martins
532dc04ec6 Make View::onResized(QSize) receive 2 integers instead
Avoids an allocation when called by dart.
2022-08-09 01:25:56 +01:00
Sergio Martins
d8189e3e03 .clang-format: wrap at column 100 2022-08-05 16:49:00 +01:00
Waqar Ahmed
4d5a43ea1f Remove QScreen usage from non-frontend classes 2022-07-25 11:39:36 +05:00
Sergio Martins
013e390428 Don't create unneeded controllers
ViewWrappers don't actually have a controller
2022-07-20 12:39:34 +01:00
Sergio Martins
d99b842ae1 Always instantiate a controller even if nullptr is passed
During the multisplitter tests we create dummy views without
an associated controller. Let's create the controller anyway, as
more logic is moving into them, even if just for tests.
2022-07-19 18:53:38 +01:00
Sergio Martins
92b49f78a9 View CTOR no longer receives "thisQObject" via argument
It's unused, views don't need to be QObject based anymore
2022-07-10 22:44:54 +01:00
Sergio Martins
1c21555767 Finally remove View::asQObject()
It's not required anymore.
2022-07-10 22:29:31 +01:00
Sergio Martins
8af8c603c1 Allow to install event filters on view too
So we can port away from Qt event filters.

In a followup will deliver events, one commit per type or so.
Not all events will be filtered, only the ones used by us
2022-07-02 13:31:16 +01:00
Sergio Martins
cad7cb1c8f Remove View::parent() and Item::host()
Those deal in QObject, which is being phased out
2022-06-27 21:40:05 +01:00
Sergio Martins
82b3aba854 Remove ViewWrapper*h from public API 2022-06-24 17:20:09 +01:00
Sergio Martins
10c918b93c Use View instead of ViewWrapper in the api
The latter will be an implementation detail soon
2022-06-24 00:10:50 +01:00
Sergio Martins
bc767cefac Rename asFrameController to asGroupController 2022-06-21 17:32:38 +01:00
Sergio Martins
fe7a8d450c Rename Frame class to Group 2022-06-21 16:34:20 +01:00
Sergio Martins
73d627554a Remove Frame.h/cpp to Group.h/cpp
It's a better name.
Files only for now. Contents will come in a followup.
2022-06-21 08:51:52 +01:00
Sergio Martins
7017ce8396 Move KDBindings usage from View.h to View_p.h
KDBindings is implementation detail. User won't have to install
it, at this point.
2022-06-18 12:15:42 +01:00
Sergio Martins
6bd87113b4 Simplify some code, add a View::transientWindow() shortcut 2022-06-05 14:19:08 +01:00
Sergio Martins
f1f722f1ce Replace TODOv2 tags with TODOm2 and TODOm3 tags
Not all todos are required for milestone m2
2022-06-04 19:53:25 +01:00
Sergio Martins
9881e0488f windows: Port FloatingWindow's nchittest code
Only DragController needs to be ported on Windows now
2022-05-30 23:36:54 +01:00
Sergio Martins
08dc12e8d7 Move globalGeometry() into View
Allows to remove some cruft
2022-05-30 19:50:58 +01:00
Sergio Martins
fe87380d83 Layout.cpp no longer depends on QtWidgets 2022-05-29 20:09:26 +01:00
Sergio Martins
586ed8d70b Replace View_qtquick::windowIsBeingDestroyed with View::aboutToBeDestroyed
Easier if it's generic.
2022-05-27 14:26:34 +01:00
Sergio Martins
fc74698dac Remove some unused qtwidget includes from controllers/ 2022-05-26 10:02:28 +01:00
Sergio Martins
a039f102a3 Remove some unneeded QWidget includes 2022-05-17 22:16:00 +01:00
Sergio Martins
f29d3bf5f8 Move Layout into Controllers namespace 2022-05-15 21:22:26 +01:00
Sergio Martins
378f380968 Rename LayoutWidget to Layout , since it's not a view
Controllers shouldn't be suffixed
2022-05-15 21:04:07 +01:00
Sergio Martins
df96b7ab81 Move MDILayout into Controllers namespace 2022-05-15 16:47:05 +01:00
Sergio Martins
20cd7b04a5 Rename MDILayoutWidget class to MDILayout
Since it's a controller, we strip the suffix
2022-05-15 16:27:51 +01:00
Sergio Martins
fa16020d61 Rename MDILayoutWidget to MDILayout and move it to controllers/
Since it's not a view, remove the "Widget" suffix
2022-05-15 16:24:57 +01:00
Sergio Martins
9d0f137f9d qtquick: FloatingWindow and MainWindow are now ported and compile 2022-05-15 15:29:54 +01:00
Sergio Martins
1a47d52ed9 Make View::handle() non virtual
So we can still do comparisons if ~View_qtwidgets was already called.
Otherwise it would be calling a pure-virtual.
2022-05-15 12:55:55 +01:00
Sergio Martins
16816d47d6 Added Window::screen()
Which allows to make View::screen() non-virtual
2022-05-02 23:24:49 +01:00
Sergio Martins
cccd3a47f0 View::closeWindow() is no longer virtual.
Implementation is common to all frontends.
Renamed it to closeRootView() to be consistent.
2022-05-02 17:54:00 +01:00
Sergio Martins
96912515a8 View::windowGeometry() is no longer virtual.
Implementation is the same for all frontends.
2022-05-02 17:33:44 +01:00
Sergio Martins
04785a8b49 View::parentSize() is no longer virtual
The implementation is common to all frontends.
2022-05-02 17:30:47 +01:00
Sergio Martins
a8cb498eb5 Amend previous commit, use *Controller as suffix 2022-05-02 00:05:18 +01:00
Sergio Martins
d0c1b94585 Remove *View and *Widget suffixes from layouts
They are controllers, not views.
2022-05-02 00:01:44 +01:00
Sergio Martins
e17f6c0066 Add some missing const 2022-05-01 23:58:14 +01:00
Sergio Martins
a550567a4c Rename asMultisplitterView to asDropArea
It's no longer a view.
2022-05-01 23:56:41 +01:00
Sergio Martins
3fabf34bee Renamed View::windowHandle() to View::window()
windowHandle() is missnamed in Qt because QWidget::window() was already
taken in Qt4. But we can make it better here.
2022-05-01 23:09:18 +01:00
Sergio Martins
3416a74723 Don't make View::move(QPoint) pure-virtual
We already have a virtual overload, just call it.
2022-05-01 20:12:32 +01:00
Sergio Martins
420a85943a Finally remove View::asQWidget()
Soon we can start the QtQuick port to the new architecture
2022-04-26 00:00:23 +01:00
Sergio Martins
0f61ef63a2 Split DropArea and MDILayout into View/Controller 2022-04-25 18:50:41 +01:00
Sergio Martins
6ebb432932 Port LayoutWidget away from QWidget
DropArea and MDILayout now inherit from it, in addittion to QWidget.
This mean DropArea can now be split into View/Controller alone,
without having to port LayoutWidget and MDILayout in the same commit,
which would be hard to review.
2022-04-24 12:57:20 +01:00
Sergio Martins
1b6fa1bd36 Rename Type::MultiSplitter to Type::DropArea
MultiSplitter was removed
2022-04-23 15:28:17 +01:00
Sergio Martins
dc6d77e266 Fold MultiSplitter into DropArea
The separation was never very useful. There's was always only
one derived class, the DropArea. Merge the two.
2022-04-23 15:22:38 +01:00
Sergio Martins
d6fd54cec4 Por all usages of QWindop/windowHandle to KDDockWidgets::Window
Removes a lot of asQWidget() code and is also prepared for non-Qt
views.
2022-04-09 19:21:56 +01:00
Sergio Martins
9f4cb1a13e Port FocusScope away from QGuiApplication 2022-04-05 23:01:29 +01:00
Sergio Martins
43faf85eb4 Add View::isNull()
ViewWrappers don't have ownership of the gui element.
The gui element might have been deleted, leaving us with a
stale wrapper

For impl simply use a QPointer in the QtWidgets and QtQuick
backends
2022-04-05 21:50:21 +01:00
Sergio Martins
ccd7557c75 Add View::beingDestroyed signal
It's emitted in ~View
2022-04-05 10:11:37 +01:00