Ejemplo n.º 1
0
 public unsafe int OnBeforePopup(cef_browser_t *browser, cef_frame_t *frame, [Immutable] cef_string_t *target_url, [Immutable] cef_string_t *target_frame_name, CefWindowOpenDisposition target_disposition, int user_gesture, [Immutable] cef_popup_features_t *popupFeatures, cef_window_info_t *windowInfo, cef_client_t **client, cef_browser_settings_t *settings, cef_dictionary_value_t **extra_info, int *no_javascript_access)
 {
     fixed(cef_life_span_handler_t *self = &this)
     {
         return(((delegate * unmanaged[Stdcall] < cef_life_span_handler_t *, cef_browser_t *, cef_frame_t *, cef_string_t *, cef_string_t *, CefWindowOpenDisposition, int, cef_popup_features_t *, cef_window_info_t *, cef_client_t **, cef_browser_settings_t *, cef_dictionary_value_t **, int *, int >)on_before_popup)(self, browser, frame, target_url, target_frame_name, target_disposition, user_gesture, popupFeatures, windowInfo, client, settings, extra_info, no_javascript_access));
     }
 }
        private int on_before_popup(cef_life_span_handler_t *self, cef_browser_t *browser, cef_frame_t *frame, cef_string_t *target_url, cef_string_t *target_frame_name, CefWindowOpenDisposition target_disposition, int user_gesture, cef_popup_features_t *popupFeatures, cef_window_info_t *windowInfo, cef_client_t **client, cef_browser_settings_t *settings, int *no_javascript_access)
        {
            CheckSelf(self);

            var m_browser            = CefBrowser.FromNative(browser);
            var m_frame              = CefFrame.FromNative(frame);
            var m_targetUrl          = cef_string_t.ToString(target_url);
            var m_targetFrameName    = cef_string_t.ToString(target_frame_name);
            var m_userGesture        = user_gesture != 0;
            var m_popupFeatures      = new CefPopupFeatures(popupFeatures);
            var m_windowInfo         = CefWindowInfo.FromNative(windowInfo);
            var m_client             = CefClient.FromNative(*client);
            var m_settings           = new CefBrowserSettings(settings);
            var m_noJavascriptAccess = (*no_javascript_access) != 0;

            var o_client = m_client;
            var result   = OnBeforePopup(m_browser, m_frame, m_targetUrl, m_targetFrameName, target_disposition, m_userGesture, m_popupFeatures, m_windowInfo, ref m_client, m_settings, ref m_noJavascriptAccess);

            if ((object)o_client != m_client && m_client != null)
            {
                *client = m_client.ToNative();
            }

            *no_javascript_access = m_noJavascriptAccess ? 1 : 0;

            m_popupFeatures.Dispose();
            m_windowInfo.Dispose();
            m_settings.Dispose();

            return(result ? 1 : 0);
        }
Ejemplo n.º 3
0
        private int on_before_browser(cef_extension_handler_t *self, cef_extension_t *extension, cef_browser_t *browser, cef_browser_t *active_browser, int index, cef_string_t *url, int active, cef_window_info_t *windowInfo, cef_client_t **client, cef_browser_settings_t *settings)
        {
            CheckSelf(self);

            var m_extension     = CefExtension.FromNative(extension);
            var m_browser       = CefBrowser.FromNativeOrNull(browser);
            var m_activeBrowser = CefBrowser.FromNativeOrNull(active_browser);
            var m_url           = cef_string_t.ToString(url);
            var m_active        = active != 0;
            var m_windowInfo    = CefWindowInfo.FromNative(windowInfo);
            var m_client        = CefClient.FromNative(*client);
            var m_settings      = new CefBrowserSettings(settings);

            var o_client = m_client;
            var cancel   = OnBeforeBrowser(m_extension, m_browser, m_activeBrowser, index, m_url, m_active, m_windowInfo, ref m_client, m_settings);

            if (!cancel && ((object)o_client != m_client && m_client != null))
            {
                *client = m_client.ToNative();
            }

            m_windowInfo.Dispose();
            m_settings.Dispose();

            return(cancel ? 1 : 0);
        }
Ejemplo n.º 4
0
        private int on_before_background_browser(cef_extension_handler_t *self, cef_extension_t *extension, cef_string_t *url, cef_client_t **client, cef_browser_settings_t *settings)
        {
            CheckSelf(self);

            var m_extension = CefExtension.FromNative(extension);
            var m_url       = cef_string_t.ToString(url);
            var m_client    = CefClient.FromNative(*client);
            var m_settings  = new CefBrowserSettings(settings);

            var o_client = m_client;
            var cancel   = OnBeforeBackgroundBrowser(m_extension, m_url, ref m_client, m_settings);

            if (!cancel && ((object)o_client != m_client && m_client != null))
            {
                *client = m_client.ToNative();
            }

            m_settings.Dispose();

            return(cancel ? 1 : 0);
        }
 private int on_before_popup(cef_life_span_handler_t *self, cef_browser_t *browser, cef_frame_t *frame, cef_string_t *target_url, cef_string_t *target_frame_name, CefWindowOpenDisposition target_disposition, int user_gesture, cef_popup_features_t *popupFeatures, cef_window_info_t *windowInfo, cef_client_t **client, cef_browser_settings_t *settings, int *no_javascript_access)
 {
     CheckSelf(self);
     throw new NotImplementedException(); // TODO: CefLifeSpanHandler.OnBeforePopup
 }
