Example #1
0
        private void WebView_OnNewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            if (args.Uri.AbsoluteUri.Contains("https://www.flashback.org/t") || args.Uri.AbsoluteUri.Contains("https://www.flashback.org/sp")) // intern FB-trådlänk
            {
                string id = args.Uri.AbsoluteUri.Replace("https://www.flashback.org/", "");

                var nav = WindowWrapper.Current().NavigationServices.FirstOrDefault();

                nav?.Navigate(typeof(Views.ThreadPage), id);
            }
            else if (args.Uri.AbsoluteUri.Contains("https://www.flashback.org/f")) // intern FB-forumlänk
            {
                string id = args.Uri.AbsoluteUri.Replace("https://www.flashback.org/", "");

                var nav = WindowWrapper.Current().NavigationServices.FirstOrDefault();

                nav?.Navigate(typeof(Views.ForumMainList), id);
            }
            else
            {
                var openUrl = Windows.System.Launcher.LaunchUriAsync(new Uri(System.Net.WebUtility.HtmlDecode(args.Uri.LocalPath)));
            }

            args.Handled = true;
        }
Example #2
0
        //private void webview_NavigationStarting(WebView sender, WebViewNavigationStartingEventArgs args)
        //{
        //    string url = args.Uri.AbsoluteUri;
        //    //string ban = Regex.Match(args.Uri.AbsoluteUri, @"^http://bangumi.bilibili.com/anime/(.*?)$").Groups[1].Value;
        //    if (Regex.IsMatch(url, @"anime/"))
        //    {
        //        this.Frame.Navigate(typeof(Detail), Regex.Match(url, @"(?<=anime/)\d*"));
        //        return;
        //    }
        //    //string ban2 = Regex.Match(args.Uri.AbsoluteUri, @"^http://www.bilibili.com/bangumi/i/(.*?)$").Groups[1].Value;
        //    if (Regex.IsMatch(url, @"bangumi/i/"))
        //    {
        //        this.Frame.Navigate(typeof(Detail), Regex.Match(url, @"(?<=bangumi/i/)\d*"));
        //        return;
        //    }
        //    //string ban3 = Regex.Match(args.Uri.AbsoluteUri, @"^bilibili://?av=(.*?)$").Groups[1].Value;
        //    if (Regex.IsMatch(url, @"av/"))
        //    {
        //        this.Frame.Navigate(typeof(Detail_P), Regex.Match(url, @"(?<=av/)\d*"));
        //        return;
        //    }
        //    //if (Regex.IsMatch(args.Uri.AbsoluteUri, "/video/av(.*)?[/|+](.*)?"))
        //    //{

        //    //    string a = Regex.Match(args.Uri.AbsoluteUri, "/video/av(.*)?[/|+](.*)?").Groups[1].Value;
        //    //    this.Frame.Navigate(typeof(Detail_P), a);
        //    //}
        //}

        private void webview_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            string para = string.Empty;

            args.Handled = true;
            string url = args.Uri.AbsoluteUri;

            if (Regex.IsMatch(url, @"anime/"))
            {
                para = Regex.Match(url, @"(?<=anime/)\d*").Value;
                this.Frame.Navigate(typeof(Detail), para);
                return;
            }
            if (Regex.IsMatch(url, @"bangumi/i/"))
            {
                para = Regex.Match(url, @"(?<=bangumi/i/)\d*").Value;
                this.Frame.Navigate(typeof(Detail), para);
                return;
            }
            if ((Regex.IsMatch(url, @"/video/av")))
            {
                para = Regex.Match(url, @"(?<=/video/av)\d*").Value;
                Frame.Navigate(typeof(Detail_P), para);
                return;
            }
            else
            {
                webview.Navigate(new Uri(url));
            }
        }
        private async void WebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            args.Handled = true;

            var uri = args.Uri.ToString();

            if (!uri.StartsWith("https://oauth.vk.com/authorize") && !uri.StartsWith("https://vk.com/widget_comments.php") && !uri.StartsWith("https://vk.com/id"))
            {
                await Launcher.LaunchUriAsync(args.Uri);

                return;
            }

            if (uri.StartsWith("https://oauth.vk.com/authorize") && m_CurrentUri != null)
            {
                uri = uri.Replace("close.html", WebUtility.UrlEncode(m_CurrentUri.ToString()));
            }

            if (uri.StartsWith("https://vk.com/id"))
            {
                uri = uri.Replace("vk.com", "m.vk.com");
            }

            CommentsWebView.Navigate(new Uri(uri));
        }
 private void Editor_OpenLinkRequest(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     if (this.AllowWeb.IsChecked == false)
     {
         args.Handled = true;
     }
 }
