From d26a0c900e2c3340d72d9509101508e7a914a0d7 Mon Sep 17 00:00:00 2001 From: webbrain-one <295484252+webbrain-one@users.noreply.github.com> Date: Tue, 11 Aug 2026 05:38:06 +0300 Subject: [PATCH] [Proceeds] Fix F1 shortcut conflict in Chrome when follow focus is enabled Closes #24. Prevents Chrome 57+ from opening its native help dialog alongside the extension's field help when "follow focus" is active. Patch generated by qwen3.6-35b-a3b via local API. --- .../widgetset/client/ui/ContextHelpConnector.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/addon/src/main/java/org/vaadin/jonatan/contexthelp/widgetset/client/ui/ContextHelpConnector.java b/addon/src/main/java/org/vaadin/jonatan/contexthelp/widgetset/client/ui/ContextHelpConnector.java index e9f41e9..ee32f78 100644 --- a/addon/src/main/java/org/vaadin/jonatan/contexthelp/widgetset/client/ui/ContextHelpConnector.java +++ b/addon/src/main/java/org/vaadin/jonatan/contexthelp/widgetset/client/ui/ContextHelpConnector.java @@ -1,5 +1,8 @@ package org.vaadin.jonatan.contexthelp.widgetset.client.ui; +import com.google.gwt.event.dom.client.KeyDownEvent; +import com.google.gwt.event.dom.client.KeyDownHandler; + import com.google.gwt.core.client.Scheduler; import com.google.gwt.core.client.Scheduler.ScheduledCommand; import com.vaadin.client.ServerConnector; @@ -30,6 +33,17 @@ protected void extend(ServerConnector serverConnector) { contextHelp.setHelpKeyCode(getState().helpKey); contextHelp.setHideOnBlur(getState().hideOnBlur); } + if (getState().followFocus) { + serverConnector.getWidget().addKeyDownHandler(new KeyDownHandler() { + @Override + public void onKeyDown(KeyDownEvent event) { + if (event.getKeyCode() == ShortcutAction.KeyCode.F1) { + event.preventDefault(); + event.stopPropagation(); + } + } + }); + } } @Override