using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Video; using BITKit; using System.Threading.Tasks; using UnityEngine.UIElements; using Cysharp.Threading.Tasks; namespace BITKit.UX { public class UXVideoPlayer : UXElement, IProvider { const string _minimizeContainer = "minimize-container"; const string _maximizeContainer = "maximize-container"; const string _closeButton = "close-button"; const string _maximizeButton = "maximize-button"; const string _minimizeButton = "minimize-button"; const string _videoName = "videoName-label"; const string _playerSlider = "player-slider"; const string _playButton = "play-button"; const string _totalTimeLabel = "totalTime-label"; const string _currentTimeLabel = "currentTime-label"; [Header(Constant.Header.Settings)] public bool isMaximize; public bool log; public bool autoPlay; [Header(Constant.Header.Components)] public BITKit.Media.VideoPlayer videoPlayer; [Header(Constant.Header.InternalVariables)] Vector2 windowPosition; VisualElement minimizeContainer; VisualElement maximizeContainer; public void Play(VideoClip clip) { videoPlayer.Stop(); Set(clip); videoPlayer.player.Prepare(); videoPlayer.player.time = 0; if (autoPlay) { videoPlayer.Play(); } else { videoPlayer.Prepare(); } foreach (var x in visualElement.Query