From: InHong Han Date: Fri, 4 Jun 2021 08:11:56 +0000 (+0900) Subject: Support dbus IPC X-Git-Tag: submit/tizen/20210803.074843~13 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8703dbead72a25cc78371c007b017fa71620003c;p=platform%2Fcore%2Fuifw%2Fise-default-nui.git Support dbus IPC Change-Id: Ic0b2d09229987fba9d94df0437c161e0d6feda8a --- diff --git a/ISEDefaultNUI/ISEDefaultNUI.cs b/ISEDefaultNUI/ISEDefaultNUI.cs index b612639..f642e40 100644 --- a/ISEDefaultNUI/ISEDefaultNUI.cs +++ b/ISEDefaultNUI/ISEDefaultNUI.cs @@ -5,6 +5,9 @@ using Tizen.NUI.Components; using Tizen; using System.Collections.Generic; using Tizen.Applications; +using System.Threading; +using System.Threading.Tasks; +using static Interop.SclNuiCSharp; namespace ISEDefaultNUI { @@ -14,11 +17,13 @@ namespace ISEDefaultNUI { base.OnCreate(); Initialize(); + Task.Run(() => DbusInitialize()); } protected override void OnTerminate() { - base.OnTerminate(); + base.OnTerminate(); + SclDbusShutdown(); } void Initialize() @@ -92,6 +97,16 @@ namespace ISEDefaultNUI } } + static async void DbusInitialize() + { + await Task.Run(() => + { + int ret = SclDbusInit(); + if (ret != 0) + Log.Info("NUIIME", "Failed to initialize dbus"); + }); + } + static void Main(string[] args) { var app = new Program(); diff --git a/ISEDefaultNUI/Interop/Interop.SclNui.cs b/ISEDefaultNUI/Interop/Interop.SclNui.cs index a78389f..26e69b4 100644 --- a/ISEDefaultNUI/Interop/Interop.SclNui.cs +++ b/ISEDefaultNUI/Interop/Interop.SclNui.cs @@ -33,6 +33,7 @@ namespace NUITemplate1.Interop */ using System; +using System.Collections.Generic; using System.Runtime.InteropServices; using Tizen; using Tizen.Internals; @@ -226,5 +227,92 @@ internal static partial class Interop [DllImport(Libraries.SclNui, EntryPoint = "scl_nui_set_drag_state_changed_cb")] internal static extern int SclNuiDragStateChangedCb(DragStateChangedCallback callbackFunction); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_init")] + internal static extern int SclDbusInit(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_shutdown")] + internal static extern int SclDbusShutdown(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_set_imengine")] + internal static extern void SclDbusSetImengine(string engineId, string moduleName); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_unset_imengine")] + internal static extern void SclDbusUnsetImengine(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_flush_imengine")] + internal static extern void SclDbusFlushImengine(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_reset_imengine")] + internal static extern void SclDbusResetImengine(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_send_imengine_event")] + internal static extern void SclDbusSendImengineEvent(int command, UInt32 value); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_process_key_event")] + internal static extern void SclDbusProcessKeyEvent(UInt32 code, UInt32 mask, UInt32 layout, UInt32 devClass, UInt32 devSubclass, string devName, UInt32 serial, bool needSurroundingText); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_focus_in")] + internal static extern void SclDbusFocusIn(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_focus_out")] + internal static extern void SclDbusFocusOut(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_update_cursor_position")] + internal static extern void SclDbusUpdateCursorPosition(int position); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_set_autocapital_type")] + internal static extern void SclDbusSetAutocapitalType(UInt32 type); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_set_prediction_allow")] + internal static extern void SclDbusSetPredictionAllow(UInt32 predictionAllow); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_reset_input_context")] + internal static extern void SclDbusResetInputContext(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_set_layout")] + internal static extern void SclDbusSetLayout(UInt32 layout); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_set_imdata")] + internal static extern void SclDbusSetImdata(string imdata, UInt32 len); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_set_input_hint")] + internal static extern void SclDbusSetInputHint(UInt32 hint); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_update_bidi_direction")] + internal static extern void SclDbusUpdateBidiDirection(UInt32 direction); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_trigger_property")] + internal static extern void SclDbusTriggerProperty(string property); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_show_candidate_more_window")] + internal static extern void SclDbusShowCandidateMoreWindow(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_hide_candidate_more_window")] + internal static extern void SclDbusHideCandidateMoreWindow(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_select_aux")] + internal static extern void SclDbusSelectAux(UInt32 item); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_select_candidate")] + internal static extern void SclDbusSelectCandidate(UInt32 item); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_candidate_table_page_up")] + internal static extern void SclDbusCandidateTablePageUp(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_candidate_table_page_down")] + internal static extern void SclDbusCandidateTablePageDown(); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_change_candidate_page_size")] + internal static extern void SclDbusChangeCandidatePageSize(UInt32 size); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_set_candidate_item_layout")] + internal static extern void SclDbusSetCandidateItemLayout(List item); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_change_candidate_number")] + internal static extern void SclDbusChangeCandidateNumber(UInt32 pageNum); + + [DllImport(Libraries.SclNui, EntryPoint = "scl_dbus_long_press_candidate_item")] + internal static extern void SclDbusLongPressCandidateItem(UInt32 index); } }