Example #5
0
        public static void WebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            Type   t         = null;
            object parameter = null;
            string url       = args.Uri.ToString();

            if (DetailPage.isSupport(url))
            {
                t         = typeof(DetailPage);
                parameter = DetailPage.getItemId(url);
            }

            if (t != null)
            {
                args.Handled = true;
                if (parameter == null)
                {
                    MainPage.currenMainPage.NvInvoked(t);
                }
                else
                {
                    MainPage.currenMainPage.NvInvoked(t, parameter);
                }
            }
        }
Example #6
0
 private void webView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     if (args.Uri.Host == new Uri(_app.BaseUrl).Host)
     {
         args.Handled = true;
         webView.Navigate(args.Uri);
     }
 }
        private void CCC_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            args.Handled    = true;
            helpInfo.IsOpen = false;
            var data = DataContext as ProgressViewModel;

            data.start();
        }
        private void webView_NewWindowRequested(WebContent sender, WebViewNewWindowRequestedEventArgs args)
        {
            var oldIndex = this.webViewCollection.IndexOf(sender);

            this.webViewCollection.Insert(oldIndex + 1, this.NewWebContent(args.Uri));
            args.Handled = true;
            this.listView.SelectedIndex = oldIndex + 1;
        }
Example #9
0
 private void WebViewBrowser_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     if (!_ignorableHosts.Contains(args.Uri.Host))
     {
         sender.Navigate(args.Uri);
     }
     args.Handled = true;
 }
Example #10
0
        private void OnNewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs e)
        {
            WebView web = sender;

            web.Navigate(e.Uri);


            e.Handled = true;
        }
Example #11
0
        private void Web_OpenWindow(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            adress.Text = args.Uri.AbsoluteUri;
            sender.Navigate(args.Uri);

            otpravitel_History(args.Uri.AbsoluteUri);

            args.Handled = true;
        }
 private void FacebookWebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs e)
 {
     if (e.Uri.AbsoluteUri.Contains(".gif") || e.Uri.AbsoluteUri.Contains("video")) // Is it a .gif or a video?
     {                                                                              // Yes
         iconRotation.Begin();                                                      // Start rotation icon
         facebookWebView.Navigate(e.Uri);                                           // Open gif/video into a facebookWebView
         e.Handled = true;                                                          // This block stock browser
     }
 }
Example #13
0
        private void OnNewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs e)
        {
            SearchBox.Text = e.Uri.ToString();
            WebView web = sender;

            web.Navigate(e.Uri);
            IsLoading = true;
            e.Handled = true;
        }
Example #14
0
 private void WebViewFacebookNewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     try
     {
         WebViewFacebook.Navigate(args.Uri);
         args.Handled = true;
     }
     catch { }
 }
Example #15
0
 private void NewWindowRequestedEventHandler(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     // This event is called when a link with an external target is clicked.
     args.Handled = true;
     if (TryExtractOriginalUrl(args, out string url))
     {
         OnNavigating(url);
     }
 }
Example #16
0
        private void webview_WebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            string ban = Regex.Match(args.Uri.AbsoluteUri, @"^http://bangumi.bilibili.com/anime/(.*?)$").Groups[1].Value;

            if (ban.Length != 0)
            {
                args.Handled = true;
                this.Frame.Navigate(typeof(BanInfoPage), ban.Replace("/", ""));
                return;
            }
            string ban2 = Regex.Match(args.Uri.AbsoluteUri, @"^http://www.bilibili.com/bangumi/i/(.*?)$").Groups[1].Value;

            if (ban2.Length != 0)
            {
                args.Handled = true;
                this.Frame.Navigate(typeof(BanInfoPage), ban2.Replace("/", ""));
                return;
            }
            string ban3 = Regex.Match(args.Uri.AbsoluteUri, @"^bilibili://?av=(.*?)$").Groups[1].Value;

            if (ban3.Length != 0)
            {
                //args.Handled = true;
                this.Frame.Navigate(typeof(VideoInfoPage), ban3.Replace("/", ""));
                return;
            }
            //乱写一通的正则
            //正则真的真的真的不会啊- -
            if (Regex.IsMatch(args.Uri.AbsoluteUri, "/video/av(.*)?[/|+](.*)?"))
            {
                args.Handled = true;
                string a = Regex.Match(args.Uri.AbsoluteUri, "/video/av(.*)?[/|+](.*)?").Groups[1].Value;
                this.Frame.Navigate(typeof(VideoInfoPage), a);
            }
            else
            {
                if (Regex.IsMatch(args.Uri.AbsoluteUri + "+", "/video/av(.*)[/|+]"))
                {
                    args.Handled = true;
                    string a = Regex.Match(args.Uri.AbsoluteUri + "+", "/video/av(.*)[/|+]").Groups[1].Value;
                    this.Frame.Navigate(typeof(VideoInfoPage), a);
                }
                else
                {
                    if (Regex.IsMatch(args.Uri.AbsoluteUri, @"live.bilibili.com/(.*?)"))
                    {
                        string a = Regex.Match(args.Uri.AbsoluteUri + "a", "live.bilibili.com/(.*?)a").Groups[1].Value;
                        // livePlayVideo(a);
                    }
                    else
                    {
                        args.Handled = true;
                        text.Text    = "已禁止跳转:" + args.Uri.AbsoluteUri;
                    }
                }
            }
        }
