Ejemplo n.º 1
0
 private void E_DocumentLoaded(object sender, WebViewLoadedEventArgs e)
 {
     if (e.Uri.AbsolutePath == index)
     {
         IndexLoaded = true;
     }
 }
Ejemplo n.º 2
0
        public override void AttachEvent(string handler)
        {
            switch (handler)
            {
            case WebView.DocumentLoadedEvent:
                Control.LoadCompleted += delegate(object sender, swn.NavigationEventArgs e)
                {
                    var args = new WebViewLoadedEventArgs(e.Uri);
                    Widget.OnDocumentLoaded(args);
                    Widget.OnDocumentTitleChanged(new WebViewTitleEventArgs(this.DocumentTitle));
                    HookDocumentEvents();
                };
                break;

            case WebView.DocumentLoadingEvent:
                Control.Navigating += delegate(object sender, swn.NavigatingCancelEventArgs e)
                {
                    var args = new WebViewLoadingEventArgs(e.Uri, true);
                    Widget.OnDocumentLoading(args);
                    e.Cancel = args.Cancel;
                };
                break;

            case WebView.OpenNewWindowEvent:
            case WebView.DocumentTitleChangedEvent:
                HookDocumentEvents(handler);
                break;

            default:
                base.AttachEvent(handler);
                break;
            }
        }
Ejemplo n.º 3
0
 protected virtual void HandleDocumentLoaded(object sender, WebViewLoadedEventArgs e)
 {
     Application.Instance.AsyncInvoke(delegate
     {
         StartLive();
         ReplayDelayedCommands();
     });
 }
Ejemplo n.º 4
0
            public void HandleLoadFinished(object o, WebKit.LoadFinishedArgs args)
            {
                var handler = Handler;
                var uri     = args.Frame.Uri != null ? new Uri(args.Frame.Uri) : null;
                var e       = new WebViewLoadedEventArgs(uri);

                if (args.Frame == handler.Control.MainFrame)
                {
                    handler.Callback.OnNavigated(handler.Widget, e);
                }
                handler.Callback.OnDocumentLoaded(handler.Widget, e);
            }
Ejemplo n.º 5
0
        static void HandleFinishedLoad(object sender, wk.WebFrameEventArgs e)
        {
            var handler = GetHandler(e.ForFrame.WebView) as WebViewHandler;

            if (handler != null)
            {
                var args = new WebViewLoadedEventArgs(handler.Url);
                if (e.ForFrame == handler.Control.MainFrame)
                {
                    handler.Widget.OnNavigated(args);
                }
                handler.Widget.OnDocumentLoaded(args);
            }
        }
Ejemplo n.º 6
0
        public override void AttachEvent(string handler)
        {
            switch (handler)
            {
            case WebView.NavigatedEvent:
                this.Browser.Navigated += (sender, e) =>
                {
                    Callback.OnNavigated(Widget, new WebViewLoadedEventArgs(e.Url));
                };
                break;

            case WebView.DocumentLoadedEvent:
                this.Browser.DocumentCompleted += (sender, e) =>
                {
                    var args = new WebViewLoadedEventArgs(e.Url);
                    Callback.OnDocumentLoaded(Widget, args);
                };
                break;

            case WebView.DocumentLoadingEvent:
                this.Browser.Navigating += (sender, e) =>
                {
                    var args = new WebViewLoadingEventArgs(e.Url, false);
                    Callback.OnDocumentLoading(Widget, args);
                    e.Cancel = args.Cancel;
                };
                break;

            case WebView.OpenNewWindowEvent:
                HookDocumentEvents(handler);
                break;

            case WebView.DocumentTitleChangedEvent:
                this.Browser.DocumentTitleChanged += delegate
                {
                    Callback.OnDocumentTitleChanged(Widget, new WebViewTitleEventArgs(Browser.DocumentTitle));
                };
                break;

            default:
                base.AttachEvent(handler);
                break;
            }
        }
Ejemplo n.º 7
0
        void HandleDocumentLoaded(object sender, WebViewLoadedEventArgs e)
        {
            var newIsLocal = string.IsNullOrEmpty(e.Uri.AbsolutePath) || e.Uri.IsLoopback;

            if (isLocal != newIsLocal)
            {
                isLocal = newIsLocal;
                var newSize  = isLocal ? defaultSize : expandedSize;
                var location = this.Location;
                var rect     = new Rectangle(location, this.ClientSize);
                rect.Inflate((newSize.Width - rect.Width) / 2, (newSize.Height - rect.Height) / 2);
                if (Generator.IsMac)
                {
                    rect.Y = location.Y;
                }
                this.Location   = rect.Location;
                this.ClientSize = rect.Size;
            }
        }
