Disable Grok Auto‑Focus

Prevent Grok from programmatically moving focus anywhere

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey, Greasemonkey или Violentmonkey.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey или Violentmonkey.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например 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;
})();