summaryrefslogtreecommitdiffstats
path: root/TOOLS/lua/pause-when-minimize.lua
diff options
context:
space:
mode:
Diffstat (limited to 'TOOLS/lua/pause-when-minimize.lua')
-rw-r--r--TOOLS/lua/pause-when-minimize.lua22
1 files changed, 22 insertions, 0 deletions
diff --git a/TOOLS/lua/pause-when-minimize.lua b/TOOLS/lua/pause-when-minimize.lua
new file mode 100644
index 0000000000..62e3ff5d27
--- /dev/null
+++ b/TOOLS/lua/pause-when-minimize.lua
@@ -0,0 +1,22 @@
+-- This script pauses playback when minimizing the window, and resumes playback
+-- if it's brought back again. If the player was already paused when minimizing,
+-- then try not to mess with the pause state.
+
+-- Note: currently works with X11 only.
+
+local did_minimize = false
+
+mp.observe_property("window-minimized", "bool", function(name, value)
+ local pause = mp.get_property_native("pause")
+ if value == true then
+ if pause == false then
+ mp.set_property_native("pause", true)
+ did_minimize = true
+ end
+ elseif value == false then
+ if did_minimize and (pause == true) then
+ mp.set_property_native("pause", false)
+ end
+ did_minimize = false
+ end
+end)