From 2402f2e36498686dfebe7c06f1203f595b888252 Mon Sep 17 00:00:00 2001 From: bazuin-32 Date: Tue, 12 Jul 2022 14:59:36 -0600 Subject: Use enum for specifying hyprctl output format and change the way flags are passed for json output --- hyprctl/main.cpp | 45 +++++++++++++++++++++++---------------------- 1 file changed, 23 insertions(+), 22 deletions(-) (limited to 'hyprctl/main.cpp') diff --git a/hyprctl/main.cpp b/hyprctl/main.cpp index 291fc207..5ab170e6 100644 --- a/hyprctl/main.cpp +++ b/hyprctl/main.cpp @@ -195,28 +195,29 @@ int main(int argc, char** argv) { return 1; } - std::string args(argv[1]); - - if (argc > 2) { - args += " "; - args += argv[2]; - } - - if (!strcmp(argv[1], "monitors")) request(args); - else if (!strcmp(argv[1], "clients")) request(args); - else if (!strcmp(argv[1], "workspaces")) request(args); - else if (!strcmp(argv[1], "activewindow")) request(args); - else if (!strcmp(argv[1], "layers")) request(args); - else if (!strcmp(argv[1], "version")) request(args); - else if (!strcmp(argv[1], "kill")) request(args); - else if (!strcmp(argv[1], "splash")) request(args); - else if (!strcmp(argv[1], "devices")) request(args); - else if (!strcmp(argv[1], "reload")) request(args); - else if (!strcmp(argv[1], "dispatch")) dispatchRequest(argc, argv); - else if (!strcmp(argv[1], "keyword")) keywordRequest(argc, argv); - else if (!strcmp(argv[1], "hyprpaper")) hyprpaperRequest(argc, argv); - else if (!strcmp(argv[1], "--batch")) batchRequest(argc, argv); - else if (!strcmp(argv[1], "--help")) printf("%s", USAGE.c_str()); + std::string ourRequest = argv[1]; + + if (!ourRequest.contains("/")) { + ourRequest = "/" + ourRequest; + } + + ourRequest.contains("/"); + + if (ourRequest.contains("/monitors")) request(ourRequest); + else if (ourRequest.contains("/clients")) request(ourRequest); + else if (ourRequest.contains("/workspaces")) request(ourRequest); + else if (ourRequest.contains("/activewindow")) request(ourRequest); + else if (ourRequest.contains("/layers")) request(ourRequest); + else if (ourRequest.contains("/version")) request(ourRequest); + else if (ourRequest.contains("/kill")) request(ourRequest); + else if (ourRequest.contains("/splash")) request(ourRequest); + else if (ourRequest.contains("/devices")) request(ourRequest); + else if (ourRequest.contains("/reload")) request(ourRequest); + else if (ourRequest.contains("/dispatch")) dispatchRequest(argc, argv); + else if (ourRequest.contains("/keyword")) keywordRequest(argc, argv); + else if (ourRequest.contains("/hyprpaper")) hyprpaperRequest(argc, argv); + else if (ourRequest.contains("/--batch")) batchRequest(argc, argv); + else if (ourRequest.contains("/--help")) printf("%s", USAGE.c_str()); else { printf("%s\n", USAGE.c_str()); return 1; -- cgit v1.2.3