[macOS] Combo allows the Enter press to complete IME to trigger default button
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 55/100
Línea de trabajo
Start with the macOS implementation of SWT Combo and its keyboard/input-method event handling; the issue does not name a source file or test. Reproduce with the supplied Java snippet using the Japanese - Kana layout, then check that Enter accepts an active IME composition without activating the shell's default button, while Enter with no popup still activates it.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Describe the bug
When using the "Japanese - Kana" keyboard layout, a popup with some suggestions may occur. Pressing Enter there should accept the selection to produce some "Japanese characters/words" in the underlying control. Nothing else. However, doing that with an editable Combo pressing Enter also triggers the default button in that shell which should not be possible while a IME popup is still visible.
To Reproduce
- run this snippet
import org.eclipse.swt.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;
public class ComboBoxTest {
public static void main(String[] args) {
final Display display = new Display();
final Shell shell = new Shell(display);
shell.setLayout(new GridLayout(1, false));
final Combo combo = new Combo(shell, SWT.BORDER);
combo.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
final Button button = new Button(shell, SWT.PUSH);
button.setText("Push me!");
button.setLayoutData(new GridData(SWT.END, SWT.FILL, false, false));
shell.setDefaultButton(button);
button.addListener(SWT.Selection, event -> System.out.println("Button pressed"));
shell.setSize(400, 300);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
}
- select "Japanese - Kana" keyboard layout
- type some characters, e.g. abc until a popup occurs; press Enter; a blue underline occurs, press Enter again
Expected behavior
The character(s) shown in the popup should be accepted. Only when no IME popup is shown, an Enter press must trigger a default button.
Screenshots
https://github.com/user-attachments/assets/3457ca4d-b6e7-4097-bcfa-ddab9c58c079
Environment:
- Select the platform(s) on which the behavior is seen:
- All OS
- Windows
- Linux
- macOS
- Lenguaje dominante
- Java
- Estrellas
- 202
- Forks
- 206
- Merge medio
- 14 h 7 min
- PR fusionados (30 d)
- 103
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de eclipse-platform/eclipse.platform.swt
-
`SWT_AWT.initFrame` takes `(long, String)` in Java; the GTK native declares no `className` and the Cocoa native types it `const char *`Posiblemente ocupada @GreenFuze la tomó hace 2 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
eclipse-platform/eclipse.platform.swt#3665 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
eclipse-platform/eclipse.platform.swt#3546 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
eclipse-platform/eclipse.platform.swt#3428 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 75/100
eclipse-platform/eclipse.platform.swt#3336 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
eclipse-platform/eclipse.platform.swt#3718 ·
Los mantenedores suelen responder en 1 día
Todos los issues de eclipse-platform/eclipse.platform.swt
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
bug new windows
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
iOS podspec depends on `React-Codegen`, which resolves to an unrelated pod on CocoaPods trunkAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
GantMan/jail-monkey#380 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
objectionary/jucs#145 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
objectionary/lints#1559 ·
Los mantenedores suelen responder en 2 días