#pragma once

#include <Windows.h>

#include "platform_windows/windows_vr_shell.h"

namespace pp::platform::windows {

inline constexpr UINT kUserCloseMessage = WM_USER + 1;
inline constexpr UINT kUserWakeupMessage = WM_USER + 2;

void request_window_close(HWND hWnd);
void handle_window_close_message(VrShellState& vr);

void update_stylus_frame(float dt);
void update_window_fps(HWND hWnd, const wchar_t* window_title, VrShellState& vr, int frames);
void save_window_preferences(HWND hWnd);

[[nodiscard]] bool start_window_vr(VrShellState& vr, bool sandboxed);
void stop_window_vr(VrShellState& vr);

}
