e_info: add input_log_enable option 68/280168/1
authorduna.oh <duna.oh@samsung.com>
Wed, 24 Aug 2022 10:12:59 +0000 (19:12 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Wed, 24 Aug 2022 23:45:05 +0000 (08:45 +0900)
set input_log_enable on/off
0: off, 1: off (default: on)

Change-Id: I4f5ee193508abd273af0bfc17fca2e72a6eedf3e

src/bin/e_info_client.c
src/bin/e_info_server.c
src/bin/e_info_server_input.c
src/bin/e_info_server_input.h

index 1eaa77241299ed80a126a980bbdfcfb8f2ec61cc..e9cd9d6eb92958a342ec2912ec64d96aee40acbe 100644 (file)
@@ -5752,6 +5752,10 @@ _e_info_client_inputgen_usage(void)
    printf("  enlightenment_info -mouse_accel\n");
    printf("  \t--state: set mouse acceleration usage [off/0][on/1] (default: on)\n");
    printf("  example> enlightenment_info -mouse_accel --state=0\n");
+   printf("\n\n");
+   printf("  enlightenment_info -input_log_enable [0/1]\n");
+   printf("  \t : set input_log_enable [off/0][on/1] (default: on)\n");
+   printf("  example> enlightenment_info -input_log_enable 1\n");
    printf("\n");
 }
 
@@ -6270,6 +6274,61 @@ _e_info_client_proc_mouse_accel(int argc, char **argv)
      return;
 }
 
+static void
+_e_info_client_cb_input_log_enable(const Eldbus_Message *msg)
+{
+   const char *errname = NULL, *errtext = NULL;
+   char *result = NULL;
+
+   EINA_SAFETY_ON_TRUE_GOTO(eldbus_message_error_get(msg, &errname, &errtext), err);
+
+   EINA_SAFETY_ON_FALSE_GOTO(eldbus_message_arguments_get(msg, "s", &result), err);
+
+   if (strncmp(result, E_INFO_INPUT_RESULT_NONE, sizeof(E_INFO_INPUT_RESULT_NONE)))
+     printf("Input_Log_Enable Failed: %s\n", result);
+   else
+     printf("Input_Log_Enable Success\n");
+
+   return;
+
+err:
+   if(errname || errtext)
+     printf("errname : %s, errmsg : %s\n", errname, errtext);
+   else
+     printf("Error occurred in _e_info_client_cb_input_log_enable\n");
+}
+
+void
+_e_info_client_proc_input_log_enable(int argc, char **argv)
+{
+   uint32_t onoff;
+
+   if (argc < 3)
+     {
+        _e_info_client_inputgen_usage();
+        return;
+     }
+
+   if (!isdigit(*argv[2]))
+     {
+        printf("Error Check Args: enlightenment_info -input_log_enable [1: on, 0: off]\n");
+        return;
+     }
+
+   onoff = atoi(argv[2]);
+
+   if (onoff == 0 || onoff == 1)
+     {
+        if (!_e_info_client_eldbus_message_with_args("input_log_enable", _e_info_client_cb_input_log_enable, "i", onoff))
+          {
+             printf("_e_info_client_eldbus_message_with_args error");
+             return;
+          }
+     }
+   else
+     printf("Error Check Args: enlightenment_info -input_log_enable [1: on, 0: off]\n");
+}
+
 static void
 _e_info_client_cb_filter(const Eldbus_Message *msg)
 {
@@ -6955,6 +7014,12 @@ ProcInfo procs_to_input[] =
       "Set mouse acceleration", /* Description */
       _e_info_client_proc_mouse_accel /* func */
    },
+   {
+      "input_log_enable",      /* Option */
+      NULL,/* Params */
+      "Set input log enable/disable", /* Description */
+      _e_info_client_proc_input_log_enable /* func */
+   },
 };
 
 static Eina_List *list_tracelogs = NULL;
