betterlockscreen-openrc/betterlockscreen

974 lines
28 KiB
Text
Raw Normal View History

#!/usr/bin/env bash
2017-12-07 18:51:34 +00:00
# Author : Copyright (c) 2017-2022 Pavan Jadhaw, and others (https://github.com/betterlockscreen/betterlockscreen/graphs/contributors)
# Project Repository : https://github.com/betterlockscreen/betterlockscreen
2017-12-08 06:01:03 +00:00
cmd_exists () {
command -v "$1" >/dev/null
}
init_config () {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# default options
display_on=0
span_image=false
lock_timeout=300
fx_list=(dim blur dimblur pixel dimpixel color)
dim_level=40
blur_level=1
pixel_scale=10,1000
solid_color=333333
description=""
2021-08-26 01:05:51 +00:00
quiet=false
2021-06-30 18:41:46 +00:00
i3lockcolor_bin="i3lock-color"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
if ! cmd_exists "$i3lockcolor_bin" && cmd_exists "i3lock"; then
i3lockcolor_bin="i3lock"
fi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# default theme
loginbox=00000066
loginshadow=00000000
locktext="Type password to unlock..."
font="sans-serif"
ringcolor=ffffffff
insidecolor=00000000
separatorcolor=00000000
ringvercolor=ffffffff
insidevercolor=00000000
ringwrongcolor=ffffffff
insidewrongcolor=d23c3dff
timecolor=ffffffff
time_format="%H:%M:%S"
greetercolor=ffffffff
layoutcolor=ffffffff
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
keyhlcolor=d23c3dff
bshlcolor=d23c3dff
verifcolor=ffffffff
wrongcolor=d23c3dff
modifcolor=d23c3dff
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
bgcolor=000000ff
wallpaper_cmd="feh --bg-fill"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
time_format="%H:%M:%S"
# read user config
USER_CONF="${XDG_CONFIG_HOME:-$HOME/.config}/betterlockscreenrc"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
if [ -e "$USER_CONF" ]; then
# shellcheck source=/dev/null
source "$USER_CONF"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
fi
if ! cmd_exists "$i3lockcolor_bin"; then
echof error "Unable to find i3lock-color binary under detected/configured name: '$i3lockcolor_bin'!"
exit
fi
2021-06-21 18:23:31 +00:00
# Please make sure to adjust this before release!
2021-08-21 19:38:58 +00:00
VERSION="4.0.3"
2021-06-21 18:23:31 +00:00
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# paths
CACHE_DIR="${XDG_CACHE_HOME:-$HOME/.cache}/betterlockscreen"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
CUR_DIR="$CACHE_DIR/current"
2017-12-07 18:51:34 +00:00
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# wallpaper
CUR_W_RESIZE="$CUR_DIR/wall_resize.png"
CUR_W_DIM="$CUR_DIR/wall_dim.png"
CUR_W_BLUR="$CUR_DIR/wall_blur.png"
CUR_W_DIMBLUR="$CUR_DIR/wall_dimblur.png"
CUR_W_PIXEL="$CUR_DIR/wall_pixel.png"
CUR_W_DIMPIXEL="$CUR_DIR/wall_dimpixel.png"
CUR_W_COLOR="$CUR_DIR/wall_color.png"
# lockscreen
CUR_L_RESIZE="$CUR_DIR/lock_resize.png"
CUR_L_DIM="$CUR_DIR/lock_dim.png"
CUR_L_BLUR="$CUR_DIR/lock_blur.png"
CUR_L_DIMBLUR="$CUR_DIR/lock_dimblur.png"
CUR_L_PIXEL="$CUR_DIR/lock_pixel.png"
CUR_L_DIMPIXEL="$CUR_DIR/lock_dimpixel.png"
CUR_L_COLOR="$CUR_DIR/lock_color.png"
# Original DPMS timeout
DEFAULT_TIMEOUT=$(cut -d ' ' -f4 <<< "$(xset q | sed -n '25p')")
# Original DPMS status
DEFAULT_DPMS=$(xset q | awk '/^[[:blank:]]*DPMS is/ {print $(NF)}')
# Dunst
DUNST_INSTALLED=false && [[ -e "$(command -v dunstctl)" ]] && DUNST_INSTALLED=true
DUNST_IS_PAUSED=false && [[ "$DUNST_INSTALLED" == "true" ]] && DUNST_IS_PAUSED=$(dunstctl is-paused)
2021-06-30 20:53:10 +00:00
# Feh
FEH_INSTALLED=false && [[ -e "$(command -v feh)" ]] && FEH_INSTALLED=true
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# called before screen is locked
prelock() {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# set dpms timeout
if [ "$DEFAULT_DPMS" == "Enabled" ]; then
xset dpms "$lock_timeout"
fi
# If dusnt is already paused don't pause it again
if [[ "$DUNST_INSTALLED" == "true" && "$DUNST_IS_PAUSED" == "false" ]]; then
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
dunstctl set-paused true
fi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
if [[ "$runsuspend" = "true" ]]; then
lockargs="$lockargs -n"
fi
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# lock screen with specified image
lock() {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echof act "Locking screen..."
local image="$1"
local fontlg=32
local fontmd=16
local fontsm=12
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
$i3lockcolor_bin \
--image "$image" \
--color "$bgcolor" \
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
--screen "$display_on" \
--ind-pos="x+310:y+h-80" \
--radius=25 \
--ring-width=5 \
--inside-color="$insidecolor" \
--ring-color="$ringcolor" \
--separator-color=$separatorcolor \
--insidever-color="$insidevercolor" \
--insidewrong-color="$insidewrongcolor" \
--ringver-color="$ringvercolor" \
--ringwrong-color="$ringwrongcolor" \
--line-uses-inside \
--keyhl-color="$keyhlcolor" \
--bshl-color="$bshlcolor" \
--clock --force-clock \
--time-pos="ix-265:iy-10" \
--time-align 1 \
--time-str "$time_format" \
--time-color="$timecolor" \
--time-font="$font" \
--time-size="$fontlg" \
--date-str "" \
--greeter-pos="ix-265:iy+12" \
--greeter-align 1 \
--greeter-text "$locktext" \
--greeter-color="$greetercolor" \
--greeter-font="$font" \
--greeter-size="$fontmd" \
--layout-pos="ix-265:iy+32" \
--layout-align 1 \
--layout-color="$layoutcolor" \
--layout-font="$font" \
--layout-size="$fontsm" \
--keylayout "${keylayout:-0}" \
--verif-pos="ix+35:iy-34" \
--verif-align 2 \
--verif-text="Verifying..." \
--verif-color="$verifcolor" \
--verif-font="$font" \
--verif-size="$fontsm" \
--wrong-pos="ix+24:iy-34" \
--wrong-align 2 \
--wrong-text="Failure!" \
--wrong-color="$wrongcolor" \
--wrong-font="$font" \
--wrong-size="$fontsm" \
--modif-pos="ix+45:iy+43" \
--modif-align 2 \
--modif-size="$fontsm" \
--modif-color="$modifcolor" \
--noinput-text="" \
--pass-media-keys \
--pass-screen-keys \
--pass-volume-keys \
--pass-power-keys \
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
"${lockargs[@]}"
}
# in case image isn't found
failsafe() {
echof act "Locking screen... (FAILSAFE MODE)"
local fontlg=32
local fontmd=16
local fontsm=12
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
$i3lockcolor_bin \
--color "$bgcolor" \
--ind-pos="x+310:y+h-80" \
--radius=25 \
--ring-width=5 \
--inside-color="$insidecolor" \
--ring-color="$ringcolor" \
--separator-color=$separatorcolor \
--insidever-color="$insidevercolor" \
--insidewrong-color="$insidewrongcolor" \
--ringver-color="$ringvercolor" \
--ringwrong-color="$ringwrongcolor" \
--line-uses-inside \
--keyhl-color="$keyhlcolor" \
--bshl-color="$bshlcolor" \
--clock --force-clock \
--time-pos="ix-265:iy-10" \
--time-align 1 \
--time-str "$time_format" \
--time-color="$timecolor" \
--time-font="$font" \
--time-size="$fontlg" \
--date-str "" \
--greeter-pos="ix-265:iy+12" \
--greeter-align 1 \
--greeter-text "$locktext" \
--greeter-color="$greetercolor" \
--greeter-font="$font" \
--greeter-size="$fontmd" \
--layout-pos="ix-265:iy+32" \
--layout-align 1 \
--layout-color="$layoutcolor" \
--layout-font="$font" \
--layout-size="$fontsm" \
--keylayout "${keylayout:-0}" \
--verif-pos="ix+45:iy-35" \
--verif-align 2 \
--verif-text="Verifying..." \
--verif-color="$verifcolor" \
--verif-font="$font" \
--verif-size="$fontsm" \
--wrong-pos="ix+45:iy-35" \
--wrong-align 2 \
--wrong-text="Failure!" \
--wrong-color="$wrongcolor" \
--wrong-font="$font" \
--wrong-size="$fontsm" \
--modif-pos="ix+45:iy+43" \
--modif-align 2 \
--modif-size="$fontsm" \
--modif-color="$modifcolor" \
--noinput-text="" \
--pass-media-keys \
--pass-screen-keys \
--pass-volume-keys \
--pass-power-keys
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# called after screen is unlocked
postlock() {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# restore default dpms timeout
if [ "$DEFAULT_DPMS" == "Enabled" ]; then
xset dpms "$DEFAULT_TIMEOUT"
fi
# If dunst already paused before locking don't unpause dunst
if [[ "$DUNST_INSTALLED" == "true" && "$DUNST_IS_PAUSED" == "false" ]]; then
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
dunstctl set-paused false
fi
}
2017-12-08 06:01:03 +00:00
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# select effect and lock screen
lockselect() {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echof act "Running prelock..."
prelock &
case "$1" in
dim) if [ -f "$CUR_L_DIM" ]; then lock "$CUR_L_DIM"; else failsafe; fi ;;
blur) if [ -f "$CUR_L_BLUR" ]; then lock "$CUR_L_BLUR"; else failsafe; fi ;;
dimblur) if [ -f "$CUR_L_DIMBLUR" ]; then lock "$CUR_L_DIMBLUR"; else failsafe; fi ;;
pixel) if [ -f "$CUR_L_PIXEL" ]; then lock "$CUR_L_PIXEL"; else failsafe; fi ;;
dimpixel) if [ -f "$CUR_L_DIMPIXEL" ]; then lock "$CUR_L_DIMPIXEL"; else failsafe; fi ;;
color) if [ -f "$CUR_L_COLOR" ]; then lock "$CUR_L_COLOR"; else failsafe; fi ;;
*) if [ -f "$CUR_L_RESIZE" ]; then lock "$CUR_L_RESIZE"; else failsafe; fi ;;
esac
echof act "Running postlock..."
postlock &
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# calculate adjustments for hidpi displays
2018-12-10 21:41:59 +00:00
logical_px() {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# $1: number of pixels to convert
# $2: 1 for width. 2 for height
local pixels="$1"
local direction="$2"
local dpi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# use DPI set by user in .Xresources
dpi=$(xrdb -q | grep -oP '^\s*Xft.dpi:\s*\K\d+' | bc)
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# or get dpi value from xdpyinfo
if [ -z "$dpi" ]; then
dpi=$(xdpyinfo | sed -En "s/\s*resolution:\s*([0-9]*)x([0-9]*)\s.*/\\$direction/p" | head -n1)
fi
# adjust scaling
if [ -n "$dpi" ]; then
local scale
2021-09-05 17:10:09 +00:00
scale=$(echo "scale=3; $dpi / 96.0" | bc)
echo "$scale * $pixels / 1" | bc
else
# return the default value if no DPI is set
echo "$pixels"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
fi
2018-12-10 21:41:59 +00:00
}
2017-12-08 06:01:03 +00:00
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# get total resolution, sets $TOTAL_SIZE
get_total_size () {
TOTAL_SIZE=$(xdpyinfo | grep -w "dimensions" | sed -r 's/^[^0-9]*([0-9]+x[0-9]+).*$/\1/')
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# get list of displays, sets $DISPLAY_LIST
get_display_list () {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
local count=0
mapfile -t displays < <(xrandr --listactivemonitors)
for display in "${displays[@]:1}"; do
((count++))
display="$(echo "$display" | sed -r 's/\/[0-9]*//g')"
IFS=' ' read -r -a info <<< "$display"
DISPLAY_LIST+=("$count ${info[3]} ${info[2]}")
done
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# populate $WALL_LIST depending on number of displays and images passed
get_wall_list() {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
local paths=("$@")
declare -ga WALL_LIST
# multiple images and spanning conflict, bail out
if [ "${#paths[@]}" -gt 1 ] && [ "$span_image" = true ]; then
echof err "Can't use --span with multiple images!"
exit 1
fi
# if spanning return 1 image
if [ "$span_image" = true ]; then
get_image "${paths[0]}"
# if # paths is 1
elif [ "${#paths[@]}" -eq 1 ]; then
for ((i=0; i<${#DISPLAY_LIST[@]}; i++)); do
# add same image to $WALL_LIST for each display
get_image "${paths[0]}"
done
# if # of paths equals # of displays
elif [ ${#paths[@]} -eq "${#DISPLAY_LIST[@]}" ]; then
for ((i=0; i<${#DISPLAY_LIST[@]}; i++)); do
# add each image to $WALL_LIST
get_image "${paths[$i]}"
done
# if # of paths differ from # of display, bail out
else
echof err "${#paths[@]} images provided for ${#DISPLAY_LIST[@]} displays!"
exit 1
fi
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# get image path, append to $WALL_LIST
get_image() {
local path="$1"
# we have a file
if [ -f "$path" ]; then
WALL_LIST+=("$path")
return
# we have a directory
elif [ -d "$path" ]; then
dir=("$path"/*)
rdir="${dir[RANDOM % ${#dir[@]}]}"
get_image "$rdir" # <-- calls itself
# not file or directory, bail out
else
echof err "invalid path: $path"
exit 1
fi
}
# scale base image and generate effects
resize_and_render () {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
local base="$1"
local path="$2"
local resolution="$3"
# resource paths
RES_RESIZE="$path/resize.png"
RES_DIM="$path/dim.png"
RES_BLUR="$path/blur.png"
RES_DIMBLUR="$path/dimblur.png"
RES_PIXEL="$path/pixel.png"
RES_DIMPIXEL="$path/dimpixel.png"
RES_COLOR="$path/color.png"
# resize
base_resize "$base" "$RES_RESIZE" "$resolution"
# effects
for effect in "${fx_list[@]}"; do
case $effect in
dim) fx_dim "$RES_RESIZE" "$RES_DIM";;
blur) fx_blur "$RES_RESIZE" "$RES_BLUR" "$resolution";;
dimblur) fx_dimblur "$RES_RESIZE" "$RES_DIMBLUR" "$resolution";;
pixel) fx_pixel "$RES_RESIZE" "$RES_PIXEL";;
dimpixel) fx_dimpixel "$RES_RESIZE" "$RES_DIMPIXEL";;
color) fx_color "$RES_COLOR" "$resolution";;
esac
done
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
}
# apply resize
base_resize() {
local input="$1"
local output="$2"
local size="$3"
echof act "Resizing base image..."
eval convert "$input" \
-resize "$size""^" \
-gravity center \
-extent "$size" \
"$output"
}
# apply dim
fx_dim() {
local input="$1"
local output="$2"
echof act "Rendering 'dim' effect..."
eval convert "$input" \
-fill black -colorize "$dim_level"% \
"$output"
}
# apply blur
fx_blur() {
local input="$1"
local output="$2"
local size="$3"
echof act "Rendering 'blur' effect..."
blur_shrink=$(echo "scale=2; 20 / $blur_level" | bc)
blur_sigma=$(echo "scale=2; 0.6 * $blur_level" | bc)
eval convert "$input" \
-filter Gaussian \
-resize "$blur_shrink%" \
-define "filter:sigma=$blur_sigma" \
-resize "$size^" -gravity center -extent "$size" \
"$output"
}
# apply dimblur
fx_dimblur() {
local input="$1"
local output="$2"
local size="$3"
echof act "Rendering 'dimblur' effect..."
blur_shrink=$(echo "scale=2; 20 / $blur_level" | bc)
blur_sigma=$(echo "scale=2; 0.6 * $blur_level" | bc)
eval convert "$input" \
-fill black -colorize "$dim_level"% \
-filter Gaussian \
-resize "$blur_shrink%" \
-define "filter:sigma=$blur_sigma" \
-resize "$size^" -gravity center -extent "$size" \
"$output"
}
# pixelate
fx_pixel() {
local input="$1"
local output="$2"
echof act "Rendering 'pixel' effect..."
IFS=',' read -ra range <<< "$pixel_scale"
eval convert "$input" \
-scale "${range[0]}"% -scale "${range[1]}"% \
"$output"
}
# apply dimpixel
fx_dimpixel() {
local input="$1"
local output="$2"
echof act "Rendering 'dimpixel' effect..."
IFS=',' read -ra range <<< "$pixel_scale"
eval convert "$input" \
-fill black -colorize "$dim_level"% \
-scale "${range[0]}"% -scale "${range[1]}"% \
"$output"
}
# create solid color
fx_color() {
local output="$1"
local size="$2"
echof act "Rendering 'color' effect..."
eval convert -size "$size" canvas:\#"$solid_color" "$RES_COLOR"
}
2021-06-17 21:53:32 +00:00
# create loginbox rectangle, set "$RECTANGLE"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
create_loginbox () {
RECTANGLE="$CUR_DIR/rectangle.png"
local shadow="$CUR_DIR/shadow.png"
local width height
width=$(logical_px 340 1)
height=$(logical_px 100 2)
2021-06-17 21:53:32 +00:00
convert -size "$width"x"$height" xc:\#"$loginbox" -fill none "$RECTANGLE"
convert "$RECTANGLE" \
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
\( -clone 0 -background \#"$loginshadow" -shadow 100x5+0+0 \) +swap \
2021-06-17 21:53:32 +00:00
-background none -layers merge +repage "$shadow"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
composite -compose Dst_Out -gravity center \
2021-06-17 21:53:32 +00:00
"$RECTANGLE" "$shadow" -alpha Set "$shadow"
convert "$shadow" "$RECTANGLE" -geometry +10+10 -composite "$RECTANGLE"
[[ "$shadow" ]] && rm "$shadow"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
}
2021-06-17 21:53:32 +00:00
# create rectangle with description, set "$DESCRECT"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
create_description () {
DESCRECT="$CUR_DIR/description.png"
local shadow="$CUR_DIR/shadow.png"
convert -background none -family "$(fc-match "$font" family)" -style Normal -pointsize 14 -fill \#"$greetercolor" label:"\ $description\ " -bordercolor \#"$loginbox" -border 10 "$DESCRECT"
2021-06-17 21:53:32 +00:00
convert "$DESCRECT" \
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
\( -clone 0 -background \#"$loginshadow" -shadow 100x5+0+0 \) +swap \
2021-06-17 21:53:32 +00:00
-background none -layers merge +repage "$shadow"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
composite -compose Dst_Out -gravity center \
2021-06-17 21:53:32 +00:00
"$DESCRECT" "$shadow" -alpha Set "$shadow"
convert "$shadow" "$DESCRECT" -geometry +10+10 -composite "$DESCRECT"
[[ "$shadow" ]] && rm "$shadow"
}
# delete and recreate directory
purge_cache () {
if [[ -d "$1" ]]; then
rm -r "$1"
fi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
mkdir -p "$1"
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# update lockscreen and wallpaper images
update () {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
local images=("$@")
echof act "Updating image cache..."
mkdir -p "$CACHE_DIR" &>/dev/null
get_display_list # DISPLAY_LIST
get_total_size # TOTAL_SIZE
echof info "Detected ${#DISPLAY_LIST[@]} display(s) @ $TOTAL_SIZE total resolution"
get_wall_list "${images[@]}" # WALL_LIST
echof info "Original image(s): ${WALL_LIST[*]##*/}"
# Prepare description box to obtain width for positioning
local descwidth
local descheight
if [ -z "$description" ]; then
descwidth=0
descheight=0
else
create_description
descwidth=$(identify -format "%[fx:w]" "$DESCRECT")
descheight=$(identify -format "%[fx:h]" "$DESCRECT")
fi
for ((i=0; i<${#DISPLAY_LIST[@]}; i++)); do
display="${DISPLAY_LIST[$i]}"
USER_WALL="${WALL_LIST[$i]}"
# escape spaces for IM
if echo "$USER_WALL" | grep -E -q "[[:space:]]"; then
USER_WALL="${USER_WALL// /\\ }"
fi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
IFS=' ' read -r -a dinfo <<< "$display"
local id="${dinfo[0]}"
local device="${dinfo[1]}"
local geometry="${dinfo[2]}"
read -r -a cols <<< "${geometry//[x+-]/ }"
local position="${geometry#*"${cols[1]}"}"
local resolution="${geometry%"${position}"*}"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
if [[ $id -eq "$display_on" ]] || [[ "$display_on" -eq 0 ]]; then
IFS='x' read -r -a dimension <<< "$resolution"
res_x="${dimension[0]}"
res_y="${dimension[1]}"
read -r -a val <<< "${position//[+-]/ }"
read -r -a sym <<< "${position//[0-9]/ }"
pos_x="${sym[0]}${val[0]}"
pos_y="${sym[1]}${val[1]}"
rect_x=$((pos_x + $(logical_px 15 1)))
rect_y=$((pos_y + res_y - $(logical_px 140 2)))
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
positions+=("+$((rect_x))+$((rect_y))")
descrect_x=$((pos_x + res_x - descwidth - $(logical_px 15 1)))
descrect_y=$((pos_y + res_y - descheight - $(logical_px 20 2)))
positions_desc+=("+$((descrect_x))+$((descrect_y))")
fi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
local path="$CACHE_DIR/$id-$device"
purge_cache "$path"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
if [ "$span_image" = true ]; then
if [ "$id" -gt 1 ]; then
continue
else
device="[span]"
id="*"
resolution="$TOTAL_SIZE"
fi
fi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echof info "Processing display: $device ($id)"
echof info "Resolution: $resolution"
if [ "$span_image" = true ]; then
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
resize_and_render "$USER_WALL" "$path" "$resolution"
else
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
resize_and_render "$USER_WALL" "$path" "$resolution"
PARAM_RESIZE="$PARAM_RESIZE $RES_RESIZE -geometry $position -composite "
PARAM_DIM="$PARAM_DIM $RES_DIM -geometry $position -composite "
PARAM_BLUR="$PARAM_BLUR $RES_BLUR -geometry $position -composite "
PARAM_DIMBLUR="$PARAM_DIMBLUR $RES_DIMBLUR -geometry $position -composite "
PARAM_PIXEL="$PARAM_PIXEL $RES_PIXEL -geometry $position -composite "
PARAM_DIMPIXEL="$PARAM_DIMPIXEL $RES_DIMPIXEL -geometry $position -composite "
PARAM_COLOR="$PARAM_COLOR $RES_COLOR -geometry $position -composite "
fi
done
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
purge_cache "$CUR_DIR"
if [ "$span_image" = true ] || [ ${#DISPLAY_LIST[@]} -lt 2 ]; then
echof act "Rendering final wallpaper images..."
[[ -f "$RES_RESIZE" ]] && eval "cp $RES_RESIZE $CUR_W_RESIZE"
[[ -f "$RES_DIM" ]] && eval "cp $RES_DIM $CUR_W_DIM"
[[ -f "$RES_BLUR" ]] && eval "cp $RES_BLUR $CUR_W_BLUR"
[[ -f "$RES_DIMBLUR" ]] && eval "cp $RES_DIMBLUR $CUR_W_DIMBLUR"
[[ -f "$RES_PIXEL" ]] && eval "cp $RES_PIXEL $CUR_W_PIXEL"
[[ -f "$RES_DIMPIXEL" ]] && eval "cp $RES_DIMPIXEL $CUR_W_DIMPIXEL"
[[ -f "$RES_COLOR" ]] && eval "cp $RES_COLOR $CUR_W_COLOR"
else
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echof act "Creating canvas: $TOTAL_SIZE"
2021-06-17 21:53:32 +00:00
[[ -f "$RES_RESIZE" ]] && eval "convert -size $TOTAL_SIZE 'xc:blue' $CUR_W_RESIZE"
[[ -f "$RES_DIM" ]] && eval "convert -size $TOTAL_SIZE 'xc:blue' $CUR_W_DIM"
[[ -f "$RES_BLUR" ]] && eval "convert -size $TOTAL_SIZE 'xc:blue' $CUR_W_BLUR"
[[ -f "$RES_DIMBLUR" ]] && eval "convert -size $TOTAL_SIZE 'xc:blue' $CUR_W_DIMBLUR"
[[ -f "$RES_PIXEL" ]] && eval "convert -size $TOTAL_SIZE 'xc:blue' $CUR_W_PIXEL"
[[ -f "$RES_DIMPIXEL" ]] && eval "convert -size $TOTAL_SIZE 'xc:blue' $CUR_W_DIMPIXEL"
[[ -f "$RES_COLOR" ]] && eval "convert -size $TOTAL_SIZE 'xc:blue' $CUR_W_COLOR"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echof act "Rendering final wallpaper images..."
[[ -f "$CUR_W_RESIZE" ]] && eval "convert $CUR_W_RESIZE $PARAM_RESIZE $CUR_W_RESIZE"
[[ -f "$CUR_W_DIM" ]] && eval "convert $CUR_W_DIM $PARAM_DIM $CUR_W_DIM"
[[ -f "$CUR_W_BLUR" ]] && eval "convert $CUR_W_BLUR $PARAM_BLUR $CUR_W_BLUR"
[[ -f "$CUR_W_DIMBLUR" ]] && eval "convert $CUR_W_DIMBLUR $PARAM_DIMBLUR $CUR_W_DIMBLUR"
[[ -f "$CUR_W_PIXEL" ]] && eval "convert $CUR_W_PIXEL $PARAM_PIXEL $CUR_W_PIXEL"
[[ -f "$CUR_W_DIMPIXEL" ]] && eval "convert $CUR_W_DIMPIXEL $PARAM_DIMPIXEL $CUR_W_DIMPIXEL"
[[ -f "$CUR_W_COLOR" ]] && eval "convert $CUR_W_COLOR $PARAM_COLOR $CUR_W_COLOR"
fi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echof act "Rendering final lockscreen images..."
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
create_loginbox
for pos in "${positions[@]}"; do
PARAM_RECT="$PARAM_RECT $RECTANGLE -geometry $pos -composite "
done
2021-06-17 21:53:32 +00:00
if [ -n "$description" ]; then
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
create_description
for descpos in "${positions_desc[@]}"; do
PARAM_RECT="$PARAM_RECT $DESCRECT -geometry $descpos -composite "
done
fi
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
[[ -f "$CUR_W_RESIZE" ]] && eval "convert $CUR_W_RESIZE $PARAM_RECT $CUR_L_RESIZE"
[[ -f "$CUR_W_DIM" ]] && eval "convert $CUR_W_DIM $PARAM_RECT $CUR_L_DIM"
[[ -f "$CUR_W_BLUR" ]] && eval "convert $CUR_W_BLUR $PARAM_RECT $CUR_L_BLUR"
[[ -f "$CUR_W_DIMBLUR" ]] && eval "convert $CUR_W_DIMBLUR $PARAM_RECT $CUR_L_DIMBLUR"
[[ -f "$CUR_W_PIXEL" ]] && eval "convert $CUR_W_PIXEL $PARAM_RECT $CUR_L_PIXEL"
[[ -f "$CUR_W_DIMPIXEL" ]] && eval "convert $CUR_W_DIMPIXEL $PARAM_RECT $CUR_L_DIMPIXEL"
[[ -f "$CUR_W_COLOR" ]] && eval "convert $CUR_W_COLOR $PARAM_RECT $CUR_L_COLOR"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
2021-06-17 21:53:32 +00:00
[[ "$RECTANGLE" ]] && rm "$RECTANGLE"
[[ "$DESCRECT" ]] && rm "$DESCRECT"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echof ok "Done"
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# set wallpaper with effect
wallpaper() {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
local effect="$1"
# make wallpaper span displays
get_display_list
if [ "$span_image" = true ] || [[ "${#DISPLAY_LIST[@]}" -gt 1 ]]; then
wallpaper_cmd="$wallpaper_cmd --no-xinerama"
fi
# set wallpaper
case "$effect" in
dim) wallpaper="$CUR_W_DIM";;
blur) wallpaper="$CUR_W_BLUR";;
dimblur) wallpaper="$CUR_W_DIMBLUR";;
pixel) wallpaper="$CUR_W_PIXEL";;
dimpixel) wallpaper="$CUR_W_DIMPIXEL";;
color) wallpaper="$CUR_W_COLOR";;
*) wallpaper="$CUR_W_RESIZE";;
esac
eval "$wallpaper_cmd $wallpaper"
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# wrap echo with fancy prefix
echof() {
local prefix="$1"
local message="$2"
case "$prefix" in
header) msgpfx="[\e[1;95mB\e[m]";;
info) msgpfx="[\e[1;97m=\e[m]";;
act) msgpfx="[\e[1;92m*\e[m]";;
ok) msgpfx="[\e[1;93m+\e[m]";;
error) msgpfx="[\e[1;91m!\e[m]";;
*) msgpfx="";;
esac
2021-08-26 01:05:51 +00:00
[ "$quiet" != true ] && echo -e "$msgpfx $message"
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# help message
usage() {
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echo
echo "Usage: betterlockscreen [-u <PATH>] [-l <EFFECT>] [-w <EFFECT>]"
echo
2021-08-26 01:05:51 +00:00
echo " -q --quiet"
echo " Do not produce any text output on locking"
echo
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
echo " -u --update <PATH>"
echo " Update lock screen image"
echo
echo " -l --lock <EFFECT>"
echo " Lock screen with cached image"
echo
echo " -w --wall <EFFECT>"
echo " Set wallpaper with cached image"
echo
echo "Additional arguments:"
echo
echo " --display <N>"
echo " Set display to draw loginbox"
echo
echo " --span"
echo " Scale image to span multiple displays"
echo
echo " --off <N>"
echo " Turn display off after N minutes"
echo
echo " --fx <EFFECT,EFFECT,EFFECT>"
echo " List of effects to generate"
echo
echo " --desc <DESCRIPTION>"
echo " Set a description for the new lock screen image"
echo " (Only has an effect in combination with --update)"
echo
echo " --show-layout"
echo " Show current keyboard layout"
echo
echo " --wallpaper-cmd <command>"
echo " to set your custom wallpaper setter"
echo
echo " --time-format <format>"
echo " to set the time format used by i3lock-color"
echo
echo " -- <ARGS>"
echo " Pass additional arguments to i3lock"
echo
echo "Effects arguments:"
echo
echo " --dim <N>"
echo " Dim image N percent (0-100)"
echo
echo " --blur <N>"
echo " Blur image N amount (0.0-1.0)"
echo
echo " --pixel <N,N>"
echo " Pixelate image with N shrink and N grow (unsupported)"
echo
echo " --color <HEX>"
echo " Solid color background with HEX"
echo
exit 1
}
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
init_config
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# show usage when no arguments passed
[[ "$1" = "" ]] && usage
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
# process arguments
lockargs=()
for arg in "$@"; do
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
[[ "${arg:0:1}" = '-' ]] || continue
case "$1" in
2021-08-26 01:05:51 +00:00
-q | --quiet)
quiet=true
shift
;;
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
-u | --update)
runupdate=true
imagepaths+=("$2")
shift 2
;;
-s | --suspend)
runsuspend=true
;&
-l | --lock)
runlock=true
if [[ ${2:0:1} = '-' ]]; then
shift 1
else
lockstyle="$2"; shift 2
fi
;;
-w | --wall)
wallpaper "$2"
shift 2
;;
--wallpaper-cmd)
wallpaper_cmd="$2"
shift 2
;;
--time-format)
time_format="$2"
shift 2
;;
--display)
display_on="$2"
shift 2
;;
--span)
span_image=true
shift 1
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
;;
--off)
lock_timeout="$2"
shift 2
;;
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
--text)
locktext="$2"
shift 2
;;
--show-layout)
keylayout="$2";
shift 2
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
;;
--fx)
IFS=',' read -ra fx_list <<< "$2"
shift 2
;;
--dim)
dim_level="$2"
shift 2
;;
--blur)
blur_level="$2"
shift 2
;;
--pixel)
pixel_scale="$2"
shift 2
;;
--color)
solid_color="${2//\#/}"
shift 2
;;
--desc)
description="$2"
shift 2
;;
2021-06-21 18:23:31 +00:00
-v | --version)
echo
2021-07-01 16:10:15 +00:00
echo "Betterlockscreen: version: v$VERSION (dunst: $DUNST_INSTALLED, feh: $FEH_INSTALLED)"
$i3lockcolor_bin --version
2021-06-21 18:23:31 +00:00
convert --version
2021-06-30 20:53:10 +00:00
if [[ "$DUNST_INSTALLED" == "true" ]]; then
2021-06-21 18:23:31 +00:00
dunstctl debug
fi
2021-06-30 20:53:10 +00:00
if [[ "$FEH_INSTALLED" == "true" ]]; then
2021-06-21 18:23:31 +00:00
feh --version
fi
break
;;
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
--)
lockargs+=("${@:2}")
break
;;
-h | --help | *)
usage
break
;;
esac
done
2021-08-26 01:05:51 +00:00
echof header "Betterlockscreen"
# Run image generation
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
[[ $runupdate ]] && update "${imagepaths[@]}"
# Activate lockscreen
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
[[ $runsuspend ]] || lockargs+=(-n)
[[ $runlock ]] && lockselect "$lockstyle" && \
Prepare to merge (#228) * Fix loginbox position for vertical arrangements * Fix tabs everywhere * 110 Automatically deduce DPI * 118 Add description for Void Linux installation * 119 Add Timeout Option * Update README for multi-monitor * Keep original directory * Update README * Rename project files * Always use defaults * Rewrite update() and get_display_list() * Add lock_timeout to defaults * Fix ExecStart in systemd unit * Update README * Fix bad variable name in wallpaper() * Remove quoting, it breaks things * Fix paths and canvas color * Effects now are optional to speed up updating cache * Fix fx_dimblur() * Add shadow to loginbox (#3) * Add create_loginbox(), add loginshadow option * Add loginshadow option to example config * Add solid color background effect (#4) * Use array and fix quoting * Add color effect, create solid color backgrounds * Update README * Add more arguments and options (#5) * New arguments and config options * Update usage more * Update README * Minor text edits * Relocate config and cache (#6) * Move config and cache directories * Make sure cache dir exists * Reorder defaults, clarify options and theme * Reformat example config * Moved example config * Update header info * Fix quoting in DEFAULT_TIMEOUT * Rewrite usage() * Touch up comments and some syntax * Update README, fix usage * Fix passing arguments to i3lock lockargs needs to be an array so that it can expand to multiple arguments (preferable to using wordsplitting or eval instead). * Scale loginbox based on DPI Fixes jeffmhubbard/multilockscreen#7. * Add failsafe to lock screen when images not found (#13) * Add optional description box (#10) * Add optional description box The box is located in the bottom right corner of the lock screen image and contains a custom description message (e.g. to present a name for random images or to display additional information) Added option: --desc <DESCRIPTION> * Adapt description to i3lock date font * Description font queried like in i3lock-color * description: force normal upright font style * added support for dimpixel effect (#16) * added support for using different images on different displays (#17) * added support for using different images on different displays * fixed list creation when passed a single image * reworked how WALL_LIST is generated * Fix span output (#19) * Make output reflect one set of images is processed * Return only 1 image when spanning * Correct output in a few spots * Add fancy output (#20) * Add echo wrapper to prefix output * Fix typo * Update README.md (#21) * Fixes misspelled fn (#22) * Escape spaces in path for IM (#24) * Minor fixes (#26) * Better parsing --lock args * Add --pass-media-keys * Add --pass-screen-keys and --pass-power-keys * Fix insanely short default timeout * Make error text transparent * Call init_config later, update example config (#27) Reading config file later allows users to define custom functions in config (prelock, postlock, etc) Updated docs with example usage * Fix suspend (#30) * Fix borked logic in --lock arg that breaks suspend * Don't check before all arguments read * Use `dunstctl` to (un)pause the dunst pre/post-lock. (#31) Please be aware that, the use of dunstctl means that users will be forced to have dunst v1.5.0 or newer installed. * Update LICENSE * Disable DPMS after unlocking if it was originally disabled (#32) * feat[multilockscreen]: Add --show-layout option (#36) * Only change DPMS timeout if Enabled (#38) * Fix #40 (#41) Don't wait for `prelock()` and `postlock()` to complete * Add bgcolor option to set i3lock --color (#44) Closes #43 * Update systemd unit (#45) * Fix options name for i3color-lock release 2.13.c.3 (#49) With release 2.13.c.3 i3color-lock has added dashes before color, pos, size, etc. https://github.com/Raymo111/i3lock-color/releases/tag/2.13.c.3 * Add checklist * Rename script * Extra files from upstream * Update README Keep most of betterlockscreen README. Replaced configuration, usage, and usage examples. * Update example config * Fix branding, paths, etc * Add wallpaper_cmd and time_format, long arg only * Fix quoting, remove unused variable Co-authored-by: Fox Kiester <noct@posteo.net> Co-authored-by: Richard <fr34q@users.noreply.github.com> Co-authored-by: Sheeets <31318683+sheeets@users.noreply.github.com> Co-authored-by: Paul Zeinlinger <paul.zeinlinger@gmail.com> Co-authored-by: Luc Caspar <casparluc@users.noreply.github.com> Co-authored-by: R. David Dunphy <rdd.dunphy@gmail.com> Co-authored-by: Artem Vasenin <vasart169@gmail.com> Co-authored-by: Nicolas Serafini <serafini.nicolas@gmail.com>
2021-05-30 23:46:01 +00:00
{ [[ $runsuspend ]] && systemctl suspend; }
2021-09-05 17:10:09 +00:00
exit 0