[NUI] Add SetVideoHole() for EFL window
authordongsug.song <dongsug.song@samsung.com>
Sat, 15 Feb 2025 09:03:52 +0000 (18:03 +0900)
committerdongsug-song <35130733+dongsug-song@users.noreply.github.com>
Mon, 17 Feb 2025 01:55:45 +0000 (10:55 +0900)
src/Tizen.NUI/src/internal/Interop/Interop.WebView.cs
src/Tizen.NUI/src/public/WebView/WebView.cs

index ed5902015324a7e6040fb8e96b51343aa3e20a38..d775c3a98721d8b3d8cbfd5446a2f5c11138492a 100755 (executable)
@@ -365,6 +365,9 @@ namespace Tizen.NUI
 
             [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_RegisterDeviceListGetCallback")]
             public static extern void RegisterDeviceListGetCallback(HandleRef webViewRef, IntPtr callbackRef);
+
+            [DllImport(NDalicPINVOKE.Lib, EntryPoint = "CSharp_Dali_WebView_SetVideoHole")]
+            public static extern void SetVideoHole(HandleRef webViewRef, bool enable, bool isWaylandWindow);
         }
     }
 }
index 9d996ab8921e6c420cd3c13887cb3b048de596e0..9708d48e3985e08dbe409d4e88b2024b2eb1122b 100755 (executable)
@@ -3132,6 +3132,18 @@ namespace Tizen.NUI.BaseComponents
             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
         }
 
+        /// <summary>
+        /// Enable video hole for a specific window type.
+        /// </summary>
+        /// <param name="enable">true if enabled, false othewise</param>
+        /// <param name="isWaylandWindow">true if wayland window, false if EFL window.</param>
+        [EditorBrowsable(EditorBrowsableState.Never)]
+        public void SetVideoHole(bool enable, bool isWaylandWindow)
+        {
+            Interop.WebView.SetVideoHole(SwigCPtr, enable, isWaylandWindow);
+            if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
+        }
+
         internal static WebView DownCast(BaseHandle handle)
         {
             WebView ret = new WebView(Interop.WebView.DownCast(BaseHandle.getCPtr(handle)), true);