-#include "e_info_shared_types.h"
+#include "e_info_server_intern.h"
#include "e_hwc_windows_intern.h"
#include "e_input_intern.h"
#include "e_devicemgr_intern.h"
#include "e_info_server_input_intern.h"
-#include "e_info_shared_types.h"
+#include "e_info_server_intern.h"
#include "e_input_log.h"
#include "e_comp_screen_intern.h"
#include "e_output_intern.h"
#include "e_intern.h"
#include "e_info_server.h"
+#include "e_info_shared_types.h"
#define WL_HIDE_DEPRECATED
#include <wayland-server.h>
int nullable;
};
+struct _E_Info_Hook
+{
+ const char *module_name;
+ E_Info_Hook_Cb func;
+ void *data;
+};
+
+struct _E_Info_Server_Hook
+{
+ EINA_INLIST;
+ E_Info_Server_Hook_Point hookpoint;
+ E_Info_Server_Hook_Cb func;
+ void *data;
+ unsigned char delete_me : 1;
+};
+
EINTERN int e_info_server_init(void);
EINTERN int e_info_server_shutdown(void);
--- /dev/null
+#ifndef _E_INFO_SHARED_TYPES_
+#define _E_INFO_SHARED_TYPES_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <e_types.h>
+
+#include <Eina.h>
+
+/* -------------------------------------------------------------------------- */
+/* COMPOSITE OBJECTS */
+/* -------------------------------------------------------------------------- */
+#define SIGNATURE_COMPOBJS_CLIENT "uissisiiiiiiiibbbbsssdbsssuiiiiiiiibbbbddddddddiiiiiiiiiiii"
+
+/* -------------------------------------------------------------------------- */
+/* SCREENSAVER */
+/* -------------------------------------------------------------------------- */
+#define USAGE_SCRSAVER \
+ "(info | enable | disable | timeout <sec>)\n" \
+ "\n" \
+ "Commands:\n" \
+ "\tinfo : Get the current information about the screen saver\n" \
+ "\tenable : Enable the screen saver function\n" \
+ "\tdisable : Disable the screen saver function\n" \
+ "\ttimeout : Set timeout period of the screen saver in seconds\n" \
+ "\n" \
+ "Example:\n" \
+ "\tenlightenment_info -scrsaver info\n" \
+ "\tenlightenment_info -scrsaver timeout 15.7\n" \
+ "\tenlightenment_info -scrsaver enable\n"
+
+typedef enum _E_Info_Cmd_Scrsaver
+{
+ E_INFO_CMD_SCRSAVER_UNKNOWN,
+ E_INFO_CMD_SCRSAVER_INFO,
+ E_INFO_CMD_SCRSAVER_ENABLE,
+ E_INFO_CMD_SCRSAVER_DISABLE,
+ E_INFO_CMD_SCRSAVER_TIMEOUT
+} E_Info_Cmd_Scrsaver;
+
+#define SIGNATURE_SCRSAVER_CLIENT "id" /* i: E_Info_Cmd_Scrsaver
+ * d: timeout value in seconds
+ */
+#define SIGNATURE_SCRSAVER_SERVER "s" /* s: result string from server */
+
+/* ------------------------------------------------------------------------- */
+/* OUTPUT_MODE */
+/* ------------------------------------------------------------------------- */
+#define USAGE_OUTPUT_MODE \
+ "enlightenment_info -output_mode\n"
+
+typedef enum _E_Info_Cmd_Output_Mode
+{
+ E_INFO_CMD_OUTPUT_MODE_UNKNOWN,
+ E_INFO_CMD_OUTPUT_MODE_GET,
+ E_INFO_CMD_OUTPUT_MODE_SET
+} E_Info_Cmd_Output_Mode;
+
+#define SIGNATURE_OUTPUT_MODE_CLIENT "iii" /* i: E_Info_Cmd_Output_Mode
+ * i: output index
+ * i: mode number
+ */
+#define SIGNATURE_OUTPUT_MODE_SERVER "uuuuuuuuuuuusiiiii" /* u: h value of outputmode
+ * u: hsync_start value of outputmode
+ * u: hsync_end value of outputmode
+ * u: htotal value of outputmode
+ * u: v value of outputmode
+ * u: vsync_start value of outputmode
+ * u: vsync_end value of outputmode
+ * u: vtotal value of outputmode
+ * u: refresh value of outputmode
+ * u: vscan value of outputmode
+ * u: clock value of outputmode
+ * u: flag value of outputmode
+ * s: name(resolution) of outputmode
+ * i: check flag for current set mode
+ * i: output id
+ * i: check flag for output connection
+ * i: check flag for gl support
+ * i: DPMS
+ */
+
+
+#define USAGE_FORCE_RENDER \
+ "(all | cls | canvas)\n" \
+ "Commands:\n" \
+ "\tall : updates client's surface and canvas \n" \
+ "\tcls : updates client's surface only\n" \
+ "\tcanvas : updates canvas adding damage in fullscreen size\n" \
+ "Example:\n" \
+ "\tenlightenment_info -frender all\n" \
+ "\tenlightenment_info -frender cls\n" \
+ "\tenlightenment_info -frender canvas\n"
+
+typedef enum
+{
+ E_INFO_CMD_FRENDER_NONE,
+ E_INFO_CMD_FRENDER_ALL,
+ E_INFO_CMD_FRENDER_CLS,
+ E_INFO_CMD_FRENDER_CANVAS,
+} E_Info_Cmd_Force_Render;
+
+/* -------------------------------------------------------------------------- */
+/* SUBSURFACE */
+/* -------------------------------------------------------------------------- */
+#define SIGNATURE_SUBSURFACE "uuuiiiiuuuuuuuus"
+#define WAYLAND_SERVER_RESOURCE_ID_MASK 0xff000000
+
+/* -------------------------------------------------------------------------- */
+/* REMOTE SURFACE */
+/* -------------------------------------------------------------------------- */
+#define USAGE_REMOTE_SURFACE \
+ "enlightenment_info -remote_surface (info | dump)\n" \
+ "Commands:\n" \
+ "\tinfo : print current remote surface info\n" \
+ "\tdump : on/off to dump provider's buffer by -dump_buffers [0:off, 1:on]\n"\
+ "Example:\n" \
+ "\tenlightenment_info -remote_surface info\n" \
+ "\tenlightenment_info -remote_surface dump 0\n" \
+ "\tenlightenment_info -remote_surface dump 1\n"
+
+/* -------------------------------------------------------------------------- */
+/* DUMP WINS */
+/* -------------------------------------------------------------------------- */
+#define SIGNATURE_DUMP_WINS "ss"
+#define USAGE_DUMPIMAGE \
+ "[Option..] [DIR]\n" \
+ "\ttopvwins : Dump buffer commit on top visible clients\n" \
+ "\tns : Dump native surfaces set on clients\n" \
+ "\thwc_wins : Dump buffer displayed by hwc_windows\n"
+
+/* -------------------------------------------------------------------------- */
+/* FORCE_VISIBLE */
+/* -------------------------------------------------------------------------- */
+#define SIGNATURE_FORCE_VISIBLE_CLIENT "ub"
+#define SIGNATURE_FORCE_VISIBLE_SERVER "s"
+
+/* -------------------------------------------------------------------------- */
+/* DESK */
+/* -------------------------------------------------------------------------- */
+#define USAGE_DESK \
+ "[Option..] [DIR]\n" \
+ "\tgeometry [ x][ y][ w][ h] : change desktop screen given geometry\n" \
+ "\tzoom [zx][zy][cx][cy] : scale desktop screen\n" \
+ "Example:\n" \
+ "\twinfo -desk geometry 0 0 480 720\n" \
+ "\twinfo -desk zoom 0.5 0.5 0 0\n"
+
+/* -------------------------------------------------------------------------- */
+/* TRACE */
+/* -------------------------------------------------------------------------- */
+#define USAGE_TRACE \
+ "[hwc | serial] [off: 0, on: 1]\n" \
+ "Example:\n" \
+ "\tenlightenment_info -trace hwc 1\n" \
+ "\tenlightenment_info -trace hwc 0\n" \
+ "\tenlightenment_info -trace serial 1\n" \
+ "\tenlightenment_info -trace serial 0\n" \
+ "\tenlightenment_info -trace prstt 1\n" \
+ "\tenlightenment_info -trace prstt 0\n" \
+ "\tenlightenment_info -trace exsync 1\n" \
+ "\tenlightenment_info -trace exsync 0\n" \
+ "\tenlightenment_info -trace damage 1\n" \
+ "\tenlightenment_info -trace damage 0\n" \
+ "\tenlightenment_info -trace blur 1\n" \
+ "\tenlightenment_info -trace blur 2\n" \
+ "\tenlightenment_info -trace blur 0\n"
+
+/* -------------------------------------------------------------------------- */
+/* HWC WINS */
+/* -------------------------------------------------------------------------- */
+#define USAGE_HWC_WINS \
+ "-hwc_wins (no option | all | cl | dv | cs | dv | no)\n" \
+ "Commands:\n" \
+ "\tno option : print visible hwc window info\n" \
+ "\tall : print all hwc window info\n" \
+ "\tcl : print CLIENT accepted state hwc window info\n" \
+ "\tdv : print DEVICE accepted state hwc window info\n" \
+ "\tcs : print CURSOR accepted state hwc window info\n" \
+ "\tvd : print VIDEO accepted state hwc window info\n" \
+ "\tno : print NONE accepted state hwc window info\n" \
+ "\tqueue : print hwc window queue info\n" \
+ "\tcommit : print hwc window commit info\n" \
+ "Example:\n" \
+ "\twinfo -hwc_wins\n" \
+ "\twinfo -hwc_wins all\n" \
+ "\twinfo -hwc_wins cl\n" \
+ "\twinfo -hwc_wins dv\n" \
+ "\twinfo -hwc_wins cs\n" \
+ "\twinfo -hwc_wins vd\n" \
+ "\twinfo -hwc_wins no\n " \
+ "\twinfo -hwc_wins queue\n " \
+ "\twinfo -hwc_wins commit\n "
+
+/* -------------------------------------------------------------------------- */
+/* FPS */
+/* -------------------------------------------------------------------------- */
+typedef enum
+{
+ E_INFO_FPS_TYPE_OUTPUT,
+ E_INFO_FPS_TYPE_LAYER,
+ E_INFO_FPS_TYPE_HWC_WIN,
+ E_INFO_FPS_TYPE_HWC_COMP,
+ E_INFO_FPS_TYPE_CLIENT_WIN,
+} E_Info_Fps_Type;
+
+/* -------------------------------------------------------------------------- */
+/* SCREEN INFO */
+/* -------------------------------------------------------------------------- */
+#define USAGE_SCREEN_INFO \
+ "-screen_info\n" \
+ "Example:\n" \
+ "\twinfo -screen_info\n"
+
+/* -------------------------------------------------------------------------- */
+/* FILTER */
+/* -------------------------------------------------------------------------- */
+#define USAGE_FILTER \
+ "-filter {window id} ( blur | grayscale | inverse_color | edge_detection ) (on | off) {filter parameters...}\n" \
+ "Example:\n" \
+ "\twinfo -filter blur on\n" \
+ "\twinfo -filter blur off\n" \
+ "\twinfo -filter grayscale on\n" \
+ "\twinfo -filter grayscale off\n" \
+ "\twinfo -filter inverse_color on\n" \
+ "\twinfo -filter inverse_color off\n" \
+ "\twinfo -filter edge_detection on\n" \
+ "\twinfo -filter edge_detection on 1.0 1\n" \
+ "\twinfo -filter edge_detection off\n\n" \
+ "\twinfo -filter 0xabcabcde blur on\n" \
+ "\twinfo -filter 0xbcaa11aa grayscale off\n" \
+
+/* -------------------------------------------------------------------------- */
+/* BLUR_OPTION */
+/* -------------------------------------------------------------------------- */
+#define USAGE_BLUR_OPTION \
+ "-blur_option {dim | stroke} {on | off} {detail options...}\n" \
+ "\tblur options: -radius {radius}\n" \
+ "\tdim options: -R {red}\n" \
+ "\t : -G {green}\n" \
+ "\t : -B {blue}\n" \
+ "\t : -A {alpha}\n" \
+ "\tstroke options: -R {red}\n" \
+ "\t : -G {green}\n" \
+ "\t : -B {blue}\n" \
+ "\t : -A {alpha}\n" \
+ "\t : -thickness {thickness}\n" \
+ "\tshadow options: -R {red}\n" \
+ "\t : -G {green}\n" \
+ "\t : -B {blue}\n" \
+ "\t : -A {alpha}\n" \
+ "\t : -shadow_blur_radius {shadow_blur_radius}\n" \
+ "\t : -offsetX {offsetX}\n" \
+ "\t : -offsetY {offsetY}\n" \
+ "Example:\n" \
+ "\twinfo -blur_option dim on -R 15\n" \
+ "\twinfo -blur_option dim on -G 15\n" \
+ "\twinfo -blur_option dim on -B 15\n" \
+ "\twinfo -blur_option dim on -A 153\n" \
+ "\twinfo -blur_option dim on -R 15 -G 15 -B 15 -A 153\n" \
+ "\twinfo -blur_option dim off\n" \
+ "\twinfo -blur_option stroke on -R 60\n" \
+ "\twinfo -blur_option stroke on -thickness 4\n" \
+ "\twinfo -blur_option stroke on -R 15 -G 15 -B 15 -A 153 -thickness 4\n" \
+ "\twinfo -blur_option stroke off\n" \
+ "\twinfo -blur_option shadow on -shadow_blur_radius 20\n" \
+ "\twinfo -blur_option shadow on -offsetX -5 -offsetY 10\n" \
+ "\twinfo -blur_option shadow on -R 15 -G 15 -B 15 -A 153\n" \
+ "\twinfo -blur_option shadow off\n" \
+
+/* -------------------------------------------------------------------------- */
+/* DESK GROUP */
+/* -------------------------------------------------------------------------- */
+#define USAGE_DESK_AREA \
+ "[Option..] [DIR]\n" \
+ "\tinfo : print desk group information\n" \
+ "\tenable [1:enable, 0:disable] : enable/disable desk_area\n" \
+ "\tmake_sub1 [x][y][w][h][layer 0:bg, 1:below, 2:normal, 3:above, 4~6:noti] : make sub1 desk_area\n" \
+ "\tmake_sub2 [x][y][w][h][layer 0:bg, 1:below, 2:normal, 3:above, 4~6:noti] : make sub2 desk_area\n" \
+ "\tremove_sub1 : remove sub1 desk_area\n" \
+ "\tremove_sub2 : remove sub2 desk_area\n" \
+ "\traise_base [1:raise, 0:lower] : raise/lower base desk_area\n" \
+ "\traise_sub1 [1:raise, 0:lower] : raise/lower sub1 desk_area\n" \
+ "\traise_sub2 [1:raise, 0:lower] : raise/lower sub2 desk_area\n" \
+ "\tcheck_stack : check stack\n" \
+ "Example:\n" \
+ "\twinfo -desk_area info\n" \
+ "\twinfo -desk_area enable 1\n" \
+ "\twinfo -desk_area make_sub1 240 480 480 800 2\n" \
+ "\twinfo -desk_area make_sub2 310 80 320 480 2\n" \
+ "\twinfo -desk_area remove_sub1\n" \
+ "\twinfo -desk_area remove_sub2\n" \
+ "\twinfo -desk_area raise_base 1\n" \
+ "\twinfo -desk_area raise_sub1 1\n" \
+ "\twinfo -desk_area raise_sub2 0\n" \
+ "\twinfo -desk_area check_stack\n"
+
+/* -------------------------------------------------------------------------- */
+/* BASIC_OPERATION_GENERATE */
+/* -------------------------------------------------------------------------- */
+#define USAGE_BASIC_OPERATION_GENERATE \
+ "-basic_op_gen {window id} ( lower | activate | iconify | uniconify )\n" \
+ "Example:\n" \
+ "\twinfo -basic_op_gen basic_op_gen lower\n"
+
+/* -------------------------------------------------------------------------- */
+/* PROPERTY_SET */
+/* -------------------------------------------------------------------------- */
+#define USAGE_PROPERTY_SET \
+ "-prop_set {window id} ( pin | modal ) ( 1 | 0) \n" \
+ "Example:\n" \
+ "\twinfo -prop_set 0x12345678 pin 1\n" \
+ "\twinfo -prop_set 0x12345678 modal 1\n" \
+ "\twinfo -prop_set 0x12345678 skip_zoom 1\n"
+
+/* -------------------------------------------------------------------------- */
+/* QUICKPANEL CONTROL */
+/* -------------------------------------------------------------------------- */
+#define USAGE_QUICKPANEL_CONTROL \
+ "-quickpanel (0:hide | 1:show | 2:lock | 3:unlock) {window id}\n" \
+ "\twindow id : This is an optional value. If you want to control specific\n" \
+ "\t quickpanel service, then use this parameter.\n," \
+ "Example:\n" \
+ "\twinfo -quickpanel 0 : hide default quickpanel service\n" \
+ "\twinfo -quickpanel 1 : show default quickpanel service\n" \
+ "\twinfo -quickpanel 2 : set scroll_lock for quickpanel service\n" \
+ "\twinfo -quickpanel 3 : unset scoll_lock for quickpanel service\n" \
+ "\twinfo -quickpanel 1 0x0a710a07 : show the specific quickpanel service\n"
+
+#define USAGE_LOG_CONTROL \
+ "{log type} (1 | 0) \n" \
+ "\tlog type : log type to enable/disable\n" \
+ "\t input_log_enable\n" \
+ "\t key_input_ttrace_enable\n" \
+ "Example:\n" \
+ "\twinfo -log input_log_enable 1\n" \
+ "\twinfo -log key_input_ttrace_enable 1\n"
+
+/* -------------------------------------------------------------------------- */
+/* VIDEO SHELL */
+/* -------------------------------------------------------------------------- */
+#define VIDEO_SHELL_BORDER_METHOD_NAME "video_shell_border"
+#define VIDEO_SHELL_INFO_METHOD_NAME "video_shell_info"
+#define VIDEO_SHELL_TRANSFORM_METHOD_NAME "video_shell_transform"
+#define USAGE_VIDEO_SHELL \
+ "[GLOBAL-OPTS] SUBCOMMAND [OPTS]\n\n" \
+ "Global Options:\n" \
+ " --help\t Show this help message and exit\n" \
+ "\n" \
+ "Subcommands:\n" \
+ " border\tManipulate border of video viewport\n" \
+ " info\t\tPrint video shell information\n" \
+ " transform\tTransform video viewport\n"
+#define USAGE_VIDEO_SHELL_BORDER \
+ "winfo -video_shell border [OPTS]\n\n" \
+ " --help\tShow this help message and exit\n" \
+ " --disable\tDisable border of video viewport. (Default: Enable)\n"
+#define USAGE_VIDEO_SHELL_INFO \
+ "winfo -video_shell info [OPTS]\n\n" \
+ " --help\tShow this help message and exit\n" \
+ " --file\tLog to file. Default to stdout.\n"
+#define USAGE_VIDEO_SHELL_TRANSFORM \
+ "winfo -video_shell transform [HANDLE] [0|90|180|270] [OPTIONS]\n\n" \
+ " --help\tShow this help message and exit\n" \
+ " --geometry\tGeometry to be transformed. X and Y values are translated by surface-local coordination. Format: [X,Y,WIDTH,HEIGHT]\n" \
+ " --ratio\tSet aspect ratio. If both WIDTH and HEIGHT are set to -1, aspect ratio will be disabled. Format: [WIDTH,HEIGHT]\n" \
+ "\n" \
+ " NOTE: The HANDLE is a viewport handle you can find with `winfo -video_shell info`\n"
+
+typedef enum
+{
+ E_INFO_VIDEO_SHELL_TRANSFORM_NORMAL,
+ E_INFO_VIDEO_SHELL_TRANSFORM_90,
+ E_INFO_VIDEO_SHELL_TRANSFORM_180,
+ E_INFO_VIDEO_SHELL_TRANSFORM_270,
+ E_INFO_VIDEO_SHELL_TRANSFORM_UNKNOWN,
+} E_Info_Video_Shell_Transform;
+
+#define USAGE_INPUT_ELAPSED_TIME \
+ "-input_elapsed_time ( key | mouse ) {count > 0}\n" \
+ "Example:\n" \
+ "\twinfo -input_elapsed_time key 100\n" \
+ "\twinfo -input_elapsed_time mouse 200\n"
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* end of _E_INFO_SHARED_TYPES_ */
#endif
#include <e_types.h>
-#include <e_info_shared_types.h>
+
+#define E_INFO_INPUT_RESULT_NONE "None"
typedef struct E_Event_Info_Rotation_Message E_Event_Info_Rotation_Message;
typedef void (*E_Info_Hook_Cb)(void *data, const char *log_path);
typedef void (*E_Info_Server_Hook_Cb)(void *data);
+typedef enum
+{
+ E_INFO_ROTATION_MESSAGE_SET,
+ E_INFO_ROTATION_MESSAGE_ENABLE,
+ E_INFO_ROTATION_MESSAGE_DISABLE
+} E_Info_Rotation_Message;
+
+/* -------------------------------------------------------------------------- */
+/* INPUT GENERATION */
+/* -------------------------------------------------------------------------- */
+
+typedef enum
+{
+ E_INFO_EVENT_STATE_RELEASE = 0,
+ E_INFO_EVENT_STATE_PRESS,
+ E_INFO_EVENT_STATE_MOTION,
+ E_INFO_EVENT_STATE_ALL
+} E_Info_Event_State;
+
+typedef enum
+{
+ E_INFO_BUTTON_LEFT = 0,
+ E_INFO_BUTTON_RIGHT,
+ E_INFO_BUTTON_MIDDLE,
+ E_INFO_BUTTON_WHEEL,
+ E_INFO_BUTTON_HWHEEL
+} E_Info_Button;
+
typedef enum _E_Info_Server_Hook_Point
{
E_INFO_SERVER_HOOK_BUFFER_DUMP_BEGIN,
int rotation;
};
-struct _E_Info_Hook
-{
- const char *module_name;
- E_Info_Hook_Cb func;
- void *data;
-};
-
-struct _E_Info_Server_Hook
-{
- EINA_INLIST;
- E_Info_Server_Hook_Point hookpoint;
- E_Info_Server_Hook_Cb func;
- void *data;
- unsigned char delete_me : 1;
-};
-
E_API extern int E_EVENT_INFO_ROTATION_MESSAGE;
E_API void e_info_server_hook_set(const char *module_name, E_Info_Hook_Cb func, void *data);
+++ /dev/null
-#ifndef _E_INFO_SHARED_TYPES_
-#define _E_INFO_SHARED_TYPES_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <e_types.h>
-
-#include <Eina.h>
-
-typedef enum
-{
- E_INFO_ROTATION_MESSAGE_SET,
- E_INFO_ROTATION_MESSAGE_ENABLE,
- E_INFO_ROTATION_MESSAGE_DISABLE
-} E_Info_Rotation_Message;
-
-/* -------------------------------------------------------------------------- */
-/* COMPOSITE OBJECTS */
-/* -------------------------------------------------------------------------- */
-#define SIGNATURE_COMPOBJS_CLIENT "uissisiiiiiiiibbbbsssdbsssuiiiiiiiibbbbddddddddiiiiiiiiiiii"
-
-/* -------------------------------------------------------------------------- */
-/* SCREENSAVER */
-/* -------------------------------------------------------------------------- */
-#define USAGE_SCRSAVER \
- "(info | enable | disable | timeout <sec>)\n" \
- "\n" \
- "Commands:\n" \
- "\tinfo : Get the current information about the screen saver\n" \
- "\tenable : Enable the screen saver function\n" \
- "\tdisable : Disable the screen saver function\n" \
- "\ttimeout : Set timeout period of the screen saver in seconds\n" \
- "\n" \
- "Example:\n" \
- "\tenlightenment_info -scrsaver info\n" \
- "\tenlightenment_info -scrsaver timeout 15.7\n" \
- "\tenlightenment_info -scrsaver enable\n"
-
-typedef enum _E_Info_Cmd_Scrsaver
-{
- E_INFO_CMD_SCRSAVER_UNKNOWN,
- E_INFO_CMD_SCRSAVER_INFO,
- E_INFO_CMD_SCRSAVER_ENABLE,
- E_INFO_CMD_SCRSAVER_DISABLE,
- E_INFO_CMD_SCRSAVER_TIMEOUT
-} E_Info_Cmd_Scrsaver;
-
-#define SIGNATURE_SCRSAVER_CLIENT "id" /* i: E_Info_Cmd_Scrsaver
- * d: timeout value in seconds
- */
-#define SIGNATURE_SCRSAVER_SERVER "s" /* s: result string from server */
-
-/* ------------------------------------------------------------------------- */
-/* OUTPUT_MODE */
-/* ------------------------------------------------------------------------- */
-#define USAGE_OUTPUT_MODE \
- "enlightenment_info -output_mode\n"
-
-typedef enum _E_Info_Cmd_Output_Mode
-{
- E_INFO_CMD_OUTPUT_MODE_UNKNOWN,
- E_INFO_CMD_OUTPUT_MODE_GET,
- E_INFO_CMD_OUTPUT_MODE_SET
-} E_Info_Cmd_Output_Mode;
-
-#define SIGNATURE_OUTPUT_MODE_CLIENT "iii" /* i: E_Info_Cmd_Output_Mode
- * i: output index
- * i: mode number
- */
-#define SIGNATURE_OUTPUT_MODE_SERVER "uuuuuuuuuuuusiiiii" /* u: h value of outputmode
- * u: hsync_start value of outputmode
- * u: hsync_end value of outputmode
- * u: htotal value of outputmode
- * u: v value of outputmode
- * u: vsync_start value of outputmode
- * u: vsync_end value of outputmode
- * u: vtotal value of outputmode
- * u: refresh value of outputmode
- * u: vscan value of outputmode
- * u: clock value of outputmode
- * u: flag value of outputmode
- * s: name(resolution) of outputmode
- * i: check flag for current set mode
- * i: output id
- * i: check flag for output connection
- * i: check flag for gl support
- * i: DPMS
- */
-
-
-#define USAGE_FORCE_RENDER \
- "(all | cls | canvas)\n" \
- "Commands:\n" \
- "\tall : updates client's surface and canvas \n" \
- "\tcls : updates client's surface only\n" \
- "\tcanvas : updates canvas adding damage in fullscreen size\n" \
- "Example:\n" \
- "\tenlightenment_info -frender all\n" \
- "\tenlightenment_info -frender cls\n" \
- "\tenlightenment_info -frender canvas\n"
-
-typedef enum
-{
- E_INFO_CMD_FRENDER_NONE,
- E_INFO_CMD_FRENDER_ALL,
- E_INFO_CMD_FRENDER_CLS,
- E_INFO_CMD_FRENDER_CANVAS,
-} E_Info_Cmd_Force_Render;
-
-/* -------------------------------------------------------------------------- */
-/* SUBSURFACE */
-/* -------------------------------------------------------------------------- */
-#define SIGNATURE_SUBSURFACE "uuuiiiiuuuuuuuus"
-#define WAYLAND_SERVER_RESOURCE_ID_MASK 0xff000000
-
-/* -------------------------------------------------------------------------- */
-/* REMOTE SURFACE */
-/* -------------------------------------------------------------------------- */
-#define USAGE_REMOTE_SURFACE \
- "enlightenment_info -remote_surface (info | dump)\n" \
- "Commands:\n" \
- "\tinfo : print current remote surface info\n" \
- "\tdump : on/off to dump provider's buffer by -dump_buffers [0:off, 1:on]\n"\
- "Example:\n" \
- "\tenlightenment_info -remote_surface info\n" \
- "\tenlightenment_info -remote_surface dump 0\n" \
- "\tenlightenment_info -remote_surface dump 1\n"
-
-/* -------------------------------------------------------------------------- */
-/* DUMP WINS */
-/* -------------------------------------------------------------------------- */
-#define SIGNATURE_DUMP_WINS "ss"
-#define USAGE_DUMPIMAGE \
- "[Option..] [DIR]\n" \
- "\ttopvwins : Dump buffer commit on top visible clients\n" \
- "\tns : Dump native surfaces set on clients\n" \
- "\thwc_wins : Dump buffer displayed by hwc_windows\n"
-
-/* -------------------------------------------------------------------------- */
-/* FORCE_VISIBLE */
-/* -------------------------------------------------------------------------- */
-#define SIGNATURE_FORCE_VISIBLE_CLIENT "ub"
-#define SIGNATURE_FORCE_VISIBLE_SERVER "s"
-
-/* -------------------------------------------------------------------------- */
-/* DESK */
-/* -------------------------------------------------------------------------- */
-#define USAGE_DESK \
- "[Option..] [DIR]\n" \
- "\tgeometry [ x][ y][ w][ h] : change desktop screen given geometry\n" \
- "\tzoom [zx][zy][cx][cy] : scale desktop screen\n" \
- "Example:\n" \
- "\twinfo -desk geometry 0 0 480 720\n" \
- "\twinfo -desk zoom 0.5 0.5 0 0\n"
-
-/* -------------------------------------------------------------------------- */
-/* TRACE */
-/* -------------------------------------------------------------------------- */
-#define USAGE_TRACE \
- "[hwc | serial] [off: 0, on: 1]\n" \
- "Example:\n" \
- "\tenlightenment_info -trace hwc 1\n" \
- "\tenlightenment_info -trace hwc 0\n" \
- "\tenlightenment_info -trace serial 1\n" \
- "\tenlightenment_info -trace serial 0\n" \
- "\tenlightenment_info -trace prstt 1\n" \
- "\tenlightenment_info -trace prstt 0\n" \
- "\tenlightenment_info -trace exsync 1\n" \
- "\tenlightenment_info -trace exsync 0\n" \
- "\tenlightenment_info -trace damage 1\n" \
- "\tenlightenment_info -trace damage 0\n" \
- "\tenlightenment_info -trace blur 1\n" \
- "\tenlightenment_info -trace blur 2\n" \
- "\tenlightenment_info -trace blur 0\n"
-
-/* -------------------------------------------------------------------------- */
-/* HWC WINS */
-/* -------------------------------------------------------------------------- */
-#define USAGE_HWC_WINS \
- "-hwc_wins (no option | all | cl | dv | cs | dv | no)\n" \
- "Commands:\n" \
- "\tno option : print visible hwc window info\n" \
- "\tall : print all hwc window info\n" \
- "\tcl : print CLIENT accepted state hwc window info\n" \
- "\tdv : print DEVICE accepted state hwc window info\n" \
- "\tcs : print CURSOR accepted state hwc window info\n" \
- "\tvd : print VIDEO accepted state hwc window info\n" \
- "\tno : print NONE accepted state hwc window info\n" \
- "\tqueue : print hwc window queue info\n" \
- "\tcommit : print hwc window commit info\n" \
- "Example:\n" \
- "\twinfo -hwc_wins\n" \
- "\twinfo -hwc_wins all\n" \
- "\twinfo -hwc_wins cl\n" \
- "\twinfo -hwc_wins dv\n" \
- "\twinfo -hwc_wins cs\n" \
- "\twinfo -hwc_wins vd\n" \
- "\twinfo -hwc_wins no\n " \
- "\twinfo -hwc_wins queue\n " \
- "\twinfo -hwc_wins commit\n "
-
-/* -------------------------------------------------------------------------- */
-/* FPS */
-/* -------------------------------------------------------------------------- */
-typedef enum
-{
- E_INFO_FPS_TYPE_OUTPUT,
- E_INFO_FPS_TYPE_LAYER,
- E_INFO_FPS_TYPE_HWC_WIN,
- E_INFO_FPS_TYPE_HWC_COMP,
- E_INFO_FPS_TYPE_CLIENT_WIN,
-} E_Info_Fps_Type;
-
-/* -------------------------------------------------------------------------- */
-/* SCREEN INFO */
-/* -------------------------------------------------------------------------- */
-#define USAGE_SCREEN_INFO \
- "-screen_info\n" \
- "Example:\n" \
- "\twinfo -screen_info\n"
-
-/* -------------------------------------------------------------------------- */
-/* INPUT GENERATION */
-/* -------------------------------------------------------------------------- */
-
-typedef enum
-{
- E_INFO_EVENT_STATE_RELEASE = 0,
- E_INFO_EVENT_STATE_PRESS,
- E_INFO_EVENT_STATE_MOTION,
- E_INFO_EVENT_STATE_ALL
-} E_Info_Event_State;
-
-typedef enum
-{
- E_INFO_BUTTON_LEFT = 0,
- E_INFO_BUTTON_RIGHT,
- E_INFO_BUTTON_MIDDLE,
- E_INFO_BUTTON_WHEEL,
- E_INFO_BUTTON_HWHEEL
-} E_Info_Button;
-
-#define E_INFO_INPUT_RESULT_NONE "None"
-
-/* -------------------------------------------------------------------------- */
-/* FILTER */
-/* -------------------------------------------------------------------------- */
-#define USAGE_FILTER \
- "-filter {window id} ( blur | grayscale | inverse_color | edge_detection ) (on | off) {filter parameters...}\n" \
- "Example:\n" \
- "\twinfo -filter blur on\n" \
- "\twinfo -filter blur off\n" \
- "\twinfo -filter grayscale on\n" \
- "\twinfo -filter grayscale off\n" \
- "\twinfo -filter inverse_color on\n" \
- "\twinfo -filter inverse_color off\n" \
- "\twinfo -filter edge_detection on\n" \
- "\twinfo -filter edge_detection on 1.0 1\n" \
- "\twinfo -filter edge_detection off\n\n" \
- "\twinfo -filter 0xabcabcde blur on\n" \
- "\twinfo -filter 0xbcaa11aa grayscale off\n" \
-
-/* -------------------------------------------------------------------------- */
-/* BLUR_OPTION */
-/* -------------------------------------------------------------------------- */
-#define USAGE_BLUR_OPTION \
- "-blur_option {dim | stroke} {on | off} {detail options...}\n" \
- "\tblur options: -radius {radius}\n" \
- "\tdim options: -R {red}\n" \
- "\t : -G {green}\n" \
- "\t : -B {blue}\n" \
- "\t : -A {alpha}\n" \
- "\tstroke options: -R {red}\n" \
- "\t : -G {green}\n" \
- "\t : -B {blue}\n" \
- "\t : -A {alpha}\n" \
- "\t : -thickness {thickness}\n" \
- "\tshadow options: -R {red}\n" \
- "\t : -G {green}\n" \
- "\t : -B {blue}\n" \
- "\t : -A {alpha}\n" \
- "\t : -shadow_blur_radius {shadow_blur_radius}\n" \
- "\t : -offsetX {offsetX}\n" \
- "\t : -offsetY {offsetY}\n" \
- "Example:\n" \
- "\twinfo -blur_option dim on -R 15\n" \
- "\twinfo -blur_option dim on -G 15\n" \
- "\twinfo -blur_option dim on -B 15\n" \
- "\twinfo -blur_option dim on -A 153\n" \
- "\twinfo -blur_option dim on -R 15 -G 15 -B 15 -A 153\n" \
- "\twinfo -blur_option dim off\n" \
- "\twinfo -blur_option stroke on -R 60\n" \
- "\twinfo -blur_option stroke on -thickness 4\n" \
- "\twinfo -blur_option stroke on -R 15 -G 15 -B 15 -A 153 -thickness 4\n" \
- "\twinfo -blur_option stroke off\n" \
- "\twinfo -blur_option shadow on -shadow_blur_radius 20\n" \
- "\twinfo -blur_option shadow on -offsetX -5 -offsetY 10\n" \
- "\twinfo -blur_option shadow on -R 15 -G 15 -B 15 -A 153\n" \
- "\twinfo -blur_option shadow off\n" \
-
-/* -------------------------------------------------------------------------- */
-/* DESK GROUP */
-/* -------------------------------------------------------------------------- */
-#define USAGE_DESK_AREA \
- "[Option..] [DIR]\n" \
- "\tinfo : print desk group information\n" \
- "\tenable [1:enable, 0:disable] : enable/disable desk_area\n" \
- "\tmake_sub1 [x][y][w][h][layer 0:bg, 1:below, 2:normal, 3:above, 4~6:noti] : make sub1 desk_area\n" \
- "\tmake_sub2 [x][y][w][h][layer 0:bg, 1:below, 2:normal, 3:above, 4~6:noti] : make sub2 desk_area\n" \
- "\tremove_sub1 : remove sub1 desk_area\n" \
- "\tremove_sub2 : remove sub2 desk_area\n" \
- "\traise_base [1:raise, 0:lower] : raise/lower base desk_area\n" \
- "\traise_sub1 [1:raise, 0:lower] : raise/lower sub1 desk_area\n" \
- "\traise_sub2 [1:raise, 0:lower] : raise/lower sub2 desk_area\n" \
- "\tcheck_stack : check stack\n" \
- "Example:\n" \
- "\twinfo -desk_area info\n" \
- "\twinfo -desk_area enable 1\n" \
- "\twinfo -desk_area make_sub1 240 480 480 800 2\n" \
- "\twinfo -desk_area make_sub2 310 80 320 480 2\n" \
- "\twinfo -desk_area remove_sub1\n" \
- "\twinfo -desk_area remove_sub2\n" \
- "\twinfo -desk_area raise_base 1\n" \
- "\twinfo -desk_area raise_sub1 1\n" \
- "\twinfo -desk_area raise_sub2 0\n" \
- "\twinfo -desk_area check_stack\n"
-
-/* -------------------------------------------------------------------------- */
-/* BASIC_OPERATION_GENERATE */
-/* -------------------------------------------------------------------------- */
-#define USAGE_BASIC_OPERATION_GENERATE \
- "-basic_op_gen {window id} ( lower | activate | iconify | uniconify )\n" \
- "Example:\n" \
- "\twinfo -basic_op_gen basic_op_gen lower\n"
-
-/* -------------------------------------------------------------------------- */
-/* PROPERTY_SET */
-/* -------------------------------------------------------------------------- */
-#define USAGE_PROPERTY_SET \
- "-prop_set {window id} ( pin | modal ) ( 1 | 0) \n" \
- "Example:\n" \
- "\twinfo -prop_set 0x12345678 pin 1\n" \
- "\twinfo -prop_set 0x12345678 modal 1\n" \
- "\twinfo -prop_set 0x12345678 skip_zoom 1\n"
-
-/* -------------------------------------------------------------------------- */
-/* QUICKPANEL CONTROL */
-/* -------------------------------------------------------------------------- */
-#define USAGE_QUICKPANEL_CONTROL \
- "-quickpanel (0:hide | 1:show | 2:lock | 3:unlock) {window id}\n" \
- "\twindow id : This is an optional value. If you want to control specific\n" \
- "\t quickpanel service, then use this parameter.\n," \
- "Example:\n" \
- "\twinfo -quickpanel 0 : hide default quickpanel service\n" \
- "\twinfo -quickpanel 1 : show default quickpanel service\n" \
- "\twinfo -quickpanel 2 : set scroll_lock for quickpanel service\n" \
- "\twinfo -quickpanel 3 : unset scoll_lock for quickpanel service\n" \
- "\twinfo -quickpanel 1 0x0a710a07 : show the specific quickpanel service\n"
-
-#define USAGE_LOG_CONTROL \
- "{log type} (1 | 0) \n" \
- "\tlog type : log type to enable/disable\n" \
- "\t input_log_enable\n" \
- "\t key_input_ttrace_enable\n" \
- "Example:\n" \
- "\twinfo -log input_log_enable 1\n" \
- "\twinfo -log key_input_ttrace_enable 1\n"
-
-/* -------------------------------------------------------------------------- */
-/* VIDEO SHELL */
-/* -------------------------------------------------------------------------- */
-#define VIDEO_SHELL_BORDER_METHOD_NAME "video_shell_border"
-#define VIDEO_SHELL_INFO_METHOD_NAME "video_shell_info"
-#define VIDEO_SHELL_TRANSFORM_METHOD_NAME "video_shell_transform"
-#define USAGE_VIDEO_SHELL \
- "[GLOBAL-OPTS] SUBCOMMAND [OPTS]\n\n" \
- "Global Options:\n" \
- " --help\t Show this help message and exit\n" \
- "\n" \
- "Subcommands:\n" \
- " border\tManipulate border of video viewport\n" \
- " info\t\tPrint video shell information\n" \
- " transform\tTransform video viewport\n"
-#define USAGE_VIDEO_SHELL_BORDER \
- "winfo -video_shell border [OPTS]\n\n" \
- " --help\tShow this help message and exit\n" \
- " --disable\tDisable border of video viewport. (Default: Enable)\n"
-#define USAGE_VIDEO_SHELL_INFO \
- "winfo -video_shell info [OPTS]\n\n" \
- " --help\tShow this help message and exit\n" \
- " --file\tLog to file. Default to stdout.\n"
-#define USAGE_VIDEO_SHELL_TRANSFORM \
- "winfo -video_shell transform [HANDLE] [0|90|180|270] [OPTIONS]\n\n" \
- " --help\tShow this help message and exit\n" \
- " --geometry\tGeometry to be transformed. X and Y values are translated by surface-local coordination. Format: [X,Y,WIDTH,HEIGHT]\n" \
- " --ratio\tSet aspect ratio. If both WIDTH and HEIGHT are set to -1, aspect ratio will be disabled. Format: [WIDTH,HEIGHT]\n" \
- "\n" \
- " NOTE: The HANDLE is a viewport handle you can find with `winfo -video_shell info`\n"
-
-typedef enum
-{
- E_INFO_VIDEO_SHELL_TRANSFORM_NORMAL,
- E_INFO_VIDEO_SHELL_TRANSFORM_90,
- E_INFO_VIDEO_SHELL_TRANSFORM_180,
- E_INFO_VIDEO_SHELL_TRANSFORM_270,
- E_INFO_VIDEO_SHELL_TRANSFORM_UNKNOWN,
-} E_Info_Video_Shell_Transform;
-
-#define USAGE_INPUT_ELAPSED_TIME \
- "-input_elapsed_time ( key | mouse ) {count > 0}\n" \
- "Example:\n" \
- "\twinfo -input_elapsed_time key 100\n" \
- "\twinfo -input_elapsed_time mouse 200\n"
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* end of _E_INFO_SHARED_TYPES_ */
'e.h',
'e_hints.h',
'e_includes.h',
- 'e_info_shared_types.h',
'e_info_server.h',
'e_layout.h',
'e_log.h',