From: Junkyeong Kim Date: Mon, 4 Jan 2021 09:37:11 +0000 (+0900) Subject: tdm_monitor: add dpms get method X-Git-Tag: submit/tizen/20210222.081804~15 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8eae4b43b4ab74cfd5d4f1cd34e86a9cbb4b66fb;p=platform%2Fcore%2Fuifw%2Flibtdm.git tdm_monitor: add dpms get method Change-Id: I2d4e33e68fda506f4ea9f9e644c32089ac7a2a1b Signed-off-by: Junkyeong Kim --- diff --git a/src/tdm_monitor_server.c b/src/tdm_monitor_server.c index a68ce21a..0e8431af 100644 --- a/src/tdm_monitor_server.c +++ b/src/tdm_monitor_server.c @@ -67,33 +67,52 @@ static void _tdm_monitor_server_dpms(unsigned int pid, char *cwd, int argc, char *argv[], char *reply, int *len, tdm_display *dpy) { tdm_output *output; - int output_idx, dpms_value; + int output_idx, set, dpms_value = 0; + tdm_output_dpms dpms = TDM_OUTPUT_DPMS_ON; char *arg; char *end; tdm_error ret; - if (argc < 3) { + if (argc < 4) { _tdm_monitor_server_usage(argv[0], reply, len); return; } - arg = argv[2]; - output_idx = strtol(arg, &end, 10); - if (*end != ':') { - TDM_SNPRINTF(reply, len, "failed: no onoff value\n"); + set = strtol(argv[2], &end, 10); + if (!(set == 0 || set ==1)) { + _tdm_monitor_server_usage(argv[0], reply, len); return; } - arg = end + 1; - dpms_value = strtol(arg, &end, 10); + if (set == 1) { + arg = argv[3]; + output_idx = strtol(arg, &end, 10); + if (*end != ':') { + TDM_SNPRINTF(reply, len, "failed: no onoff value\n"); + return; + } - output = tdm_display_get_output(dpy, output_idx, &ret); - TDM_DBG_RETURN_IF_FAIL(ret == TDM_ERROR_NONE && output != NULL); + arg = end + 1; + dpms_value = strtol(arg, &end, 10); - ret = tdm_output_set_dpms(output, dpms_value); - TDM_DBG_RETURN_IF_FAIL(ret == TDM_ERROR_NONE); + output = tdm_display_get_output(dpy, output_idx, &ret); + TDM_DBG_RETURN_IF_FAIL(ret == TDM_ERROR_NONE && output != NULL); + + ret = tdm_output_set_dpms(output, dpms_value); + TDM_DBG_RETURN_IF_FAIL(ret == TDM_ERROR_NONE); + + TDM_SNPRINTF(reply, len, "done: DPMS set %s\n", tdm_dpms_str(dpms_value)); + } else { + output_idx = strtol(argv[3], &end, 10); + + output = tdm_display_get_output(dpy, output_idx, &ret); + TDM_DBG_RETURN_IF_FAIL(ret == TDM_ERROR_NONE && output != NULL); - TDM_SNPRINTF(reply, len, "done: DPMS %s\n", tdm_dpms_str(dpms_value)); + ret = tdm_output_get_dpms(output, &dpms); + TDM_DBG_RETURN_IF_FAIL(ret == TDM_ERROR_NONE); + + TDM_SNPRINTF(reply, len, "done: DPMS get %s\n", tdm_dpms_str(dpms)); + } } static void @@ -496,7 +515,9 @@ static struct { }, { "dpms", _tdm_monitor_server_dpms, - "set output dpms", ":", "0:3 or 0:0" + "set/get output dpms", + " :", + "0 0 (get) or 1 0:3 (set off) or 1 0:0 (set on)" }, { "ttrace", _tdm_monitor_server_ttrace,