Example #17
0
 private async void webview_Full_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     try
     {
         args.Handled = true;
         System.Diagnostics.Debug.WriteLine("Preventing new web window: " + args.Uri.AbsolutePath.ToString());
         await OpenBrowser(args.Uri, false);
     }
     catch { }
 }
        private void NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            args.Handled = true;
            string Url = args.Uri.ToString();

            if (Url.Contains("cover") || Url.Contains("page"))
            {
                MainWebView.Navigate(args.Uri);
            }
        }
Example #19
0
 //Prevent new window opening
 private void OnNewWindowRequested(object sender, WebViewNewWindowRequestedEventArgs e)
 {
     try
     {
         e.Handled = true;
         Debug.WriteLine("Preventing new web window.");
         webview_Browser.Navigate(e.Uri);
     }
     catch { }
 }
        protected virtual void WebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            var webView = RetrieveWebView();

            if (webView != null && webView.Visibility == Visibility.Visible)
            {
                webView.Navigate(args.Uri);
                args.Handled = true;
            }
        }
Example #21
0
        //开新窗口
        //private void Open_NewWindow(object sender, WebViewNewWindowRequestedEventArgs e)
        //{
        //    e.Handled = true; //这个一定要
        //    if (e.Uri != null && e.Uri.ToString() != null)
        //    {
        //        //可以添加让当前浏览停止的代码
        //        ((WebView)MainGrid.Children[TabIndex]).Navigate(e.Uri); //主窗口转向新页面
        //                                                                //跳转后需要处理的代码
        //    }
        //}

        // 在尝试用新开窗口打开 uri 时触发的事件
        private void WebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            // 交由我处理吧(否则的话系统会用浏览器打开)
            args.Handled = true;
            // 需要新开窗口的 uri(本例中此值为 https://www.baidu.com/)
            Uri uri = args.Uri;
            // uri 的 referrer(本例中此值为 https://www.baidu.com/ 并不是 uri 的 referrer,为啥?)
            Uri referrer = args.Referrer;
            //MainPage.CurrentMainPage.WebView_NewWindowRequested(uri);
            //await new MessageDialog(uri.ToString(), "需要新开窗口的 uri").ShowAsync();
        }
Example #22
0
 private void webview1_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     if (daima.huancun.panduan_leixing(args.Uri.AbsoluteUri) != 5)
     {
         args.Handled = true;
         webview1.Navigate(args.Uri);
     }
     else
     {
     }
 }
        //method enforces browser to open new pages in the current screen if it request for new page
        private void MainWeb_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            Uri fileURL = args.Uri;

            /*string fileName = MainWeb.Source.AbsolutePath;
             * if (fileName.Contains("/"))
             * {
             *  int last = fileName.LastIndexOf("/");
             *  fileName = fileName.Substring(last + 1, fileName.Length).Trim();
             * }*/
        }
        //Webview new tab request handler
        private void webView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            //var newWebView = new WebView();
            //newWebView.Navigate(args.Uri);
            //webViewGrid.Children.Add(newWebView);
            //args.Handled = true;

            //Open new tab in same webview
            webView.Navigate(args.Uri);
            //Block the default browser to launch
            args.Handled = true;
        }
Example #25
0
        private async void webView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            args.Handled = true;
            var re = await MessageCenter.HandelUrl(args.Uri.AbsoluteUri);

            if (!re)
            {
                var md = new MessageDialog("是否使用外部浏览器打开此链接?");
                md.Commands.Add(new UICommand("确定", new UICommandInvokedHandler(async(e) => { await Windows.System.Launcher.LaunchUriAsync(args.Uri); })));
                md.Commands.Add(new UICommand("取消", new UICommandInvokedHandler((e) => { })));
                await md.ShowAsync();
            }
        }
