Skip to content

KDDockWidgets v1.1 has been released! An advanced docking system for Qt

KDDockWidgets v1.1 is now available!

Although I just wrote about v1.0 last month, the 1.1 release still managed to get a few big features.

Here’s the ChangeLog:

Auto-hide/SideBar support

This was much awaited and probably the last essential feature that was missing. You can now set a dock widget to auto-hide to a side bar.

Click the icon that looks like a “pin.” The dock widget will then disappear and you’ll get an entry for it on one of the 4 side bars (top, left, right, bottom).

Click the dock widget’s entry on the side bar to show it again. It will be displayed overlaid, over the existing layout.

Click the “pin” icon again to restore the dock widget into the layout again.

Pass -w to the example to see it in action: kddockwidgets_example -w

Drop shadows for Floating Windows

Floating dock widgets on Windows 10 now display a nice drop-shadow. This was already the case for macOS and Linux for some window managers.

 

drop-shadow

 

FocusScope

Dock Widgets now support being a Focus Scope. You might already be familiar with QtQuick’s FocusScope. Here it’s a similar concept.

In QtWidgets, focus is per top-level window. Each QWindow remembers the widget that has focus. However, dock widgets are a bit of a hybrid between top-level and child widgets. When they are docked, they aren’t top-level anymore, but you probably still want them to remember focus. If you enable Flag_TitleBarIsFocusable, clicking on a dock widget’s title bar will focus whatever widget was previously focused, even if the dock widget is embedded in the main window.

HDPI improvements

Title bar icons (such as close, float, maximize, minimize) now have high resolution versions, meaning they won’t become pixelated at higher resolutions anymore.

Additionally, we also tested and fixed many multi-monitor scenarios with different HDPI settings on Windows.

Misc bugfixing

  • Windows: Fixed windows not honoring minimum size
  • Windows: Fixed moving windows across screens with different DPI (#72), they would get weird sizes
  • Don’t center floating windows if the user set a custom position (#75).
  • Fixed floating window’s title not correct (#74)
  • Fixed floating window borders not rendered correctly on HDPI due to rounding errors.
  • cmake/Python: don’t require pkg-config, only use if available (#68)
  • Everything else that didn’t make it to the ChangeLog

Stay tuned, 1.2 should be out soon!

Visit the KDDockWidgets GitHub page to get the update: https://github.com/KDAB/KDDockWidgets/releases/tag/v1.1.0.

You can find the source code for the KDDockWidgets 1.1 release on GitHub at: https://github.com/KDAB/KDDockWidgets

Tarballs and zipballs for 1.1 are available from: https://github.com/KDAB/KDDockWidgets/releases

Prebuilt packages for some popular Linux distributions are available at: https://build.opensuse.org/project/repositories/isv:KDAB

KDDockWidgets is available as commercial and open source (GPLv2 & GPLv3).

For commercial licensing regarding inclusion in proprietary software and/or for tailored support options contact us and ask for a 30-day free trial license.

About KDAB

If you like this article and want to read similar material, consider subscribing via our RSS feed.

Subscribe to KDAB TV for similar informative short video content.

KDAB provides market leading software consulting and development services and training in Qt, C++ and 3D/OpenGL. Contact us.

 

Categories: KDAB Blogs / KDAB Labs / KDAB on Qt / Qt

Tags: /
Leave a Reply

Your email address will not be published. Required fields are marked *