Screensaver Blocker

https://www.google.com/ を開いている間、スクリーンセーバーを抑止する

  1. // ==UserScript==
  2. // @name Screensaver Blocker
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description https://www.google.com/ を開いている間、スクリーンセーバーを抑止する
  6. // @author anonymous
  7. // @match https://www.google.com/
  8. // @icon https://www.google.com/s2/favicons?domain=google.com
  9. // @license public domain
  10. // @grant none
  11. // ==/UserScript==
  12.  
  13. (function() {
  14. 'use strict';
  15.  
  16. let wl;
  17. const init = async () => {
  18. if (wl && !wl.released) {
  19. return true;
  20. }
  21. wl = null;
  22. if (document.visibilityState !== 'visible') {
  23. return;
  24. }
  25. console.log('WakeLock request');
  26. try {
  27. wl = await navigator.wakeLock.request('screen');
  28. console.log(wl);
  29. wl.addEventListener('release',e => {
  30. console.log('WakeLock released ');
  31. start();
  32. });
  33. } catch (e) {
  34. console.warn('e', e);
  35. return false;
  36. }
  37. console.log(' WakeLock locked');
  38. return true;
  39. };
  40.  
  41. const start = async () => {
  42. if (!await init()) {
  43. setTimeout(start, 1000);
  44. }
  45. };
  46.  
  47. start();
  48. })();