From 20aaf68d451eadaf4f63758ccee834fec61f6a20 Mon Sep 17 00:00:00 2001 From: "duna.oh" Date: Fri, 11 Mar 2022 17:33:10 +0900 Subject: [PATCH] winfo: add seat_name in a result string of '-input_devices' Change-Id: I088f92a17402a0abbd7c302065b4439d478d54bc --- src/bin/e_info_client.c | 21 ++++++++++++++------- src/bin/e_info_server.c | 4 ++-- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/src/bin/e_info_client.c b/src/bin/e_info_client.c index 4ca725a..c849cad 100644 --- a/src/bin/e_info_client.c +++ b/src/bin/e_info_client.c @@ -108,7 +108,7 @@ typedef struct _E_Fps_Info #define VALUE_TYPE_FOR_TOPVWINS "uuisiiiiibbbiibibbiiiusbbii" #define VALUE_TYPE_REQUEST_RESLIST "ui" #define VALUE_TYPE_REPLY_RESLIST "ssi" -#define VALUE_TYPE_FOR_INPUTDEV "ssi" +#define VALUE_TYPE_FOR_INPUTDEV "ssis" #define VALUE_TYPE_FOR_PENDING_COMMIT "uiuu" #define VALUE_TYPE_FOR_FPS "usiud" #define VALUE_TYPE_REQUEST_FOR_KILL "uts" @@ -851,11 +851,13 @@ _cb_input_device_info_get(const Eldbus_Message *msg) char *dev_name; char *identifier; int clas; + char *seat_name; res = eldbus_message_iter_arguments_get(eldbus_msg, VALUE_TYPE_FOR_INPUTDEV, &dev_name, &identifier, - &clas); + &clas, + &seat_name); if (!res) { printf("Failed to get device info\n"); @@ -867,6 +869,8 @@ _cb_input_device_info_get(const Eldbus_Message *msg) dev->name = strdup(dev_name); dev->identifier = strdup(identifier); + dev->seat_name = strdup(seat_name); + dev->clas = clas; e_info_client.input_dev = eina_list_append(e_info_client.input_dev, dev); @@ -1467,7 +1471,7 @@ _e_info_client_proc_input_device_info(int argc, char **argv) return; printf("--------------------------------------[ input devices ]----------------------------------------------------------\n"); - printf(" No Name identifier Cap\n"); + printf(" No Name identifier Cap Seat Name\n"); printf("-----------------------------------------------------------------------------------------------------------------\n"); if (!e_info_client.input_dev) @@ -1479,17 +1483,20 @@ _e_info_client_proc_input_device_info(int argc, char **argv) EINA_LIST_FOREACH(e_info_client.input_dev, l, dev) { i++; - printf("%3d %50s %20s ", i, dev->name, dev->identifier); - if (dev->clas == ECORE_DEVICE_CLASS_MOUSE) printf("Mouse | "); + printf("%3d %30s %20s ", i, dev->name, dev->identifier); + if (dev->clas == ECORE_DEVICE_CLASS_MOUSE) printf("Mouse | "); else if (dev->clas == ECORE_DEVICE_CLASS_KEYBOARD) printf("Keyboard | "); - else if (dev->clas == ECORE_DEVICE_CLASS_TOUCH) printf("Touch | "); - printf("(0x%x)\n", dev->clas); + else if (dev->clas == ECORE_DEVICE_CLASS_TOUCH) printf("Touch | "); + else if (dev->clas == ECORE_DEVICE_CLASS_SEAT) printf("Seat | "); + printf("(0x%x) ", dev->clas); + printf("%20s\n", dev->seat_name); } EINA_LIST_FREE(e_info_client.input_dev, dev) { if (dev->name) free((char *)dev->name); if (dev->identifier) free((char *)dev->identifier); + if (dev->seat_name) free((char *)dev->seat_name); free(dev); } } diff --git a/src/bin/e_info_server.c b/src/bin/e_info_server.c index 6d4b9d8..3cb12ea 100644 --- a/src/bin/e_info_server.c +++ b/src/bin/e_info_server.c @@ -83,7 +83,7 @@ static Eina_List *module_hook = NULL; #define VALUE_TYPE_FOR_TOPVWINS "uuisiiiiibbbiibibbiiiusbbii" #define VALUE_TYPE_REQUEST_RESLIST "ui" #define VALUE_TYPE_REPLY_RESLIST "ssi" -#define VALUE_TYPE_FOR_INPUTDEV "ssi" +#define VALUE_TYPE_FOR_INPUTDEV "ssis" #define VALUE_TYPE_FOR_PENDING_COMMIT "uiuu" #define VALUE_TYPE_FOR_FPS "usiud" #define VALUE_TYPE_REQUEST_FOR_KILL "uts" @@ -889,7 +889,7 @@ _input_msg_clients_append(Eldbus_Message_Iter *iter) eldbus_message_iter_arguments_append (struct_of_input, VALUE_TYPE_FOR_INPUTDEV, - dev->name, dev->identifier, dev->clas); + dev->name, dev->identifier, dev->clas, dev->seat_name); eldbus_message_iter_container_close(array_of_input, struct_of_input); } -- 2.7.4