Ejemplo n.º 6
0
 public unsafe extern int OnBeforePopup(cef_browser_t *browser, cef_frame_t *frame, [Immutable] cef_string_t *target_url, [Immutable] cef_string_t *target_frame_name, CefWindowOpenDisposition target_disposition, int user_gesture, [Immutable] cef_popup_features_t *popupFeatures, cef_window_info_t *windowInfo, cef_client_t **client, cef_browser_settings_t *settings, cef_dictionary_value_t **extra_info, int *no_javascript_access);
Ejemplo n.º 7
0
 public unsafe extern int OnBeforeBackgroundBrowser(cef_extension_t *extension, [Immutable] cef_string_t *url, cef_client_t **client, cef_browser_settings_t *settings);
Ejemplo n.º 8
0
 public unsafe extern int OnBeforeBrowser(cef_extension_t *extension, cef_browser_t *browser, cef_browser_t *active_browser, int index, [Immutable] cef_string_t *url, int active, cef_window_info_t *windowInfo, cef_client_t **client, cef_browser_settings_t *settings);
Ejemplo n.º 9
0
        /// <summary>
        /// Called before a new popup window is created.
        /// The |parentBrowser| parameter will point to the parent browser window.
        /// The |popupFeatures| parameter will contain information about the style of popup window requested.
        /// Return false to have the framework create the new popup window based on the parameters in |windowInfo|.
        /// Return true to cancel creation of the popup window.
        /// By default, a newly created popup window will have the same client and settings as the parent window.
        /// To change the client for the new window modify the object that |client| points to.
        /// To change the settings for the new window modify the |settings| structure.
        /// </summary>
        private int on_before_popup(cef_life_span_handler_t *self, cef_browser_t *parentBrowser, /*const*/ cef_popup_features_t *popupFeatures, cef_window_info_t *windowInfo, /*const*/ cef_string_t *url, cef_client_t **client, cef_browser_settings_t *settings)
        {
            ThrowIfObjectDisposed();

            var m_client        = CefClient.From(*client);
            var m_parentBrowser = CefBrowser.From(parentBrowser);
            var m_popupFeatures = CefPopupFeatures.From(popupFeatures);
            var m_windowInfo    = CefWindowInfo.From(windowInfo);
            var m_url           = cef_string_t.ToString(url);
            var m_settings      = CefBrowserSettings.From(settings);

            var o_client = m_client;
            var handled  = this.OnBeforePopup(m_parentBrowser, m_popupFeatures, m_windowInfo, m_url, ref m_client, m_settings);

            if (!handled && m_client != o_client && m_client != null)
            {
                *client = m_client.GetNativePointerAndAddRef();
            }

            m_popupFeatures.Dispose();
            m_windowInfo.Dispose();
            m_settings.Dispose();

            return(handled ? 1 : 0);
        }
Ejemplo n.º 10
0
 public unsafe int OnBeforeBrowser(cef_extension_t *extension, cef_browser_t *browser, cef_browser_t *active_browser, int index, [Immutable] cef_string_t *url, int active, cef_window_info_t *windowInfo, cef_client_t **client, cef_browser_settings_t *settings)
 {
     fixed(cef_extension_handler_t *self = &this)
     {
         return(((delegate * unmanaged[Stdcall] < cef_extension_handler_t *, cef_extension_t *, cef_browser_t *, cef_browser_t *, int, cef_string_t *, int, cef_window_info_t *, cef_client_t **, cef_browser_settings_t *, int >)on_before_browser)(self, extension, browser, active_browser, index, url, active, windowInfo, client, settings));
     }
 }
Ejemplo n.º 11
0
 public unsafe int OnBeforeBackgroundBrowser(cef_extension_t *extension, [Immutable] cef_string_t *url, cef_client_t **client, cef_browser_settings_t *settings)
 {
     fixed(cef_extension_handler_t *self = &this)
     {
         return(((delegate * unmanaged[Stdcall] < cef_extension_handler_t *, cef_extension_t *, cef_string_t *, cef_client_t **, cef_browser_settings_t *, int >)on_before_background_browser)(self, extension, url, client, settings));
     }
 }