[global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterScrollEdgeReachedCallback")]
public static extern void RegisterScrollEdgeReachedCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);
- [global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterOverScrolledCallback")]
- public static extern void RegisterOverScrolledCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);
-
[global::System.Runtime.InteropServices.DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterUrlChangedCallback")]
public static extern void RegisterUrlChangedCallback(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2);
+++ /dev/null
-/*
- * Copyright (c) 2025 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-using System;
-using System.ComponentModel;
-
-namespace Tizen.NUI
-{
- /// <summary>
- /// Event arguments that passed via the WebView.OverScrolled.
- /// </summary>
- [EditorBrowsable(EditorBrowsableState.Never)]
- public class WebViewOverScrolledEventArgs : EventArgs
- {
- internal WebViewOverScrolledEventArgs(Over e)
- {
- OverScrolled = e;
- }
-
- /// <summary>
- /// The enumeration for over scrolled.
- /// </summary>
- [EditorBrowsable(EditorBrowsableState.Never)]
- public enum Over
- {
- [EditorBrowsable(EditorBrowsableState.Never)]
- Left,
-
- [EditorBrowsable(EditorBrowsableState.Never)]
- Right,
-
- [EditorBrowsable(EditorBrowsableState.Never)]
- Top,
-
- [EditorBrowsable(EditorBrowsableState.Never)]
- Bottom,
- }
-
- /// <summary>
- /// The over scolled direction, e.g. left, right, etc.
- /// </summary>
- [EditorBrowsable(EditorBrowsableState.Never)]
- public Over OverScrolled { get; }
- }
-}
private EventHandler<WebViewScrollEdgeReachedEventArgs> scrollEdgeReachedEventHandler;
private WebViewScrollEdgeReachedCallback scrollEdgeReachedCallback;
- private EventHandler<WebViewOverScrolledEventArgs> overScrolledEventHandler;
- private WebViewOverScrolledCallback overScrolledCallback;
-
private EventHandler<WebViewUrlChangedEventArgs> urlChangedEventHandler;
private WebViewUrlChangedCallback urlChangedCallback;
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
private delegate void WebViewScrollEdgeReachedCallback(int edge);
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- private delegate void WebViewOverScrolledCallback(int overscrolled);
-
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
private delegate void WebViewUrlChangedCallback(string pageUrl);
}
}
- /// <summary>
- /// Event for the OverScrolled signal which can be used to subscribe or unsubscribe the event handler.<br />
- /// This signal is emitted when web view is over scrolled.<br />
- /// </summary>
- [EditorBrowsable(EditorBrowsableState.Never)]
- public event EventHandler<WebViewOverScrolledEventArgs> OverScrolled
- {
- add
- {
- if (overScrolledEventHandler == null)
- {
- overScrolledCallback = OnOverScrolled;
- IntPtr ip = Marshal.GetFunctionPointerForDelegate(overScrolledCallback);
- Interop.WebView.RegisterOverScrolledCallback(SwigCPtr, new HandleRef(this, ip));
- }
- overScrolledEventHandler += value;
- }
- remove
- {
- overScrolledEventHandler -= value;
- if (overScrolledEventHandler == null)
- {
- IntPtr ip = IntPtr.Zero;
- Interop.WebView.RegisterOverScrolledCallback(SwigCPtr, new HandleRef(this, ip));
- }
- }
- }
-
/// <summary>
/// Event for the UrlChanged signal which can be used to subscribe or unsubscribe the event handler.<br />
/// This signal is emitted when url is changed.<br />
scrollEdgeReachedEventHandler?.Invoke(this, new WebViewScrollEdgeReachedEventArgs((WebViewScrollEdgeReachedEventArgs.Edge)edge));
}
- private void OnOverScrolled(int over)
- {
- overScrolledEventHandler?.Invoke(this, new WebViewOverScrolledEventArgs((WebViewOverScrolledEventArgs.Over)over));
- }
-
private void OnUrlChanged(string pageUrl)
{
urlChangedEventHandler?.Invoke(this, new WebViewUrlChangedEventArgs(pageUrl));