using Microsoft.Maui.Controls;

namespace Hua.Todo.Maui.Views
{
    /// <summary>
    /// Windows 平台特定的 MainPage 逻辑（分部类）。
    /// 该文件仅在 Windows 目标框架下参与编译，用于接入 Windows 全局键盘事件等能力。
    /// </summary>
    public partial class MainPage
    {
        private Platforms.Windows.WindowsKeyboardHandler? _keyboardHandler;

        /// <summary>
        /// Windows 平台特定的键盘处理器设置。
        /// 当前仅监听 Esc 键，用于快速最小化窗口（与桌面端交互习惯保持一致）。
        /// </summary>
        partial void PlatformSetupKeyboardHandler()
        {
            _keyboardHandler = new Platforms.Windows.WindowsKeyboardHandler();
            _keyboardHandler.EscKeyPressed += OnEscKeyPressed;
            _keyboardHandler.Start();
        }

        /// <summary>
        /// Windows 平台特定的 Esc 键处理（最小化窗口）。
        /// </summary>
        /// <param name="window">当前窗口。</param>
        partial void PlatformOnEscKeyPressed(Window window)
        {
            var windowService = new Platforms.Windows.WindowsWindowService();
            windowService.MinimizeWindow(window);
        }
    }
}
