aboutsummaryrefslogtreecommitdiff
path: root/swaymsg/main.c
AgeCommit message (Collapse)Author
2019-02-11ipc: handle unnamed xkb_active_layout_nameBrian Ashworth
If the active xkb_layout does not have a name, use `NULL` instead of `json_object_new_string(NULL)`. This also makes it so swaymsg will pretty print this as `(unnamed)`.
2019-01-23Make json-c include respect pkg-config --cflagsJan Beich
json-c.pc contains `Cflags: -I${includedir}/json-c`, so `<json-c/json.h>` won't be found unless the parent directory is searched by default.
2019-01-21Replace wlr_log with sway_logM Stoeckl
This commit mostly duplicates the wlr_log functions, although with a sway_* prefix. (This is very similar to PR #2009.) However, the logging function no longer needs to be replaceable, so sway_log_init's second argument is used to set the exit callback for sway_abort. wlr_log_init is still invoked in sway/main.c This commit makes it easier to remove the wlroots dependency for the helper programs swaymsg, swaybg, swaybar, and swaynag.
2019-01-09get_inputs: add libinput send events modeBrian Ashworth
Add `libinput_send_events` to the IPC output for `get_inputs` to allow scripting of mode changes.
2019-01-01Remove readline.cIan Fan
All occurrences of read_line have been replaced by getline. peek_line has been absorbed into detect_brace.
2018-11-28swaymsg: parse success of single objectBrian Ashworth
Allows swaymsg to parse the success attribute of a single object response. This is needed for the subscribe event.
2018-11-28Implement support for swaymsg -t SUBSCRIBE [-m]Brian Ashworth
In `i3 4.16`, `i3-msg` can be used with the message type `subscribe` and has the ability to monitor for responses until killed. This adds support for both to swaymsg. If the JSON array of event types is malformed or contains an invalid event, sway will send a response with `success` set to `false`. If swaymsg sees this, it will not display the failure and exit. If the `subscribe` event is successful, swaymsg will wait for the first response and display that instead of the success message. If `-m/--monitor` is given, swaymsg will continue monitor for responses until killed or a malformed response is received. For the `subscribe` event, the responses will always be printed as JSON. If `-r/--raw` is given, the JSON will not be pretty printed, which may be preferred when monitoring due to there being multiple responses. Example: `swaymsg -t SUBSCRIBE -m "['window']"`
2018-11-25Replace _XOPEN_SOURCE with _POSIX_C_SOURCEemersion
And make sure we don't define both in the same source file.
2018-11-12IPC: Send keyboard layout info in IPC_GET_INPUTSHarish Krupo
Signed-off-by: Harish Krupo <harishkrupo@gmail.com>
2018-11-03ipc: move refresh from output to output->current_modeCole Mickens
2018-11-03swaymsg: get_outputs: use output->current_mode for current mode displayCole Mickens
2018-10-29swaymsg: fix get_outputs status codeemersion
2018-10-10Fix program name in version stringsRyan Dwyer
When running swaymsg -v, the version returned is actually the version of swaymsg itself, yet the message displayed was "sway version <version>". This can create confusion if users update sway and swaymsg but don't restart sway, then use swaymsg to check the version. This patch changes the wording to be "swaymsg version <version>" instead, and likewise for swaybar. To get the version of a running sway instance, users should run swaymsg -t get_version.
2018-08-01ipc: add tick eventIan Fan
2018-07-10Remove `clipboard` command and `get_clipboard` messageemersion
2018-07-10Add get_config message type to ipcIan Fan
2018-07-10Add get_binding_modes message type to ipcIan Fan
2018-07-09Update for swaywm/wlroots#1126emersion
2018-06-30refactor success_objectArmin Preiml
2018-06-30fix swaymsg: errors are displayed againArmin Preiml
Command errors didn't get displayed, because the success function didn't accept objects
2018-06-06Store sway_outputs so that they can be reenabledBrian Ashworth
2018-05-29Add tree representation to IPC workspace descriptionRyan Dwyer
2018-05-28swaymsg: Fix exit codeRyan Dwyer
2018-05-12Implement IPC get_seats commandRyan Dwyer
2018-05-05swaymsg: Fix spelling in error messageNicolas Braud-Santoni
2018-03-12ipc: add output modesemersion
2018-01-05swaymsg: convert to wlr_logDominique Martinet
2018-01-04update json-c dep to 0.13Rachel K
2017-12-29Pretty-print all output info in swaymsg -t get_outputsemersion
2017-12-19fix memory leak in swaymsgTony Crisci
2017-12-18fix memory leak in swaymsgTony Crisci
2017-12-18ipc get_inputsTony Crisci
2017-07-11Add get_clipbard ipc errors; Adapt swaymsgnyorain
Also increase the get_clipboard timeout to 30 secs
2017-07-07Rework get_clipboard implementationnyorain
2017-07-07Implement ipc get_clipboardnyorain
2017-04-26Add -DVERSION flag for release version numbersSebastian Noack
2017-04-03Add pretty printing to swaymsgDrew DeVault
If stdout is a tty, it will pretty print unless -r (--raw) is given. Sample outputs: ``` ~/s/s/build > ./bin/swaymsg fullscreen toggle Error: Permission denied for fullscreen toggle via IPC ~/s/s/build > ./bin/swaymsg -t get_workspaces Workspace 3:三 Output: DVI-I-1 Layout: splith Workspace 1:一 (off-screen) Output: HDMI-A-1 Layout: splith Workspace 5:五 (focused) Output: HDMI-A-1 Layout: splith ~/s/s/build > ./bin/swaymsg -t get_inputs Input device Metadot - Das Keyboard Das Keyboard Type: Keyboard Sway ID: 9456:320:Metadot_-_Das_Keyboard_Das_Keyb Input device Wacom Intuos S 2 Pen Type: Tablet tool Sway ID: 1386:827:Wacom_Intuos_S_2 Input device Wacom Intuos S 2 Pad Type: Tablet pad Sway ID: 1386:827:Wacom_Intuos_S_2 Input device Logitech Gaming Mouse G502 Type: Keyboard, Mouse Sway ID: 1133:49277:Logitech_Gaming_Mous ~/s/s/build > ./bin/swaymsg -t get_outputs Output DVI-I-1 Geometry: 1920x1080 @ 3840,0 Scale factor: 1x Workspace: 3:三 Output DVI-D-1 Geometry: 1920x1080 @ 0,0 Scale factor: 1x Workspace: 4:四 Output HDMI-A-1 Geometry: 1920x1080 @ 1920,0 Scale factor: 1x Workspace: 5:五 ```
2017-03-10UnGNUify the codebaseDrew DeVault
2016-07-31swaymsg: pretty print ipc responseTony Crisci
fixes #809
2016-02-26Correctly exit sway on errors.Mikkel Oscar Lyderik
Calling `exit` in sway_terminate prevents sway from correctly shutting down (freeing data, cleanly terminating the ipc server, etc.). A better way is to exit straight away if the failure occurs before `wlc_run` and use sway_abort as usual if it occur when wlc is running.
2016-01-19libinputCole Mickens
2015-12-02swaymsg: add newline after responseChristoph Gysin
2015-11-28Fix option parsingChristoph Gysin
Using 'flag' results in duplicate code paths for short and long options. This broke the -q short option in swaymsg, because there was: {"quiet", no_argument, &quiet, 'q'} Which will set quiet to 'q' and return 0, not 'q'.
2015-11-28swaymsg: Add --help option that prints usageChristoph Gysin
2015-11-28swaymsg: Print usage and exit on unknown optionsChristoph Gysin
2015-11-28Use macros for exit valuesChristoph Gysin
2015-11-27Add command line to swaygrabDrew DeVault
Also modifies IPC client so that we can work with persistent connections.
2015-11-27Move IPC client into common, refactor IPCDrew DeVault
2015-11-27Fix build warningsDrew DeVault
2015-11-26Implement swaymsg IPC behaviorDrew DeVault