Sergio Martins
c39486ce84
vscode: Remove ms C++ extension settings
...
I'm on clangd instead.
I could leave them there, but no idea if they are correct.
Once we have a developer using the MS extension then he's free
to maintain the options.
2023-02-01 17:16:34 +00:00
Sergio Martins
e7bc93a69f
Fix relayouting when dock widget is deleted directly
...
Usually, it's closed. "delete" isn't very well tested.
When it's deleted the container item becomes empty, so needs
to be resized to QSize(0,0) as well.
There's already a codepath for that but was too restrictive.
It now handles that case too.
Fixes #336
2023-01-27 18:09:34 +00:00
Sergio Martins
f2c3fe6910
tests: Add an XFAIL for issue #336
2023-01-27 16:23:36 +00:00
Sergio Martins
2326874be7
Cache TitleBar icons
...
Minor performance improvement. Detected by Milian when profiling.
2023-01-27 14:36:05 +00:00
Mauro Persano
1fc57b02b3
Save side bar overlay geometry when frame is resized
...
Previously we were updating the side bar overlay geometry only when the
side bar was closed. So if we open the side bar overlay, resize it, and
save/restore the layout state, we won't get the last side bar size.
Save it every time the frame is resized.
2023-01-27 12:19:26 +00:00
Mauro Persano
c55ce478df
Serialize dock overlayed geometries
...
Otherwise the size of auto-hidden dock widgets won't get restored.
2023-01-27 12:19:26 +00:00
Sergio Martins
b0dfbc4486
Fix Werror build regarding unused variable
2023-01-26 22:57:39 +00:00
Allen Winter
6f6679d6be
update copyright year to 2023
2023-01-06 12:24:12 -05:00
Sergio Martins
a6598d4607
Fixed build with -Wextra-semi
2023-01-06 17:14:58 +00:00
Sergio Martins
32b0e024d8
Fixed case of corrupt layout when using setDockWidgetFactoryFunc()
...
If the factory returned null for some dock widget, then the layout
would have holes. They need to be turned into placeholders, which
will be invisible.
Move the test into the QtWidgets guard. There's no point in making
it agnostic, since the bug is in the layouting.
2023-01-06 15:24:02 +00:00
Sergio Martins
392504e902
test: Add test for a bogus layout
...
The layout is creating holes when we skip restoring 1 dock widget
2023-01-05 22:34:30 +00:00
Sergio Martins
5b484a7dda
tests: Added a test for issue #326
...
Currently an XFAIL
2022-11-18 11:50:20 +00:00
Mauro Persano
4be77d96df
Fix layout scaling factor when main window is native
...
When a main window is serialized, we get the geometry to be serialized
with MainWindowBase::windowGeometry. When the layout is restored, we
get the geometry of the current window with window()->geometry() and use
it to compute the scaling factor.
The values returned by MainWindowBase::windowGeometry and
window()->geometry() will differ if the main window is a native widget,
but not a toplevel window. In this case, windowGeometry returns the
geometry of the main window widget, not of its containing window.
Use MainWindowBase::windowGeometry when computing the scaling factor, so
that these geometries are consistent and the scaling factor is correct.
2022-11-14 11:03:46 +00:00
Sergio Martins
8947c56442
Improve auto-hide icon transparency
...
They had non-transparent corners
2022-11-10 11:35:30 +00:00
Sergio Martins
35bf7bc9c8
Fix moving floating windows to negative positions
...
QScreen::geometry() is already in "virtual coordinate space", no
need to map again. Bug wasn't noticeable since most setups
have virtual top left at 0,0, so it was a no-op in most cases.
Fixes bug #321
2022-10-28 12:08:38 +01:00
Allen Winter
0d943620ac
README.md - add blurb about demo
2022-10-27 16:10:07 -04:00
Allen Winter
8f6c659021
CMakeLists.txt - change name of demo
2022-10-27 16:09:56 -04:00
Allen Winter
a82f2afa64
create-demo-win-zip - create a 7z with the example execs
...
Add a "createZipDemo" buildsystem target to run this.
The 7z includes the Qt runtime.
2022-10-27 11:45:55 -04:00
Allen Winter
f1ae102383
pre-commit - autoupdate, and markdownlint config
2022-10-25 07:53:28 -04:00
Eism
34a7bfd0e5
Fixed using normal geometry of platform window if fractional scaling is enabled
2022-10-06 10:47:15 +01:00
pre-commit-ci[bot]
1f27716020
[pre-commit.ci] pre-commit autoupdate
...
updates:
- [github.com/pre-commit/mirrors-clang-format: v14.0.0 → v14.0.6](https://github.com/pre-commit/mirrors-clang-format/compare/v14.0.0...v14.0.6 )
- [github.com/PyCQA/pylint: v2.15.2 → v2.15.3](https://github.com/PyCQA/pylint/compare/v2.15.2...v2.15.3 )
2022-09-28 20:12:44 +01:00
Sergio Martins
4706392464
Amend last commit by using the shorter name, UseQtWindow
...
Still, one redundant flag was removed, but now, the one with
the long name.
For #314
2022-09-25 19:16:57 +01:00
Sergio Martins
3a9b583552
Remove uneeded FloatingWindowFlag::UseQtWindow
...
There's already DontUseQtToolWindowsForFloatingWindows
2022-09-25 19:05:59 +01:00
Sergio Martins
9a74839910
FloatingWindow::isUtilityWindow() now honours custom flags
...
If the user has passed custom per-window flags then we shouldn't
use the global ones.
Fixes minimize problem in #314
2022-09-25 18:47:31 +01:00
Sergio Martins
322ac107e3
refactoring: Move KDDockWidgets::usesUtilityWindows into FloatingWindow.cpp
...
No behaviour change for now, just moving.
Its usage is tricky, so it should only be used in one place, so we
can honour FloatingWindow::m_flags overrides too.
For issue #314
2022-09-25 17:27:45 +01:00
Sergio Martins
e98633b664
Remove unused variable, which fixes Windows build
2022-09-17 11:35:31 +01:00
Sergio Martins
290c0815e8
Update Changelog regarding issue #314
2022-09-16 18:42:11 +01:00
Sergio Martins
40d57e5000
Honour FloatingWindowFlag::DontUseParentForFloatingWindows
2022-09-16 18:42:11 +01:00
Sergio Martins
f2218f8ff3
Add Frame::requestedFloatingWindowFlags()
...
Just so we can share this bit of code without duplicating it
2022-09-16 18:42:11 +01:00
Sergio Martins
c070a11312
Remove FloatingWindowFlag::DontUseQtToolWindowsForFloatingWindows
...
UseQtTool and UseQtWindow have the same effect
2022-09-16 18:42:11 +01:00
Sergio Martins
7ac6a31512
Allow to specify Qt::Tool or Qt::Window per floating window
2022-09-16 18:42:11 +01:00
Sergio Martins
ef1226187d
tests: Test DockWidgetBase::setFloatingWindowFlags()
2022-09-16 18:42:11 +01:00
Sergio Martins
757e57559a
Add DockWidgetBase::setFloatingWindowFlags(flags)
...
So you can specify, per floating window, which flags you want
2022-09-16 18:42:11 +01: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
369437cbae
Move FloatingWindow::Flag enum to KDDockWidgets namespace level
2022-09-16 18:42:11 +01:00
Sergio Martins
fd35fc26e6
Allow to specify which flags FloatingWindow should use
2022-09-16 18:42:11 +01:00
Sergio Martins
c2208b169e
LayoutSaver: Store the floating window flags too
2022-09-16 18:42:11 +01:00
Sergio Martins
ff200950aa
Isolate more Config flags in FloatingWindow
2022-09-16 18:42:11 +01:00
Sergio Martins
9916032981
Further isolate access to top-level Config in FloatingWindow
...
In preparation for per-floatingwindow flags
2022-09-16 18:42:11 +01:00
Sergio Martins
e6ccd9d01c
Move TitleBar::supportsMinimize|MaximizeButton into FloatingWindow
...
Just a minor refactoring so FloatingWindow can save it during serialization.
So we can support per-floating window settings.
2022-09-16 18:42:11 +01:00
Allen Winter
3a3fedce3f
pre-commit - update hooks versions
2022-09-16 12:55:56 -04:00
Allen Winter
5fdc1a14bc
README-bindings.md - minor
2022-09-15 09:42:49 -04:00
Allen Winter
bced0a66c6
README-bindings.md - cleanup and improve
2022-09-15 09:22:57 -04:00
Allen Winter
fb63fdfd78
docs/api/Doxyfile.cmake - add README-bindings.md to INPUT
2022-09-15 09:12:01 -04:00
Allen Winter
b61c26669b
cmake-format a bit prettier
2022-09-15 09:04:00 -04:00
Allen Winter
02316c2f72
CMakeLists.txt - set version pre 1.7.0
2022-09-15 09:02:36 -04:00
Sergio Martins
f531e8cb95
Bump ChangeLog and README to 1.7
2022-09-15 10:53:06 +01:00
Allen Winter
598787868b
appveyor.yml - use Qt6.2 on Mac as well
...
since 6.2 is the min supported Qt version
v1.6.0
2022-09-14 17:50:42 -04:00
Allen Winter
48319a6309
distro/qt6-kddockwidgets.spec - fix found on OBS
2022-09-14 17:46:51 -04:00
Allen Winter
409ac51a3f
distro - use today's date
2022-09-14 11:44:30 -04:00