index df82d270ecc730fcdefee43787d819f1ea10d42d..66e6ed0ae2e15203e558114937671e92c8d18448 100644 (file)
@@ -7082,6 +7082,27 @@ _e_info_server_cb_mouse_accel(const Eldbus_Service_Interface *iface EINA_UNUSED,
    return reply;
 }
 
+static Eldbus_Message *
+_e_info_server_cb_input_log_enable(const Eldbus_Service_Interface *iface EINA_UNUSED, const Eldbus_Message *msg)
+{
+   Eldbus_Message *reply;
+   char *result = NULL;
+   int state = 0;
+
+   if (!eldbus_message_arguments_get(msg, "i", &state))
+     {
+        return eldbus_message_error_new(msg, "Input_log_enableFailed",
+                                        "input_log: an attempt to set input_log enable from method call message failed");
+     }
+
+   result = e_info_server_input_log_enable_set(state);
+   reply = eldbus_message_method_return_new(msg);
+
+   eldbus_message_arguments_append(reply, "s", result);
+
+   return reply;
+}
+
 static Eldbus_Message *
 _e_info_server_cb_filter(const Eldbus_Service_Interface *iface EINA_UNUSED, const Eldbus_Message *msg)
 {
@@ -7524,6 +7545,7 @@ static const Eldbus_Method methods[] = {
    { "touchgen", ELDBUS_ARGS({"iiii", "touch information"}), ELDBUS_ARGS({"s", "result message"}), _e_info_server_cb_touchgen, 0},
    { "mousegen", ELDBUS_ARGS({"iiii", "mouse information"}), ELDBUS_ARGS({"s", "result message"}), _e_info_server_cb_mousegen, 0},
    { "mouse_accel", ELDBUS_ARGS({"i", "set mouse acceleration"}), ELDBUS_ARGS({"s", "result message"}), _e_info_server_cb_mouse_accel, 0},
+   { "input_log_enable", ELDBUS_ARGS({"i", "set input log enable"}), ELDBUS_ARGS({"s", "result message"}), _e_info_server_cb_input_log_enable, 0},
    { "filter", ELDBUS_ARGS({"sis", "win_id, on(1)/off(0), filter name"}), ELDBUS_ARGS({"s", "result of request"}), _e_info_server_cb_filter, 0},
    { "gcov", ELDBUS_ARGS({"i", "option"}), NULL, _e_info_server_cb_gcov, 0},
    { "basic_op_gen", ELDBUS_ARGS({"s","window id" }, {"s", "operation"}), NULL, _e_info_server_cb_basic_operation_generate, 0},
index 021ab7121c439780a0b34b66150ad0e14016a29b..a0d7ec6f5afd37ee0d86e0432bf2a2eba063c5fc 100644 (file)
@@ -601,3 +601,21 @@ e_info_server_input_mouse_accel_set(int state)
 
    return E_INFO_INPUT_RESULT_NONE;
 }
+
+char *
+e_info_server_input_log_enable_set(int state)
+{
+   E_Comp_Config *conf;
+
+   conf = e_comp_config_get();
+   if (!conf) return "Comp_conf is not valid";
+
+   if (state == 1 || state == 0)
+     {
+        conf->input_log_enable = state;
+        return E_INFO_INPUT_RESULT_NONE;
+
+     }
+
+   return "Input proper value [1: on][0: off]";
+}
index f224d7f3f49547a8a344a6dcd0c88da342576be1..d62a4c295f232cb97db69670dbbb193d69059217 100644 (file)
@@ -9,5 +9,5 @@ char *e_info_server_input_keygen(char *name, int code, int state);
 char *e_info_server_input_touchgen(int idx, int x, int y, int state);
 char *e_info_server_input_mousegen(int button, int x, int y, int state);
 char *e_info_server_input_mouse_accel_set(int state);
-
+char *e_info_server_input_log_enable_set(int state);
 #endif