[vlc-commits] [Git][videolan/vlc][3.0.x] 11 commits: qt: remove some unused macros

Felix Paul Kühne (@fkuehne) gitlab at videolan.org
Thu Jun 11 19:54:40 UTC 2026



Felix Paul Kühne pushed to branch 3.0.x at VideoLAN / VLC


Commits:
43d08854 by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: remove some unused macros

These macros appear to call CONNECT directly or indirectly, but actually they
are completely unused. Remove them.

- - - - -
5feb929b by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: use type-safe connections in most places

Most signal-slot connects are rewritten from the old string-based runtime
selection to the compile-time selection introduced in Qt 5. This is in spirit
effectively a backport of [1], but written from scratch due to excessive
conflicts due to code divergence. This will detect some of the issues mentioned
in [2] (at least the "Open Recent Media" doing nothing), due to detecting the
removal of the slots at compile time (and thus failing to compile, instead of
producing a binary that doesn't work).

This addresses the immediate usages of CONNECT or SIGNAL/SLOT macros only.
Usages through other macros will be addressed separately for clarity.

[1] https://code.videolan.org/videolan/vlc/-/commit/eb0b785fdf5396b429fb039b0c92d44f768fe65c
[2] https://code.videolan.org/videolan/vlc/-/merge_requests/7754#note_499875

- - - - -
9a1648f9 by Lyndon Brown at 2026-06-11T20:26:18+02:00
qt: fix signal-mapper deprecation warnings

I included adaptation here of a few existing cases using a different
solution to the helper defines suggested in review.

Example warning:
```
../../modules/gui/qt/dialogs/preferences/simple_preferences.cpp: In constructor 'SPrefsCatList::SPrefsCatList(qt_intf_t*, QWidget*)':
WARNING : ../../modules/gui/qt/dialogs/preferences/simple_preferences.cpp:254: 40:  'void QSignalMapper::mapped(int)' is deprecated: Use QSignalMapper::mappedInt(int) instead [-Wdeprecated-declarations]
  254 |     connect( mapper, QOverload<int>::of(&QSignalMapper::mapped), this, &SPrefsCatList::switchPanel );
      |                      ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/QSignalMapper:1,
                 from ../../modules/gui/qt/dialogs/preferences/simple_preferences.cpp:45:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qsignalmapper.h:71:10: note: declared here
   71 |     void mapped(int);
      |          ^~~~~~
```

(cherry picked from commit 30618b6a5d1317ac42d96f117b0bef5f9b406d31)

- - - - -
c7872389 by Pierre Lamot at 2026-06-11T20:26:18+02:00
qt: switch to QML/player/playlist

Note:

- Seekpoints have been replaced by title/chapters in PlayerControler
- Picture flow view has been removed
- Menuview is no longer required by VLCMenuBar
- The extension_SetInput is incompatible with the new API

Signed-off-by: Thomas Guillem <thomas at gllm.fr>
(cherry picked from commit e1c82853965d44b4390af78d9184bd0b60ccc3fb) (edited)
edited:
- only keep the changes that involve CONNECT/DCONNECT

- - - - -
d21e5980 by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: use type-safe connections in most places

Most signal-slot connects are rewritten from the old string-based runtime
selection to the compile-time selection introduced in Qt 5. This is in spirit
effectively a backport of [1], but written from scratch due to excessive
conflicts due to code divergence. This will detect some of the issues mentioned
in [2] (at least the "Open Recent Media" doing nothing), due to detecting the
removal of the slots at compile time (and thus failing to compile, instead of
producing a binary that doesn't work).

This addresses the immediate usages of CONNECT or SIGNAL/SLOT macros only.
Usages through other macros will be addressed separately for clarity.

[1] https://code.videolan.org/videolan/vlc/-/commit/eb0b785fdf5396b429fb039b0c92d44f768fe65c
[2] https://code.videolan.org/videolan/vlc/-/merge_requests/7754#note_499875

- - - - -
137faae6 by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: fix signal-mapper deprecation warnings

QSignalMapper::mapped overloads have been deprecated in Qt 5.15 and removed in
Qt 6, in favour of more explicit names. Use those when available to reduce
deprecation warnings with Qt 5.15 and remove an obstacle to compatibility with
Qt 6. This is effectively a backport of [1].

[1] https://code.videolan.org/videolan/vlc/-/commit/30618b6a5d1317ac42d96f117b0bef5f9b406d31

- - - - -
b9b4428d by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: fix combo-box index change signal deprecation

The overload with a string argument is deprecated in Qt 5.15, and removed
entirely in Qt 6. Replace its usages by the overload with an integer argument
that continues to be supported.

- - - - -
31fa3114 by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: use type-safe connections for button actions

This replaces CONNECT usage in the BUTTONACT and BUTTON_SET_ACT_I macros by
type-safe connections. This similar to [1], but has been written from scratch
due to excessive conflicts.

[1] https://code.videolan.org/videolan/vlc/-/commit/77b7527379623c163000f2c2a85001d63b3e8467

- - - - -
3dbfb81a by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: use type-safe direct connections

Change all usage sites of the DCONNECT macro to use type-safe connections
instead, and remove the macro as it is now unused. This is part of a spiritual
backport of [1], but has been written from scratch due to excessive conflicts.

[1] https://code.videolan.org/videolan/vlc/-/commit/eb0b785fdf5396b429fb039b0c92d44f768fe65c

- - - - -
4001e920 by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: use type-safe connections in the remaining macros

Some CONNECT usages remained in file-specific macros. Replace them as well.
This is part of a spiritual backport of [1], but has been written from scratch
due to excessive conflicts.

[1] https://code.videolan.org/videolan/vlc/-/commit/eb0b785fdf5396b429fb039b0c92d44f768fe65c

- - - - -
d8d7a70c by Alois Wohlschlager at 2026-06-11T20:26:18+02:00
qt: inline the CONNECT macro into the remaining callers

Some call sites cannot use type-safe connections, due to either using a pointer
to an incomplete type as slot argument, or dynamic typing. However these are
the exception now. For that reason string-based connection is performed
explicitly when required. This is part of a spiritual backport of [1], but has
been written from scratch due to excessive conflicts.

[1] https://code.videolan.org/videolan/vlc/-/commit/eb0b785fdf5396b429fb039b0c92d44f768fe65c

- - - - -


59 changed files:

- modules/gui/qt/actions_manager.cpp
- modules/gui/qt/actions_manager.hpp
- modules/gui/qt/components/complete_preferences.cpp
- modules/gui/qt/components/controller.cpp
- modules/gui/qt/components/controller_widget.cpp
- modules/gui/qt/components/controller_widget.hpp
- modules/gui/qt/components/epg/EPGWidget.cpp
- modules/gui/qt/components/extended_panels.cpp
- modules/gui/qt/components/info_panels.cpp
- modules/gui/qt/components/interface_widgets.cpp
- modules/gui/qt/components/open_panels.cpp
- modules/gui/qt/components/playlist/playlist.cpp
- modules/gui/qt/components/playlist/playlist_model.cpp
- modules/gui/qt/components/playlist/playlist_model.hpp
- modules/gui/qt/components/playlist/selector.cpp
- modules/gui/qt/components/playlist/standardpanel.cpp
- modules/gui/qt/components/playlist/standardpanel.hpp
- modules/gui/qt/components/playlist/views.cpp
- modules/gui/qt/components/preferences_widgets.cpp
- modules/gui/qt/components/simple_preferences.cpp
- modules/gui/qt/components/sout/profile_selector.cpp
- modules/gui/qt/components/sout/sout_widgets.cpp
- modules/gui/qt/dialogs/bookmarks.cpp
- modules/gui/qt/dialogs/convert.cpp
- modules/gui/qt/dialogs/epg.cpp
- modules/gui/qt/dialogs/errors.cpp
- modules/gui/qt/dialogs/extended.cpp
- modules/gui/qt/dialogs/extensions.cpp
- modules/gui/qt/dialogs/external.cpp
- modules/gui/qt/dialogs/fingerprintdialog.cpp
- modules/gui/qt/dialogs/firstrun.cpp
- modules/gui/qt/dialogs/gototime.cpp
- modules/gui/qt/dialogs/help.cpp
- modules/gui/qt/dialogs/mediainfo.cpp
- modules/gui/qt/dialogs/messages.cpp
- modules/gui/qt/dialogs/open.cpp
- modules/gui/qt/dialogs/openurl.cpp
- modules/gui/qt/dialogs/plugins.cpp
- modules/gui/qt/dialogs/plugins.hpp
- modules/gui/qt/dialogs/podcast_configuration.cpp
- modules/gui/qt/dialogs/preferences.cpp
- modules/gui/qt/dialogs/sout.cpp
- modules/gui/qt/dialogs/toolbar.cpp
- modules/gui/qt/dialogs/vlm.cpp
- modules/gui/qt/dialogs_provider.cpp
- modules/gui/qt/extensions_manager.cpp
- modules/gui/qt/input_manager.cpp
- modules/gui/qt/main_interface.cpp
- modules/gui/qt/main_interface_win32.cpp
- modules/gui/qt/menus.cpp
- modules/gui/qt/qt.hpp
- modules/gui/qt/recents.cpp
- modules/gui/qt/util/animators.cpp
- modules/gui/qt/util/customwidgets.cpp
- modules/gui/qt/util/input_slider.cpp
- modules/gui/qt/util/pictureflow.cpp
- modules/gui/qt/util/qmenuview.cpp
- modules/gui/qt/util/qvlcapp.hpp
- modules/gui/qt/util/searchlineedit.cpp


The diff was not included because it is too large.


View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/618ba84a6bcaaed85fbfe90e1dd0eb5892664917...d8d7a70c3da3fef433337b74953c8905bd58cf64

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/618ba84a6bcaaed85fbfe90e1dd0eb5892664917...d8d7a70c3da3fef433337b74953c8905bd58cf64
You're receiving this email because of your account on code.videolan.org. Manage all notifications: https://code.videolan.org/-/profile/notifications | Help: https://code.videolan.org/help




More information about the vlc-commits mailing list