Ejemplo n.º 8
0
        public override void AttachEvent(string id)
        {
            switch (id)
            {
            case WebView.NavigatedEvent:
                Control.Navigated += (sender, e) =>
                {
                    var args = new WebViewLoadedEventArgs(e.Uri);
                    Callback.OnNavigated(Widget, args);
                };
                break;

            case WebView.DocumentLoadedEvent:
                Control.LoadCompleted += (sender, e) =>
                {
                    var args = new WebViewLoadedEventArgs(e.Uri);
                    Callback.OnDocumentLoaded(Widget, args);
                    Callback.OnDocumentTitleChanged(Widget, new WebViewTitleEventArgs(DocumentTitle));
                    HookDocumentEvents();
                };
                break;

            case WebView.DocumentLoadingEvent:
                Control.Navigating += (sender, e) =>
                {
                    var args = new WebViewLoadingEventArgs(e.Uri, true);
                    Callback.OnDocumentLoading(Widget, args);
                    e.Cancel = args.Cancel;
                };
                break;

            case WebView.OpenNewWindowEvent:
            case WebView.DocumentTitleChangedEvent:
                HookDocumentEvents(id);
                HandleEvent(WebView.NavigatedEvent);
                break;

            default:
                base.AttachEvent(id);
                break;
            }
        }
Ejemplo n.º 9
0
        public override void AttachEvent(string handler)
        {
            switch (handler)
            {
            case WebView.NavigatedEvent:
                Control.Navigated += (s, e) => Callback.OnNavigated(Widget, new WebViewLoadedEventArgs(e.Url));
                break;

            case WebView.DocumentLoadedEvent:
                Control.DocumentCompleted += async(sender, e) =>
                {
                    var args = new WebViewLoadedEventArgs(e.Url);
                    await Task.Delay(1000);

                    Callback.OnDocumentLoaded(Widget, args);
                };
                break;

            case WebView.DocumentLoadingEvent:
                Control.Navigating += (sender, e) =>
                {
                    var args = new WebViewLoadingEventArgs(e.Url, false);
                    Callback.OnDocumentLoading(Widget, args);
                    e.Cancel = args.Cancel;
                };
                break;

            case WebView.OpenNewWindowEvent:
                HookDocumentEvents(handler);
                break;

            case WebView.DocumentTitleChangedEvent:
                Control.DocumentTitleChanged += (sender, e) => Callback.OnDocumentTitleChanged(Widget, new WebViewTitleEventArgs(Control.DocumentTitle));
                break;

            default:
                base.AttachEvent(handler);
                break;
            }
        }
Ejemplo n.º 10
0
        protected override async void HandleDocumentLoaded(object sender, WebViewLoadedEventArgs e)
        {
            if (Channel != null && Server.IsConnected)
            {
                BeginLoad();
                try
                {
                    var channel = await Channel.GetChannelInfo();

                    if (channel != null)
                    {
                        SetTopic(channel.Topic);
                        UserList.SetUsers(channel.Users);
                        var history = await channel.GetHistory(LastHistoryMessageId);

                        if (history != null)
                        {
                            StartLive();
                            AddHistory(history, true);
                            AddNotification(new NotificationMessage(DateTimeOffset.Now, string.Format("You just entered {0}", Channel.Name)));
                            SetMarker();
                            ReplayDelayedCommands();
                        }
                    }
                }
                catch (Exception ex)
                {
                    LoadError(ex, "Error getting channel info");
                }
                FinishLoad();
            }
            else
            {
                StartLive();
                ReplayDelayedCommands();
                AddNotification(new NotificationMessage(DateTimeOffset.Now, "Disconnected"));
            }
        }
Ejemplo n.º 11
0
        private void Control_NavigationCompleted(object sender, CoreWebView2NavigationCompletedEventArgs e)
        {
            var args = new WebViewLoadedEventArgs(Control.Source);

            Application.Instance.AsyncInvoke(() => Callback.OnDocumentLoaded(Widget, args));
        }
Ejemplo n.º 12
0
        private void Control_ContentLoading(object sender, CoreWebView2ContentLoadingEventArgs e)
        {
            var args = new WebViewLoadedEventArgs(Control.Source);

            Callback.OnNavigated(Widget, args);
        }