Example #26
0
        private void DisqusWebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            // Handle the event so we don't end up in the Web Browser
            if (args.Uri.Host == "disqus.com" && _loginUrlEntryPaths.Contains(args.Uri.AbsolutePath))
            {
                // Prevent web browser from being opened
                args.Handled = true;

                // Launch the login experience here. You can either navigate to the URL in this page, or open a new WebView window
                _isInLoginMode = true;
                DisqusWebView.Navigate(args.Uri);
            }
        }
Example #27
0
        private void web_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            args.Handled = true;
            switch (UtilityData.LinksSetting)
            {
            case 3:
                if (_ucMessageDialog == null)
                {
                    this.FindName("_ucMessageDialog");
                    if (UtilityData.isFluentDesign)
                    {
                        _ucMessageDialog.MainGrid.Background = new AcrylicBrush()
                        {
                            BackgroundSource = AcrylicBackgroundSource.Backdrop,
                            TintOpacity      = 0.9,
                            TintColor        = (_ucMessageDialog.MainGrid.Background as SolidColorBrush).Color,
                            FallbackColor    = (_ucMessageDialog.MainGrid.Background as SolidColorBrush).Color
                        };
                    }
                    _ucMessageDialog.btSameWindow.Click += (s, a) =>
                    {
                        web.Navigate(args.Uri);
                        _ucMessageDialog.Visibility       = Visibility.Collapsed;
                        _ucMessageDialog.MainGrid.Opacity = 0;
                    };
                }
                _ucMessageDialog.Visibility = Visibility.Visible;
                try
                {
                    _ucMessageDialog.MainGrid.Fade((float)1, 200).Start();
                }
                catch (Exception)
                {
                    _ucMessageDialog.MainGrid.Opacity = 1;
                }
                _ucMessageDialog.tbLink.Text = args.Uri.ToString();
                break;

            case 0:
                IAsyncOperation <bool> b = Launcher.LaunchUriAsync(args.Uri);
                break;

            case 1:
                web.Navigate(args.Uri);
                break;

            case 2:
                UtilityClass.MultipleInstance(args.Uri);
                break;
            }
        }
Example #28
0
        private void WebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            args.Handled = true;
            var uri = Ao3SiteDataLookup.CheckUri(args.Uri);

            if (uri != null)
            {
                webView.Navigate(uri);
            }
            else
            {
                OpenExternal(args.Uri);
            }
        }
Example #29
0
        private void webview_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs e)
        {
            e.Handled = true; //这个一定要
            if (e.Uri != null && e.Uri.ToString() != null)
            {
                //可以添加让当前浏览停止的代码
                historyStack.Add(e.Uri); //压栈

                webview.Stop();          //停止当前的活动

                webview.Navigate(e.Uri); //主窗口转向新页面

                //跳转后需要处理的代码
            }
        }
Example #30
0
        private void WebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            args.Handled = true;

            if (!(WebPage.Collection.Count - 1 == WebPage.Index))
            {
                for (int i = WebPage.Collection.Count - 1; i > WebPage.Index; i--)
                {
                    WebPage.Collection.RemoveAt(i);
                }
            }
            var page = new WebPageObject(WebPage.Collection, args.Uri, WebPage.flipView);

            WebPage.Collection.Add(page);
            WebPage.flipView.SelectedItem = page;
        }
Example #31
0
        private void myWebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
        {
            Debug.WriteLine("In new window requested");

            newWebView.Navigate(args.Uri);
            //contentGrid.Children.Add(newWebView);
            args.Handled = true;
        }
Example #32
0
 private void newWebView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     Debug.WriteLine("In new webview window requested.");
 }
Example #33
0
 private void homewebview_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     homewebview.Navigate(args.Uri);
     args.Handled = true;
 }
Example #34
0
 private void webView_NewWindowRequested(WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     if (args.Referrer.Host != null)
     {
         webView.Navigate(args.Uri);
         args.Handled = true;
     }
 }
Example #35
0
 private void wvMain_NewWindowRequested(Windows.UI.Xaml.Controls.WebView sender, WebViewNewWindowRequestedEventArgs args)
 {
     SendMessage?.Invoke(null, new ContentViewEventArgs() { Type = "NewWindowRequested", Uri = args.Uri });
     args.Handled = true;
 }