[vlc-devel] [PATCH 0/7] Qt: client side decoration

Pierre Lamot pierre at videolabs.io
Wed Sep 30 18:21:52 CEST 2020


this patchset introduce Client Side Decoration for the Qt interface

 * CSD are optional and can be dis/enabled at startup (--no-qt-titlebar)

 * They are disabled by default on linux and enabled on windows.

 * It uses window handler introduced in Qt 5.15, compiling with an older version
   of Qt disable CSD support.
   

Pierre Lamot (7):
  qt: add window min/max/close icons for CSD
  qml: fix padding in BannerSource
  qml: reorganize buttons in BannerSource
  qml: reorganize player Topbar icons
  qml: add support for client side decoration
  qml: collapse the central banner tab buttons when there is not enough
    space
  qml: fix button labels colors in resume dialogs

 modules/gui/qt/Makefile.am                    |   3 +
 .../gui/qt/maininterface/compositor_dcomp.cpp |   8 +-
 .../gui/qt/maininterface/compositor_dummy.cpp |  10 +-
 .../gui/qt/maininterface/compositor_win7.cpp  |   8 +-
 .../interface_window_handler.cpp              |  67 +++++++
 .../interface_window_handler.hpp              |   8 +
 .../gui/qt/maininterface/main_interface.cpp   |  12 ++
 .../gui/qt/maininterface/main_interface.hpp   |  10 +-
 .../qt/maininterface/main_interface_win32.cpp |  13 ++
 modules/gui/qt/maininterface/mainui.cpp       |   6 +-
 modules/gui/qt/maininterface/mainui.hpp       |   3 +-
 .../qt/maininterface/qml/BannerSources.qml    |  82 +++++----
 modules/gui/qt/pixmaps/VLCIcons.json          |   6 +-
 modules/gui/qt/pixmaps/VLCIcons.ttf           | Bin 28804 -> 29236 bytes
 .../gui/qt/pixmaps/topbar/window_close.svg    |   1 +
 .../gui/qt/pixmaps/topbar/window_maximize.svg |   4 +
 .../gui/qt/pixmaps/topbar/window_minimize.svg |   3 +
 .../gui/qt/pixmaps/topbar/window_restore.svg  |   8 +
 modules/gui/qt/player/qml/ResumeDialog.qml    |  23 ++-
 modules/gui/qt/player/qml/TopBar.qml          | 163 +++++++++++++-----
 modules/gui/qt/qt.cpp                         |  14 ++
 modules/gui/qt/style/VLCColors.qml            |   3 +
 modules/gui/qt/style/VLCIcons.qml             |   4 +
 modules/gui/qt/style/VLCStyle.qml             |   7 +-
 modules/gui/qt/vlc.qrc                        |   3 +
 .../gui/qt/widgets/qml/BannerTabButton.qml    |   5 +-
 .../qml/CSDTitlebarTapNDrapHandler.qml        |  46 +++++
 .../gui/qt/widgets/qml/CSDWindowButton.qml    |  59 +++++++
 .../gui/qt/widgets/qml/CSDWindowButtonSet.qml |  62 +++++++
 29 files changed, 550 insertions(+), 91 deletions(-)
 create mode 100644 modules/gui/qt/pixmaps/topbar/window_close.svg
 create mode 100644 modules/gui/qt/pixmaps/topbar/window_maximize.svg
 create mode 100644 modules/gui/qt/pixmaps/topbar/window_minimize.svg
 create mode 100644 modules/gui/qt/pixmaps/topbar/window_restore.svg
 create mode 100644 modules/gui/qt/widgets/qml/CSDTitlebarTapNDrapHandler.qml
 create mode 100644 modules/gui/qt/widgets/qml/CSDWindowButton.qml
 create mode 100644 modules/gui/qt/widgets/qml/CSDWindowButtonSet.qml

-- 
2.25.1



More information about the vlc-devel mailing list