|
|
|
@ -9,9 +9,9 @@ import argparse
|
|
|
|
|
import i3ipc
|
|
|
|
|
import signal
|
|
|
|
|
import sys
|
|
|
|
|
from functools import partial
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def on_window_focus(ipc, event):
|
|
|
|
|
def on_window_focus(inactive_opacity, ipc, event):
|
|
|
|
|
global prev_focused
|
|
|
|
|
global prev_workspace
|
|
|
|
|
|
|
|
|
@ -21,7 +21,7 @@ def on_window_focus(ipc, event):
|
|
|
|
|
if focused.id != prev_focused.id: # https://github.com/swaywm/sway/issues/2859
|
|
|
|
|
focused.command("opacity 1")
|
|
|
|
|
if workspace == prev_workspace:
|
|
|
|
|
prev_focused.command("opacity " + transparency_val)
|
|
|
|
|
prev_focused.command("opacity " + inactive_opacity)
|
|
|
|
|
prev_focused = focused
|
|
|
|
|
prev_workspace = workspace
|
|
|
|
|
|
|
|
|
@ -60,5 +60,5 @@ if __name__ == "__main__":
|
|
|
|
|
window.command("opacity " + args.opacity)
|
|
|
|
|
for sig in [signal.SIGINT, signal.SIGTERM]:
|
|
|
|
|
signal.signal(sig, lambda signal, frame: remove_opacity(ipc))
|
|
|
|
|
ipc.on("window::focus", on_window_focus)
|
|
|
|
|
ipc.main()
|
|
|
|
|
ipc.on("window::focus", partial(on_window_focus, args.opacity))
|
|
|
|
|
ipc.main()
|