[vlc-commits] [Git][videolan/vlc][master] 15 commits: skins2: Add macOS backend support
Felix Paul Kühne (@fkuehne)
gitlab at videolan.org
Wed Apr 1 04:50:14 UTC 2026
Felix Paul Kühne pushed to branch master at VideoLAN / VLC
Commits:
35056286 by Fletcher Holt at 2026-04-01T06:26:32+02:00
skins2: Add macOS backend support
Implement the skins2 theming system for macOS using Cocoa/AppKit:
- macosx_factory: Main factory for creating OS-specific objects
- macosx_graphics: Graphics rendering using Core Graphics
- macosx_window: Window management using NSWindow
- macosx_loop: Event loop handling NSApplication events
- macosx_timer: Timer system for animations
- macosx_tooltip: Tooltip windows
- macosx_popup: Context menus using NSMenu
- macosx_dragdrop: Drag & drop support
This allows VLC skins (.vlt themes) to work on macOS, which was
previously only supported on Windows and Linux/X11.
- - - - -
b723b01f by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: add autotools build system support
- - - - -
025bd3e4 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2: add missing objcpp_args to meson build definition
- - - - -
3499d7ec by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: fix pixel format mismatch in CGImage creation
- - - - -
03b782b8 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: fix memory issues in drag and drop handler
- - - - -
b6a2bbb8 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: fix screen geometry, cursor, and content view origin
- - - - -
b7f89259 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: fix popup menu and key mapping
- - - - -
08449461 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: dispatch AppKit calls to the main thread
- - - - -
46c934d2 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: add native AppKit dialogs and wire menu bar commands
- - - - -
e7751f7a by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: use VLC data directories for resource path
- - - - -
f9a524f7 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2: guard qt-specific config variable accesses with config_FindConfig
- - - - -
79259f58 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: fix window restoration, initial paint, and minimize
- - - - -
221bb55a by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: add fullscreen window support and fix vout reparenting
- - - - -
5bfaec4f by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
skins2/macosx: fix window dragging and rendering artifacts
- - - - -
a6d5aa09 by Felix Paul Kühne at 2026-04-01T06:26:32+02:00
extras/package: fix ObjC++ cross-compilation
- - - - -
33 changed files:
- configure.ac
- extras/package/apple/build.sh
- extras/package/macosx/configure.sh
- extras/package/macosx/env.build.sh
- extras/package/macosx/package.mak
- modules/gui/skins2/Makefile.am
- modules/gui/skins2/controls/ctrl_video.cpp
- + modules/gui/skins2/macosx/macosx_dialogs.m
- + modules/gui/skins2/macosx/macosx_dragdrop.hpp
- + modules/gui/skins2/macosx/macosx_dragdrop.mm
- + modules/gui/skins2/macosx/macosx_factory.hpp
- + modules/gui/skins2/macosx/macosx_factory.mm
- + modules/gui/skins2/macosx/macosx_graphics.hpp
- + modules/gui/skins2/macosx/macosx_graphics.mm
- + modules/gui/skins2/macosx/macosx_loop.hpp
- + modules/gui/skins2/macosx/macosx_loop.mm
- + modules/gui/skins2/macosx/macosx_popup.hpp
- + modules/gui/skins2/macosx/macosx_popup.mm
- + modules/gui/skins2/macosx/macosx_timer.hpp
- + modules/gui/skins2/macosx/macosx_timer.mm
- + modules/gui/skins2/macosx/macosx_tooltip.hpp
- + modules/gui/skins2/macosx/macosx_tooltip.mm
- + modules/gui/skins2/macosx/macosx_window.hpp
- + modules/gui/skins2/macosx/macosx_window.mm
- modules/gui/skins2/meson.build
- modules/gui/skins2/src/fsc_window.cpp
- modules/gui/skins2/src/os_factory.cpp
- modules/gui/skins2/src/skin_common.hpp
- modules/gui/skins2/src/vout_manager.cpp
- modules/gui/skins2/src/vout_manager.hpp
- modules/gui/skins2/src/window_manager.cpp
- modules/meson.build
- share/Makefile.am
The diff was not included because it is too large.
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/5efe99a912ce3ebc9d62829e91b0aed5280345ba...a6d5aa09b8006cf4622a17d07d24d3f819d39b85
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/5efe99a912ce3ebc9d62829e91b0aed5280345ba...a6d5aa09b8006cf4622a17d07d24d3f819d39b85
You're receiving this email because of your account on code.videolan.org.
More information about the vlc-commits
mailing list