# =====================================================================
# Kiwy Signage Player - Windows Dependencies
# =====================================================================
# Install with: pip install -r requirements_win.txt

# --- Core GUI Framework ---
# Kivy 2.3+ with SDL2 backend (best for Windows)
kivy[base]>=2.3.0

# --- Video Playback ---
# ffpyplayer for video decoding
ffpyplayer>=4.5

# --- HTTP / Networking ---
requests>=2.32.0,<3.0.0
aiohttp>=3.9.0,<4.0.0
certifi>=2024.0.0

# --- Password / Auth ---
bcrypt>=4.2.0,<5.0.0

# --- Packaging ---
# PyInstaller for building the .exe
pyinstaller>=6.0

# --- Embedded web engine (web links) ---
# pythonnet lets Python drive the WebView2 .NET SDK. WebView2 renders INSIDE
# the Kivy window as a child window, which is what removed the old subprocess
# browser bugs (window opening behind the player, instant hand-off exit,
# z-order/focus fights, leaked chrome.exe/msedge.exe processes).
# The WebView2 *runtime* is a free, Microsoft-shipped evergreen component and
# is intentionally NOT bundled; the small SDK DLLs live in windows/webview2_sdk/
# and are added to the exe by build.spec.
# Without pythonnet the player silently falls back to the Chrome/Edge
# subprocess engine, so weblinks still work but with the old drawbacks.
pythonnet>=3.0.3

# --- Windows-specific Libraries ---
# cefpython3: Embedded Chromium browser (replaces subprocess Chrome/Edge)
# Installed separately because it's a large package (69 MB):
#   pip install cefpython3
# cefpython3>=66.1
# Note: Uncomment above line to bundle cefpython3 in the .exe.
# Without it, weblinks fall back to subprocess Chrome/Edge.

# pywin32: Windows API bindings (win32gui for SetForegroundWindow etc.)
# Already installed as a dependency of kivy[base]

# --- Optional: DirectShow filters for better video on Windows ---
# ffmpeg (install via chocolatey or manual download)
# https://ffmpeg.org/download.html
