aboutsummaryrefslogtreecommitdiff
path: root/src/er_xdg_pipe_menu_cli.erl
diff options
context:
space:
mode:
authorChristopher R. Nelson <christopher.nelson@languidnights.com>2026-07-21 11:44:41 -0400
committerChristopher R. Nelson <christopher.nelson@languidnights.com>2026-07-21 11:44:41 -0400
commit5ff1fbe175af17fbb808c5ea942f465a932da3af (patch)
treeb6a26b4b7e896e5ed5d85a5003c4d176ed5c8e9e /src/er_xdg_pipe_menu_cli.erl
parent7e8472e1e2a0b39746ef86c041d56b92bab5a6b7 (diff)
Rename app from er_xdg_pipe_menu to xdg_pipe_menuHEADmain
Drop the "er-" prefix throughout: module/atom names, filenames, socket paths, and docs. It was an implementation detail, not part of the app's identity. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Diffstat (limited to 'src/er_xdg_pipe_menu_cli.erl')
-rw-r--r--src/er_xdg_pipe_menu_cli.erl41
1 files changed, 0 insertions, 41 deletions
diff --git a/src/er_xdg_pipe_menu_cli.erl b/src/er_xdg_pipe_menu_cli.erl
deleted file mode 100644
index 92ac715..0000000
--- a/src/er_xdg_pipe_menu_cli.erl
+++ /dev/null
@@ -1,41 +0,0 @@
-%%%-------------------------------------------------------------------
-%% @doc Entry point invoked by Openbox as the pipe menu command.
-%%
-%% Tries the running daemon's Unix socket first for an instant,
-%% pre-rendered response; if the daemon isn't reachable, falls back to
-%% scanning, parsing and rendering inline so the menu still works.
-%% @end
-%%%-------------------------------------------------------------------
-
--module(er_xdg_pipe_menu_cli).
-
--export([main/1]).
-
--define(CONNECT_TIMEOUT_MS, 200).
--define(RECV_TIMEOUT_MS, 1000).
-
-main(_Args) ->
- Menu =
- case from_daemon() of
- {ok, Bin} -> Bin;
- error -> er_xdg_pipe_menu_cache:build(er_xdg_pipe_menu_scanner:data_dirs())
- end,
- io:put_chars(Menu).
-
-from_daemon() ->
- Path = er_xdg_pipe_menu_socket:socket_path(),
- case gen_tcp:connect({local, Path}, 0, [binary, {active, false}], ?CONNECT_TIMEOUT_MS) of
- {ok, Socket} ->
- Result = recv_all(Socket, []),
- gen_tcp:close(Socket),
- Result;
- {error, _Reason} ->
- error
- end.
-
-recv_all(Socket, Acc) ->
- case gen_tcp:recv(Socket, 0, ?RECV_TIMEOUT_MS) of
- {ok, Data} -> recv_all(Socket, [Data | Acc]);
- {error, closed} -> {ok, iolist_to_binary(lists:reverse(Acc))};
- {error, _Reason} -> error
- end.