Sergio Martins
c91c28748e
Fix a detachment found by clazy
2023-05-03 20:38:33 +01:00
Sergio Martins
ee5e004ed2
Fix some icons not appearing in title bar
...
Looks like QIcon was being added into the cache after it was already
moved from.
2023-02-27 22:50:25 +00:00
Sergio Martins
2326874be7
Cache TitleBar icons
...
Minor performance improvement. Detected by Milian when profiling.
2023-01-27 14:36:05 +00:00
Allen Winter
6f6679d6be
update copyright year to 2023
2023-01-06 12:24:12 -05:00
Sergio Martins
0bef7bc0e9
Load FloatingWindowFlags from disk with LayoutSaver
...
If a user specified different flags for a certain FloatingWindow,
they'll be reloaded when restored with LayoutSaver as well.
2022-09-16 18:42:11 +01:00
Sergio Martins
22ffc6c7ea
Fix QtQuick build
2022-01-20 22:37:36 +00:00
Mauro Persano
d1767b5534
Don't render frame for central persistent widget
...
When the main window has a central persistent widget, make sure the
containing tab widget doesn't render a frame around it.
2022-01-20 22:08:17 +00:00
Allen Winter
93e60a743e
update copyright year
2022-01-20 08:05:26 -05:00
Allen Winter
7001aa58ce
clang-format on code base
2021-07-12 17:05:37 -04:00
Sergio Martins
1c49e2297a
Fix QtQuick build
2021-06-22 23:22:02 +01:00
Sergio Martins
6f031e3c33
Windows: Fix initial FloatingWindow size in HDPI
...
When:
- Screen A (100%), B (150%)
- MainWindow on screen B
- Trying to open a floating window on screen A (via setGeometry())
The Qt Windows QPA would error out when setting the geometry and it
would be too small.
The solution is to call setGeometry() before we create the QWindow.
Too much of an edge case to risk putting this on 1.3 branch.
Will be in 1.4.0.
Fixes #191
2021-06-22 23:09:38 +01:00
Sergio Martins
79fe9c2875
cmake: Remove private/ from our PRIVATE include path
...
Because some build systems don't support public/private includes,
and would require us to add private/ to the public include path.
This allows for an easier integration with some more exotic
build systems
2021-06-15 19:53:05 +01:00
Sergio Martins
19fd1635e6
Remove userType() from public API for now
...
If added, will need to be through overloads, to not break source
compat. Will add them once there's a need.
2021-03-01 16:34:22 +00:00
Sergio Martins
e37c1f0e8c
qtquick: Pass the userType all the way to titleBarFilename()
2021-02-28 20:33:46 +00:00
Sergio Martins
15e63381a9
Added DockWidgetBase::setUserType(int)
...
This is an opaque value which KDDW won't try to interpret or do
anything with it other than forward it to the FrameworkWidgetFactory.
Which if specialized by the user he can have different title bars
for different said "dock widget types"
2021-02-28 18:57:35 +00:00
Sergio Martins
482757b1cc
qtquick: Don't hardcode "FloatingWindow.qml"
...
Allow the user to specify their impl
2021-02-26 19:21:42 +00:00
Sergio Martins
c143f832c6
qtquick: Don't hardcode "Frame.qml"
...
Allow the user to specify their impl
2021-02-26 19:12:53 +00:00
Sergio Martins
67a173ef53
qtquick: Don't hardcode "DockWidget.qml"
...
Allow the user to specify their impl
2021-02-26 18:57:31 +00:00
Sergio Martins
92f6453d26
Minor refactoring
...
Adds scalingFactorIsSupported(dpr) to utils, to workaround a bug
on earlier Qt
2021-02-14 19:17:15 +00:00
Allen Winter
875544a449
Merge branch '1.2'
2021-01-02 09:32:20 -05:00
Allen Winter
a2f4c972a6
update copyright year
2021-01-02 09:27:50 -05:00
Sergio Martins
771bf10951
Merge branch '1.2'
2020-12-22 18:48:22 +00:00
Sergio Martins
f8d0ffe7ba
Fix a few clazy warnings
2020-12-22 16:02:55 +00:00
Sergio Martins
b15afa9231
Move TabWidget instantiation to base class Frame
...
Instead of being instantiated by both FrameQuick and FrameWidget
2020-12-20 14:21:39 +00:00
Sergio Martins
6e0898a31e
Remove some methods from TabWidgetQuick
...
Reuse more from base class.
2020-12-20 13:19:07 +00:00
Sergio Martins
616c871da7
qtquick: initialize the tab widget via the factory
2020-12-20 11:25:50 +00:00
Sergio Martins
a9c70d086c
qtquick: Move TabWidget_p.h out of widgets/
...
To be shared with qtquick
2020-12-20 00:07:07 +00:00
Sergio Martins
143c82291d
qtquick: The user can now choose another titlebar file
2020-12-02 22:43:01 +00:00
Sergio Martins
2c687fe469
qtquick: Implement the rubber band
...
When hovering a drop indicator we now see the blue rubberband
2020-11-29 22:31:11 +00:00
Sergio Martins
a5c65ae039
Introduce NullIndicators and a Config option for it
...
Mostly for debugging purposes, but also useful if anyone doesn't
want to display indicators
2020-11-28 14:11:39 +00:00
Sergio Martins
8791870efb
Blacklist classical indicators on WASM
...
Use segmented indicators.
Wasm doesn't support top-level windows with translucency, which
is required for the classical indicators
For issue #100
2020-11-13 18:18:25 +00:00
Sergio Martins
aba1cce1f6
Merge branch '1.1' into master
2020-11-02 11:37:56 +00:00
Sergio Martins
7318675e84
Clarify comment about fractionaly scalling factors
...
The problem can happen on Windows too.
Fixes issue #94
Nothing more we can do here, it's fixed for Qt 5.15.2.
2020-11-02 11:36:24 +00:00
Sergio Martins
c6c1fe79c3
Fix QtQuick build
...
src/ is no longer in the include path
2020-10-28 22:15:32 +00:00
Sergio Martins
5872c2fbe3
Wayland: Support classical indicators too
...
The Indicator Window is top-level, but on Wayland that can't do,
as we have no way to position it. So parent it. The indicators
are now under the window being dragged, but that's no so bad, as it's
smi-transparent, so you still see the indicator.
2020-10-17 11:02:49 +01:00
Sergio Martins
f3d7400c15
wayland: End the drag properly when user cancels the drag
2020-10-15 19:02:46 +01:00
Sergio Martins
3fb723a82f
quick: Fix QtQuick build
2020-10-03 18:27:22 +01:00
Sergio Martins
d1b2d17f7d
Allow the normal/restore icon to be different than float/dock
...
Allow we use the same icon, the user might now want to, so allow
them to use a different icon
2020-10-03 14:58:07 +01:00
Sergio Martins
f062ab7a64
TitleBar: Move button construction into the FrameWorkWidgetFactory
...
So it can be more easily overridden by the user.
A virtual in TitleBarWidget is not good enough as we can't call virtuals
when in the ctor
2020-10-03 14:52:44 +01:00
Sergio Martins
a6c4730c44
SideBar is now constructed by the framework widget factory
...
Means it can be overridden by the user
2020-09-20 18:08:23 +01:00
Sergio Martins
a06fec51c8
Merge branch '1.0' into master
2020-08-25 21:54:32 +01:00
Sergio Martins
4b4d839074
Expose more private API so users can use the full power
...
Installed more private headers.
TabWidget_p.h was moved into widgets/ as the QtQuick impl won't
use that abstraction. Could even be folded into TabWidgetWidget.
Fixes #65
2020-08-25 21:46:46 +01:00
Sergio Martins
113e6453ea
example: Show usage of segmented indicators
2020-08-23 16:57:48 +01:00
Sergio Martins
00b4dbc821
Add a Segmented Indicator
...
Just a POC of a new indicator style
2020-08-23 13:24:27 +01:00
Sergio Martins
7eaac87640
qml: Add a ClassicIndicatorsOverlay.qml file
...
Doesn't do much yet
2020-08-10 19:05:59 +01:00
Sergio Martins
4bbc0f1d4f
qml: Create drop indicator overlay too
...
The actual impl isn't done yet though
2020-08-09 22:45:15 +01:00
Sergio Martins
64791eec82
qml: decouple ClassicIndicator from QRubberBand
...
the rubber band is now returned from the factory, meaning it can
be a QQuickItem when QtQuick is being used
Still need to remove the QtWidget'isms from IndicatorWindow
though
2020-08-09 18:39:56 +01:00
Sergio Martins
36407d2abe
qml: Separators now work
2020-08-01 17:44:07 +01:00
Sergio Martins
08721ea458
qml: Fix linking
...
Abstractions are all in place now.
Let the port start!
2020-07-26 21:57:19 +01:00
Sergio Martins
08dc55ea06
qml: Adjust API of the quick specialization of the factory
2020-07-26 16:16:06 +01:00