Beispiel #1
0
            public async void AwaitMinimizedInBackground()
            {
                while (TotalWebViewsMovingIntoBackground > 0)
                {
                    await Task.Delay(50);

                    this.LoadUrl(JavascriptCommands._jsPlayVideo);
                }
                await Task.Delay(50);

                PlaystateManagement.WebViewPlayerNumberIsStreaming = this.Id;
                PlaystateManagement.WebViewPlayerIsStreaming       = true;
                if (AppState.ForeNote == null)
                {
                    MainPlaybackSticky.StartForeground(BitChute.ExtNotifications.BuildPlayControlNotification());
                }
                ViewHelpers.DoActionOnUiThread(() =>
                {
                    this.LoadUrl(JavascriptCommands._jsPlayVideo);
                });
                await Task.Delay(100);

                ViewHelpers.DoActionOnUiThread(() =>
                {
                    this.LoadUrl(JavascriptCommands._jsPlayVideo);
                });
            }
 public static void Run_OnLogin()
 {
     WebViewsAreReloadingAfterLogin = true;
     foreach (ServiceWebView view in PlaystateManagement.WebViewTabDictionary.Values)
     {
         if (PlaystateManagement.WebViewPlayerIsStreaming)
         {
             if (PlaystateManagement.WebViewPlayerNumberIsStreaming != view.Id)
             {
                 try
                 {
                     view.ClearCache(true);
                     view.LoadUrl(view.RootUrl);
                 }
                 catch { }
             }
             else
             {
                 view.ClearCache(false);
             }
         }
         else
         {
             try
             {
                 view.ClearCache(true);
                 if (view.Url.Contains("/accounts/login/"))
                 {
                     WebViewIdLoginList.Add(view.Id);
                     view.Visibility = Android.Views.ViewStates.Gone;
                 }
                 view.LoadUrl(view.RootUrl);
             }
             catch { }
         }
     }
     foreach (var frag in MainActivity.ViewFragmentArray)
     {
         ViewHelpers.DoActionOnUiThread(() =>
         {
             ((CommonFrag)frag).SwapFragView(true);
         });
     }
     AppState.UserIsLoggedIn = true;
 }
Beispiel #3
0
        static async void VerifyInBackground(int webViewId = -1, int backgroundTimeOut = 3000)
        {
            int backgroundTimer = 0;

            while (IsInBkGrd() && AppIsMovingIntoBackgroundAndStreaming && backgroundTimer <= 3000)
            {
                await Task.Delay(100);

                ViewHelpers.DoActionOnUiThread(() =>
                {
                    PlaystateManagement.WebViewIdDictionary[webViewId].LoadUrl(JavascriptCommands._jsPlayVideo);
                });
            }
            await Task.Delay(30);

            ViewHelpers.DoActionOnUiThread(() =>
            {
                PlaystateManagement.WebViewIdDictionary[webViewId].LoadUrl(JavascriptCommands._jsPlayVideo);
            });
        }
Beispiel #4
0
        public static async void MakeAvatarsClickable(ServiceWebView serviceWebView = null, WebView webView = null, bool useInternalListener = false, int delay = 2000)
        {
            await Task.Delay(delay);

            if (serviceWebView != null)
            {
                ViewHelpers.DoActionOnUiThread(() =>
                {
                    serviceWebView.LoadUrl(JavascriptCommands.GetInjectable(BaseCommentAvatarClickAdder));
                });
                return;
            }
            else if (webView != null)
            {
                ViewHelpers.DoActionOnUiThread(() =>
                {
                    webView.LoadUrl(JavascriptCommands.GetInjectable(BaseCommentAvatarClickAdder));
                });
                return;
            }
            return;
        }
Beispiel #5
0
        /// <summary>
        /// starts the video in background
        /// </summary>
        /// <param name="tab"></param>
        public static async void StartVideoInBkgrd(int webViewId = -1, int mediaPlayerId = -1)
        {
            if (PlaystateManagement.WebViewPlayerIsStreaming || PlaystateManagement.PlayerTypeQueued() == PlayerType.WebViewPlayer)
            {
                if (webViewId == -1)
                {
                    webViewId = PlaystateManagement.WebViewPlayerNumberIsStreaming;
                }
                PlaystateManagement.WebViewPlayerIsStreaming = true;
                await Task.Delay(10);

                ViewHelpers.DoActionOnUiThread(() =>
                {
                    PlaystateManagement.WebViewIdDictionary[webViewId].LoadUrl(JavascriptCommands._jsPlayVideo);
                });
                await Task.Delay(20);

                ViewHelpers.DoActionOnUiThread(() =>
                {
                    PlaystateManagement.WebViewIdDictionary[webViewId].LoadUrl(JavascriptCommands._jsPlayVideo);
                });
                VerifyInBackground(webViewId);
            }
        }
 public void SetReceiveValue(ServiceWebView wv, string javascript)
 {
     ViewHelpers.DoActionOnUiThread(() => wv.EvaluateJavascript(javascript, this));
 }