diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java index d87fe7aaee1..0213e0d8f13 100644 --- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java +++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java @@ -1361,7 +1361,8 @@ public boolean verifyKey(VerifyEvent e) { break; default : - if (e.keyCode != SWT.CAPS_LOCK && e.keyCode != SWT.MOD1 && e.keyCode != SWT.MOD2 && e.keyCode != SWT.MOD3 && e.keyCode != SWT.MOD4) + // On Linux ALT_GR is the level3 switch (at least on the US-INTL layout), when using 'include "level3(YOURKEY)"' in the xkb file + if (e.keyCode != SWT.CAPS_LOCK && e.keyCode != SWT.MOD1 && e.keyCode != SWT.MOD2 && e.keyCode != SWT.MOD3 && e.keyCode != SWT.MOD4 && e.keyCode != SWT.ALT_GR) hide(); return true; } diff --git a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformationPopup.java b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformationPopup.java index 07266cbc3e7..497ddf78eaf 100644 --- a/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformationPopup.java +++ b/bundles/org.eclipse.jface.text/src/org/eclipse/jface/text/contentassist/ContextInformationPopup.java @@ -770,7 +770,8 @@ private boolean contextSelectorKeyPressed(VerifyEvent e) { break; default : - if (e.keyCode != SWT.CAPS_LOCK && e.keyCode != SWT.MOD1 && e.keyCode != SWT.MOD2 && e.keyCode != SWT.MOD3 && e.keyCode != SWT.MOD4) + // On Linux ALT_GR is the level3 switch (at least on the US-INTL layout), when using 'include "level3(YOURKEY)"' in the xkb file + if (e.keyCode != SWT.CAPS_LOCK && e.keyCode != SWT.MOD1 && e.keyCode != SWT.MOD2 && e.keyCode != SWT.MOD3 && e.keyCode != SWT.MOD4 && e.keyCode != SWT.ALT_GR) hideContextSelector(); return true; } @@ -812,7 +813,8 @@ private boolean contextInfoPopupKeyPressed(KeyEvent e) { validateContextInformation(); break; default: - if (e.keyCode != SWT.CAPS_LOCK && e.keyCode != SWT.MOD1 && e.keyCode != SWT.MOD2 && e.keyCode != SWT.MOD3 && e.keyCode != SWT.MOD4) + // On Linux ALT_GR is the level3 switch (at least on the US-INTL layout), when using 'include "level3(YOURKEY)"' in the xkb file + if (e.keyCode != SWT.CAPS_LOCK && e.keyCode != SWT.MOD1 && e.keyCode != SWT.MOD2 && e.keyCode != SWT.MOD3 && e.keyCode != SWT.MOD4 && e.keyCode != SWT.ALT_GR) hideContextInfoPopup(true); break; }