Disable Grok Auto‑Focus

Prevent Grok from programmatically moving focus anywhere

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

You will need to install an extension such as Tampermonkey to install this script.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name         Disable Grok Auto‑Focus
// @description  Prevent Grok from programmatically moving focus anywhere
// @match        *://grok.com/*
// @run-at       document-start
// @version 0.0.1.20250516075924
// @namespace https://greasyfork.org/users/1435046
// ==/UserScript==

(function() {
  'use strict';

  // Override the element focus method so that any programmatic focus() calls do nothing
  const originalElementFocus = HTMLElement.prototype.focus;
  HTMLElement.prototype.focus = function() {
    // no-op: swallow all programmatic focus
  };

  // Also override window.focus in case Grok invokes it
  const originalWindowFocus = window.focus;
  window.focus = function() {
    // no-op
  };

  // If you ever need to restore normal focus behavior, you can do:
  // HTMLElement.prototype.focus = originalElementFocus;
  // window.focus = originalWindowFocus;
})();