Ejemplo n.º 13
0
 private void Browser_LoadingStateChanged(object sender, WebViewLoadedEventArgs e)
 {
     _duplex.Client.Order(x => x.NotifyReady());
     Visible = true;
     _splash?.Close();
 }
Ejemplo n.º 14
0
 private void PretzelOnDocumentLoaded(object sender, WebViewLoadedEventArgs e)
 {
     Console.WriteLine("Phase 2");
     //document.evaluate('/html/body/div[1]/div/div/div/div[5]/div/div[3]/div[2]/img', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
     //Console.WriteLine(Pretzel.ExecuteScript("alert(document.evaluate(//img[1], document, null))"));
 }
Ejemplo n.º 15
0
        public override void AttachEvent(string handler)
        {
            switch (handler)
            {
            case WebView.NavigatedEvent:
                HandleEvent(WebView.DocumentLoadedEvent);
                break;

            case WebView.DocumentLoadedEvent:
                Control.LoadFinished += (o, args) => {
                    var uri = args.Frame.Uri != null ? new Uri(args.Frame.Uri) : null;
                    var e   = new WebViewLoadedEventArgs(uri);
                    if (args.Frame == Control.MainFrame)
                    {
                        Widget.OnNavigated(e);
                    }
                    Widget.OnDocumentLoaded(e);
                };
                break;

            case WebView.DocumentLoadingEvent:
#if GTK2
                Control.NavigationRequested += (sender, args) => {
                    if (args.Request.Uri.StartsWith(EtoReturnPrefix))
                    {
                        // pass back the response to ExecuteScript()
                        this.scriptReturnValue = HttpUtility.UrlDecode(args.Request.Uri.Substring(EtoReturnPrefix.Length));
                        returnResetEvent.Set();
                        args.RetVal = WebKit.NavigationResponse.Ignore;
                    }
                    else
                    {
                        var e = new WebViewLoadingEventArgs(new Uri(args.Request.Uri), false);
                        Widget.OnDocumentLoading(e);
                        if (e.Cancel)
                        {
                            args.RetVal = WebKit.NavigationResponse.Ignore;
                        }
                        else
                        {
                            args.RetVal = WebKit.NavigationResponse.Accept;
                        }
                    }
                };
#else
                Control.NavigationPolicyDecisionRequested += (sender, args) => {
                    if (args.Request.Uri.StartsWith(EtoReturnPrefix))
                    {
                        // pass back the response to ExecuteScript()
                        this.scriptReturnValue = HttpUtility.UrlDecode(args.Request.Uri.Substring(EtoReturnPrefix.Length));
                        returnResetEvent.Set();
                        args.PolicyDecision.Ignore();
                    }
                    else
                    {
                        var e = new WebViewLoadingEventArgs(new Uri(args.Request.Uri), false);
                        Widget.OnDocumentLoading(e);
                        if (e.Cancel)
                        {
                            args.PolicyDecision.Ignore();
                        }
                        else
                        {
                            args.PolicyDecision.Use();
                        }
                    }
                };
#endif
                break;

            case WebView.OpenNewWindowEvent:
                // note: requires libwebkitgtk 1.1.4+
                Control.NewWindowPolicyDecisionRequested += (sender, args) => {
                    var e = new WebViewNewWindowEventArgs(new Uri(args.Request.Uri), args.Frame.Name);
                    Widget.OnOpenNewWindow(e);
#if GTK2
                    if (e.Cancel)
                    {
                        args.Decision.Ignore();
                    }
                    else
                    {
                        args.Decision.Use();
                    }
#else
                    if (e.Cancel)
                    {
                        args.PolicyDecision.Ignore();
                    }
                    else
                    {
                        args.PolicyDecision.Use();
                    }
#endif
                    args.RetVal = true;
                };
                break;

            case WebView.DocumentTitleChangedEvent:
                Control.TitleChanged += (sender, args) => {
                    Widget.OnDocumentTitleChanged(new WebViewTitleEventArgs(args.Title));
                };
                break;

            default:
                base.AttachEvent(handler);
                break;
            }
        }
Ejemplo n.º 16
0
 private void Browser_DocumentLoaded(object sender, WebViewLoadedEventArgs e)
 {
     Rhino.RhinoApp.WriteLine("Browser: Document Loaded");
 }
Ejemplo n.º 17
0
 void HandleDocumentLoaded(object sender, WebViewLoadedEventArgs e)
 {
 }