aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--completions/zsh/_swaylock3
-rw-r--r--swaylock/main.c11
-rw-r--r--swaylock/swaylock.1.txt3
3 files changed, 14 insertions, 3 deletions
diff --git a/completions/zsh/_swaylock b/completions/zsh/_swaylock
index 880237fe..842a884a 100644
--- a/completions/zsh/_swaylock
+++ b/completions/zsh/_swaylock
@@ -8,4 +8,5 @@ _arguments -s \
'(-h --help)'{-h,--help}'[Show help message and quit]' \
'(-c --color)'{-c,--color}'[Specify a color (rrggbb) instead of white]' \
'(-i --image)'{-i,--image}'[Display an image]:files:_files' \
- '(-s --scaling)'{-s,--scaling}'[Scaling mode]:mode:(stretch fill fit center tile)'
+ '(-s --scaling)'{-s,--scaling}'[Scaling mode]:mode:(stretch fill fit center tile)' \
+ '(-u --no-unlock-indicator)'{-u,--no-unlock-indicator}'[Disable the unlock indicator]'
diff --git a/swaylock/main.c b/swaylock/main.c
index 666e59d2..2c69f7fd 100644
--- a/swaylock/main.c
+++ b/swaylock/main.c
@@ -10,6 +10,7 @@
#include <pwd.h>
#include <getopt.h>
#include <signal.h>
+#include <stdbool.h>
#include "client/window.h"
#include "client/registry.h"
@@ -20,6 +21,7 @@
struct registry *registry;
struct render_data render_data;
+bool show_indicator = true;
void wl_dispatch_events() {
wl_display_flush(registry->display);
@@ -328,6 +330,7 @@ int main(int argc, char **argv) {
{"tiling", no_argument, NULL, 't'},
{"version", no_argument, NULL, 'v'},
{"socket", required_argument, NULL, 'p'},
+ {"no-unlock-indicator", no_argument, NULL, 'u'},
{0, 0, 0, 0}
};
@@ -340,6 +343,7 @@ int main(int argc, char **argv) {
" -t, --tiling Same as --scaling=tile.\n"
" -v, --version Show the version number and quit.\n"
" -i, --image [<output>:]<path> Display the given image.\n"
+ " -u, --no-unlock-indicator Disable the unlock indicator.\n"
" --socket <socket> Use the specified socket.\n";
registry = registry_poll();
@@ -347,7 +351,7 @@ int main(int argc, char **argv) {
int c;
while (1) {
int option_index = 0;
- c = getopt_long(argc, argv, "hc:i:s:tv", long_options, &option_index);
+ c = getopt_long(argc, argv, "hc:i:s:tvu", long_options, &option_index);
if (c == -1) {
break;
}
@@ -412,6 +416,9 @@ int main(int argc, char **argv) {
#endif
exit(EXIT_SUCCESS);
break;
+ case 'u':
+ show_indicator = false;
+ break;
default:
fprintf(stderr, "%s", usage);
exit(EXIT_FAILURE);
@@ -575,7 +582,7 @@ void render(struct render_data *render_data) {
const float TYPE_INDICATOR_BORDER_THICKNESS = M_PI / 128.0f;
// Add visual indicator
- if (render_data->auth_state != AUTH_STATE_IDLE) {
+ if (show_indicator && render_data->auth_state != AUTH_STATE_IDLE) {
// Draw circle
cairo_set_line_width(window->cairo, ARC_THICKNESS);
cairo_arc(window->cairo, window->width/2, window->height/2, ARC_RADIUS, 0, 2 * M_PI);
diff --git a/swaylock/swaylock.1.txt b/swaylock/swaylock.1.txt
index c30e8d3d..c139fb4a 100644
--- a/swaylock/swaylock.1.txt
+++ b/swaylock/swaylock.1.txt
@@ -35,6 +35,9 @@ Options
*-t, --tiling*::
Same as --scaling=tile.
+*-u, --no-unlock-indicator*::
+ Disable the unlock indicator.
+
*-v, \--version*::
Show the version number and quit.