Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Configure clean up actions dynamically #4649

Merged
merged 1 commit into from
Feb 17, 2024
Merged

Configure clean up actions dynamically #4649

merged 1 commit into from
Feb 17, 2024

Commits on Feb 17, 2024

  1. Configure clean up actions dynamically

    Some actions may be performed when scrcpy exits, currently:
     - disable "show touches"
     - restore "stay on while plugged in"
     - power off screen
     - restore "power mode" (to disable "turn screen off")
    
    They are performed from a separate process so that they can be executed
    even when scrcpy-server is killed (e.g. if the device is unplugged).
    
    The clean up actions to perform were configured when scrcpy started.
    Given that there is no method to read the current "power mode" in
    Android, and that "turn screen off" can be applied at any time using an
    scrcpy shortcut, there was no way to determine if "power mode" had to be
    restored on exit. Therefore, it was always restored to "normal", even
    when not necessary.
    
    However, setting the "power mode" is quite fragile on some devices, and
    may cause some issues, so it is preferable to call it only when
    necessary (when "turn screen off" has actually been called).
    
    For that purpose, make the scrcpy-server main process and the clean up
    process communicate the actions to perform over a pipe (stdin/stdout),
    so that they can be changed dynamically. In particular, when the power
    mode is changed at runtime, notify the clean up process.
    
    Refs 1beec99
    Refs #4456 <#4456>
    Refs #4624 <#4624>
    PR #4649 <#4649>
    rom1v committed Feb 17, 2024
    Configuration menu
    Copy the full SHA
    9efa162 View commit details
    Browse the repository at this point in the history