[EditorBrowsable(EditorBrowsableState.Never)]
public class WebView : View
{
+ private Vector4 documentBackgroundColor;
+ private bool tilesClearedWhenHidden;
+ private float tileCoverAreaMultiplier;
+ private bool cursorEnabledByClient;
+
private readonly WebViewPageLoadSignal pageLoadStartedSignal;
private EventHandler<WebViewPageLoadEventArgs> pageLoadStartedEventHandler;
private WebViewPageLoadCallbackDelegate pageLoadStartedCallback;
[EditorBrowsable(EditorBrowsableState.Never)]
public delegate void JavaScriptPromptCallback(string message1, string message2);
+ /// <summary>
+ /// The callback function that is invoked when screen shot is captured.
+ /// </summary>
+ [UnmanagedFunctionPointer(CallingConvention.StdCall)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public delegate void ScreenshotCapturedCallback(ImageView image);
+
+ /// <summary>
+ /// The callback function that is invoked when video playing is checked.
+ /// </summary>
+ [UnmanagedFunctionPointer(CallingConvention.StdCall)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public delegate void VideoPlayingCallback(bool isPlaying);
+
+ /// <summary>
+ /// The callback function that is invoked when geolocation permission is requested.
+ /// </summary>
+ [UnmanagedFunctionPointer(CallingConvention.StdCall)]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public delegate void GeolocationPermissionCallback(string host, string protocol);
+
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
private delegate void WebViewPageLoadCallbackDelegate(IntPtr data, string pageUrl);
}
/// <summary>
+ /// Options for searching texts.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public enum FindOption
+ {
+ /// <summary>
+ /// No search flags
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ None = 0,
+
+ /// <summary>
+ /// Case insensitive search
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ CaseInsensitive = 1 << 0,
+
+ /// <summary>
+ /// Search text only at the beginning of the words
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ AtWordStarts = 1 << 1,
+
+ /// <summary>
+ /// Treat capital letters in the middle of words as word start
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ TreatMediaCapitalAsWordStart = 1 << 2,
+
+ /// <summary>
+ /// Search backwards
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ Backwards = 1 << 3,
+
+ /// <summary>
+ /// If not present the search stops at the end of the document
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ WrapAround = 1 << 4,
+
+ /// <summary>
+ /// Show overlay
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ ShowOverlay = 1 << 5,
+
+ /// <summary>
+ /// Show indicator
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ ShowFindIndiator = 1 << 6,
+
+ /// <summary>
+ /// Show highlight
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ ShowHighlight = 1 << 7,
+ }
+
+ /// <summary>
/// BackForwardList.
/// </summary>
[EditorBrowsable(EditorBrowsableState.Never)]
}
/// <summary>
+ /// Background color of web page.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public Vector4 DocumentBackgroundColor
+ {
+ get
+ {
+ return documentBackgroundColor;
+ }
+ set
+ {
+ documentBackgroundColor = value;
+ SetValue(DocumentBackgroundColorProperty, value);
+ NotifyPropertyChanged();
+ }
+ }
+
+ /// <summary>
+ /// Whether tiles are cleared or not when hidden.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool TilesClearedWhenHidden
+ {
+ get
+ {
+ return tilesClearedWhenHidden;
+ }
+ set
+ {
+ tilesClearedWhenHidden = value;
+ SetValue(TilesClearedWhenHiddenProperty, value);
+ NotifyPropertyChanged();
+ }
+ }
+
+ /// <summary>
+ /// Multiplier of cover area of tile when web page is rendered.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public float TileCoverAreaMultiplier
+ {
+ get
+ {
+ return tileCoverAreaMultiplier;
+ }
+ set
+ {
+ tileCoverAreaMultiplier = value;
+ SetValue(TileCoverAreaMultiplierProperty, value);
+ NotifyPropertyChanged();
+ }
+ }
+
+ /// <summary>
+ /// Whether cursor is enabled or not by client.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool CursorEnabledByClient
+ {
+ get
+ {
+ return cursorEnabledByClient;
+ }
+ set
+ {
+ cursorEnabledByClient = value;
+ SetValue(CursorEnabledByClientProperty, value);
+ NotifyPropertyChanged();
+ }
+ }
+
+ /// <summary>
+ /// Gets selected text in web page.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public string SelectedText
+ {
+ get
+ {
+ return (string)GetValue(SelectedTextProperty);
+ }
+ }
+
+ /// <summary>
/// Gets title of web page.
/// </summary>
[EditorBrowsable(EditorBrowsableState.Never)]
}
/// <summary>
- /// Gets favicon.
+ /// Gets favicon of web page.
/// </summary>
[EditorBrowsable(EditorBrowsableState.Never)]
public ImageView Favicon
}
}
+ /// <summary>
+ /// Zoom factor of web page.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public float PageZoomFactor
+ {
+ get
+ {
+ return (float)GetValue(PageZoomFactorProperty);
+ }
+ set
+ {
+ SetValue(PageZoomFactorProperty, value);
+ NotifyPropertyChanged();
+ }
+ }
+
+ /// <summary>
+ /// Zoom factor of text in web page.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public float TextZoomFactor
+ {
+ get
+ {
+ return (float)GetValue(TextZoomFactorProperty);
+ }
+ set
+ {
+ SetValue(TextZoomFactorProperty, value);
+ NotifyPropertyChanged();
+ }
+ }
+
+ /// <summary>
+ /// Gets percentage of loading progress.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public float LoadProgressPercentage
+ {
+ get
+ {
+ return (float)GetValue(LoadProgressPercentageProperty);
+ }
+ }
+
internal static new class Property
{
internal static readonly int Url = Interop.WebView.UrlGet();
internal static readonly int VideoHoleEnabled = Interop.WebView.VideoHoleEnabledGet();
internal static readonly int MouseEventsEnabled = Interop.WebView.MouseEventsEnabledGet();
internal static readonly int KeyEventsEnabled = Interop.WebView.KeyEventsEnabledGet();
+ internal static readonly int DocumentBackgroundColor = Interop.WebView.DocumentBackgroundColorGet();
+ internal static readonly int TilesClearedWhenHidden = Interop.WebView.TilesClearedWhenHiddenGet();
+ internal static readonly int TileCoverAreaMultiplier = Interop.WebView.TileCoverAreaMultiplierGet();
+ internal static readonly int CursorEnabledByClient = Interop.WebView.CursorEnabledByClientGet();
+ internal static readonly int SelectedText = Interop.WebView.SelectedTextGet();
+ internal static readonly int PageZoomFactor = Interop.WebView.PageZoomFactorGet();
+ internal static readonly int TextZoomFactor = Interop.WebView.TextZoomFactorGet();
+ internal static readonly int LoadProgressPercentage = Interop.WebView.LoadProgressPercentageGet();
}
private static readonly BindableProperty UrlProperty = BindableProperty.Create(nameof(Url), typeof(string), typeof(WebView), string.Empty, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
return temp;
});
+ private static readonly BindableProperty DocumentBackgroundColorProperty = BindableProperty.Create(nameof(DocumentBackgroundColor), typeof(Vector4), typeof(WebView), true, propertyChanged: (bindable, oldValue, newValue) =>
+ {
+ var webview = (WebView)bindable;
+ if (newValue != null)
+ {
+ Tizen.NUI.Object.SetProperty(webview.SwigCPtr, WebView.Property.DocumentBackgroundColor, new Tizen.NUI.PropertyValue((Vector4)newValue));
+ }
+ });
+
+ private static readonly BindableProperty TilesClearedWhenHiddenProperty = BindableProperty.Create(nameof(TilesClearedWhenHidden), typeof(bool), typeof(WebView), true, propertyChanged: (bindable, oldValue, newValue) =>
+ {
+ var webview = (WebView)bindable;
+ if (newValue != null)
+ {
+ Tizen.NUI.Object.SetProperty(webview.SwigCPtr, WebView.Property.TilesClearedWhenHidden, new Tizen.NUI.PropertyValue((bool)newValue));
+ }
+ });
+
+ private static readonly BindableProperty TileCoverAreaMultiplierProperty = BindableProperty.Create(nameof(TileCoverAreaMultiplier), typeof(float), typeof(WebView), true, propertyChanged: (bindable, oldValue, newValue) =>
+ {
+ var webview = (WebView)bindable;
+ if (newValue != null)
+ {
+ Tizen.NUI.Object.SetProperty(webview.SwigCPtr, WebView.Property.TileCoverAreaMultiplier, new Tizen.NUI.PropertyValue((float)newValue));
+ }
+ });
+
+ private static readonly BindableProperty CursorEnabledByClientProperty = BindableProperty.Create(nameof(CursorEnabledByClient), typeof(bool), typeof(WebView), true, propertyChanged: (bindable, oldValue, newValue) =>
+ {
+ var webview = (WebView)bindable;
+ if (newValue != null)
+ {
+ Tizen.NUI.Object.SetProperty(webview.SwigCPtr, WebView.Property.CursorEnabledByClient, new Tizen.NUI.PropertyValue((bool)newValue));
+ }
+ });
+
+ private static readonly BindableProperty SelectedTextProperty = BindableProperty.Create(nameof(SelectedText), typeof(string), typeof(WebView), null, defaultValueCreator: (bindable) =>
+ {
+ var webview = (WebView)bindable;
+ string text;
+ Tizen.NUI.Object.GetProperty(webview.SwigCPtr, WebView.Property.SelectedText).Get(out text);
+ return text;
+ });
+
+ private static readonly BindableProperty PageZoomFactorProperty = BindableProperty.Create(nameof(PageZoomFactor), typeof(float), typeof(WebView), true, propertyChanged: (bindable, oldValue, newValue) =>
+ {
+ var webview = (WebView)bindable;
+ if (newValue != null)
+ {
+ Tizen.NUI.Object.SetProperty(webview.SwigCPtr, WebView.Property.PageZoomFactor, new Tizen.NUI.PropertyValue((float)newValue));
+ }
+ },
+ defaultValueCreator: (bindable) =>
+ {
+ var webview = (WebView)bindable;
+ float temp;
+ Tizen.NUI.Object.GetProperty(webview.SwigCPtr, WebView.Property.PageZoomFactor).Get(out temp);
+ return temp;
+ });
+
+ private static readonly BindableProperty TextZoomFactorProperty = BindableProperty.Create(nameof(TextZoomFactor), typeof(float), typeof(WebView), true, propertyChanged: (bindable, oldValue, newValue) =>
+ {
+ var webview = (WebView)bindable;
+ if (newValue != null)
+ {
+ Tizen.NUI.Object.SetProperty(webview.SwigCPtr, WebView.Property.TextZoomFactor, new Tizen.NUI.PropertyValue((float)newValue));
+ }
+ },
+ defaultValueCreator: (bindable) =>
+ {
+ var webview = (WebView)bindable;
+ float temp;
+ Tizen.NUI.Object.GetProperty(webview.SwigCPtr, WebView.Property.TextZoomFactor).Get(out temp);
+ return temp;
+ });
+
+ private static readonly BindableProperty LoadProgressPercentageProperty = BindableProperty.Create(nameof(LoadProgressPercentage), typeof(float), typeof(WebView), null, defaultValueCreator: (bindable) =>
+ {
+ var webview = (WebView)bindable;
+ float percentage;
+ Tizen.NUI.Object.GetProperty(webview.SwigCPtr, WebView.Property.LoadProgressPercentage).Get(out percentage);
+ return percentage;
+ });
+
// For rooting handlers
internal Dictionary<string, JavaScriptMessageHandler> handlerRootMap = new Dictionary<string, JavaScriptMessageHandler>();
}
/// <summary>
+ /// Loads the specified html as the content of the view to override current history entry.
+ /// <param name="html">The html to be loaded</param>
+ /// <param name="basicUri">Basic URL used for relative paths to external objects</param>
+ /// <param name="unreachableUri">URL that could not be reached</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool LoadHtmlStringOverrideCurrentEntry(string html, string basicUri, string unreachableUri)
+ {
+ bool result = Interop.WebView.LoadHtmlStringOverrideCurrentEntry(SwigCPtr, html, basicUri, unreachableUri);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Requests to load the given contents by MIME type.
+ /// <param name="contents">The contents to be loaded</param>
+ /// <param name="contentSize">The size of contents (in bytes)</param>
+ /// <param name="mimeType">The type of contents, "text/html" is assumed if null</param>
+ /// <param name="encoding">The encoding for contents, "UTF-8" is assumed if null</param>
+ /// <param name="baseUri">The base URI to use for relative resources</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool LoadContents(string contents, uint contentSize, string mimeType, string encoding, string baseUri)
+ {
+ bool result = Interop.WebView.LoadContents(SwigCPtr, contents, contentSize, mimeType, encoding, baseUri);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
/// Reloads the Web
/// </summary>
[EditorBrowsable(EditorBrowsableState.Never)]
}
/// <summary>
+ /// Reloads the current page's document without cache
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool ReloadWithoutCache()
+ {
+ bool result = Interop.WebView.ReloadWithoutCache(SwigCPtr);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
/// Stops loading the Web
/// </summary>
[EditorBrowsable(EditorBrowsableState.Never)]
}
/// <summary>
- /// Scroll web view by deltaX and detlaY.
+ /// Suspends all network loading.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void SuspendNetworkLoading()
+ {
+ Interop.WebView.SuspendNetworkLoading(SwigCPtr);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ }
+
+ /// <summary>
+ /// Resumes all network loading.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void ResumeNetworkLoading()
+ {
+ Interop.WebView.ResumeNetworkLoading(SwigCPtr);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ }
+
+ /// <summary>
+ /// Adds custom header.
+ /// <param name="name">The name of custom header</param>
+ /// <param name="value">The value of custom header</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool AddCustomHeader(string name, string value)
+ {
+ bool result = Interop.WebView.AddCustomHeader(SwigCPtr, name, value);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Removes custom header.
+ /// <param name="name">The name of custom header</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool RemoveCustomHeader(string name)
+ {
+ bool result = Interop.WebView.RemoveCustomHeader(SwigCPtr, name);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Starts the inspector server.
+ /// <param name="port">The port number</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public uint StartInspectorServer(uint port)
+ {
+ uint result = Interop.WebView.StartInspectorServer(SwigCPtr, port);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Stops the inspector server.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool StopInspectorServer()
+ {
+ bool result = Interop.WebView.StopInspectorServer(SwigCPtr);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Scrolls page of web view by deltaX and detlaY.
/// <param name="deltaX">The deltaX of scroll</param>
/// <param name="deltaY">The deltaY of scroll</param>
/// </summary>
}
/// <summary>
+ /// Scrolls edge of web view by deltaX and deltaY.
+ /// <param name="deltaX">The deltaX of scroll</param>
+ /// <param name="deltaY">The deltaY of scroll</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool ScrollEdgeBy(int deltaX, int deltaY)
+ {
+ bool result = Interop.WebView.ScrollEdgeBy(SwigCPtr, deltaX, deltaY);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
/// Goes to the back
/// </summary>
[EditorBrowsable(EditorBrowsableState.Never)]
}
/// <summary>
+ /// Scales the current page, centered at the given point.
+ /// <param name="scaleFactor">The new factor to be scaled</param>
+ /// <param name="point">The center coordinate</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void SetScaleFactor(float scaleFactor, Vector2 point)
+ {
+ Interop.WebView.SetScaleFactor(SwigCPtr, scaleFactor, Vector2.getCPtr(point));
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ }
+
+ /// <summary>
+ /// Gets the current scale factor of the page.
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public float GetScaleFactor()
+ {
+ float result = Interop.WebView.GetScaleFactor(SwigCPtr);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Requests to activate/deactivate the accessibility usage set by web app.
+ /// <param name="activated">The new factor to be scaled</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void ActivateAccessibility(bool activated)
+ {
+ Interop.WebView.ActivateAccessibility(SwigCPtr, activated);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ }
+
+ /// <summary>
+ /// Searches and highlights the given string in the document.
+ /// <param name="text">The text to be searched</param>
+ /// <param name="options">The options to search</param>
+ /// <param name="maxMatchCount">The maximum match count to search</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool HighlightText(string text, FindOption options, uint maxMatchCount)
+ {
+ bool result = Interop.WebView.HighlightText(SwigCPtr, text, (int)options, maxMatchCount);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Adds dynamic certificate path.
+ /// <param name="host">Host that required client authentication</param>
+ /// <param name="certPath">The file path stored certificate</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void AddDynamicCertificatePath(string host, string certPath)
+ {
+ Interop.WebView.AddDynamicCertificatePath(SwigCPtr, host, certPath);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ }
+
+ /// <summary>
+ /// Get snapshot of the specified viewArea of page.
+ /// <param name="viewArea">Host that required client authentication</param>
+ /// <param name="scaleFactor">The file path stored certificate</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public ImageView GetScreenshot(Rectangle viewArea, float scaleFactor)
+ {
+ IntPtr image = Interop.WebView.GetScreenshot(SwigCPtr, Rectangle.getCPtr(viewArea), scaleFactor);
+ ImageView imageView = new ImageView(image, true);
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return imageView;
+ }
+
+ /// <summary>
+ /// Get snapshot of the specified viewArea of page.
+ /// <param name="viewArea">Host that required client authentication</param>
+ /// <param name="scaleFactor">The file path stored certificate</param>
+ /// <param name="callback">The callback for getting screen shot</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool GetScreenshotAsynchronously(Rectangle viewArea, float scaleFactor, ScreenshotCapturedCallback callback)
+ {
+ System.IntPtr ip = Marshal.GetFunctionPointerForDelegate(callback);
+ bool result = Interop.WebView.GetScreenshotAsynchronously(SwigCPtr, Rectangle.getCPtr(viewArea), scaleFactor, new HandleRef(this, ip));
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Asynchronous requests to check if there is a video playing in the given view.
+ /// <param name="callback">The callback called after checking if video is playing or not</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool CheckVideoPlayingAsynchronously(VideoPlayingCallback callback)
+ {
+ System.IntPtr ip = Marshal.GetFunctionPointerForDelegate(callback);
+ bool result = Interop.WebView.CheckVideoPlayingAsynchronously(SwigCPtr, new HandleRef(this, ip));
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ return result;
+ }
+
+ /// <summary>
+ /// Registers callback which will be called upon geolocation permission request.
+ /// <param name="callback">The callback for requesting geolocation permission</param>
+ /// </summary>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void RegisterGeolocationPermissionCallback(GeolocationPermissionCallback callback)
+ {
+ System.IntPtr ip = Marshal.GetFunctionPointerForDelegate(callback);
+ Interop.WebView.RegisterGeolocationPermissionCallback(SwigCPtr, new HandleRef(this, ip));
+ if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+ }
+
+ /// <summary>
/// Deprecated. Clears the cache of current WebView.
/// </summary>
[EditorBrowsable(EditorBrowsableState.Never)]