From 16ff46476517fcf2773b2cb781163d50470b7533 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Sun, 29 Apr 2018 22:05:24 +0200 Subject: [PATCH] add monitor list to hooks by environment variables --- README.md | 7 ++++++- autorandr.py | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7518128..4b25a91 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,7 @@ Contributors to this version of autorandr are: * Adrián López * andersonjacob * Alexander Wirt +* Brice Waegeneire * Chris Dunder * Christoph Gysin * Daniel Hahler @@ -189,7 +190,11 @@ If you switch back from `docked` to `mobile`, `~/.config/autorandr/postswitch` is executed instead of the `mobile` specific `postswitch`. In these scripts, some of autorandr's state is exposed as environment variables -prefixed with `AUTORANDR_`. The most useful one is `$AUTORANDR_CURRENT_PROFILE`. +prefixed with `AUTORANDR_`, such as: +- `AUTORANDR_CURRENT_PROFILE` +- `AUTORANDR_CURRENT_PROFILES` +- `AUTORANDR_PROFILE_FOLDER` +- `AUTORANDR_MONITORS` If you experience issues with xrandr being executed too early after connecting a new monitor, then you can use a `predetect` script to delay the execution. diff --git a/autorandr.py b/autorandr.py index 57943f7..391f356 100755 --- a/autorandr.py +++ b/autorandr.py @@ -1161,7 +1161,11 @@ def main(argv): try: profile_folder = os.path.join(profile_path, options["--save"]) save_configuration(profile_folder, config) - exec_scripts(profile_folder, "postsave", {"CURRENT_PROFILE": options["--save"], "PROFILE_FOLDER": profile_folder}) + exec_scripts(profile_folder, "postsave", { + "CURRENT_PROFILE": options["--save"], + "PROFILE_FOLDER": profile_folder, + "MONITORS": ":".join(load_config.keys()), + }) except Exception as e: raise AutorandrException("Failed to save current configuration as profile '%s'" % (options["--save"],), e) print("Saved current configuration as profile '%s'" % options["--save"]) @@ -1281,6 +1285,7 @@ def main(argv): script_metadata = { "CURRENT_PROFILE": load_profile, "PROFILE_FOLDER": scripts_path, + "MONITORS": ":".join(load_config.keys()), } exec_scripts(scripts_path, "preswitch", script_metadata) if "--debug" in options: -- 2.39.2