Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Tree/Table on Win32 receive SWT.MouseHorizontalWheel but scroll vertically instead of horizontally

Abierto
#3,462 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
55/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
java
Área
desktop

Línea de trabajo

Start by reading Scrollable.WM_MOUSEHWHEEL() and the wmScrollWheel(..., true) path mentioned in the report, then compare how Tree and StyledText handle horizontal wheel events. Reproduce with a Tree or Table using SWT.H_SCROLL on Win32 and check whether horizontal input scrolls horizontally rather than vertically. The report does not name a test file.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Environment:

  • Windows 10
  • Eclipse Platform 4.40
  • SWT Win32
  • Logitech MX Master 3S (thumb wheel)

Observed behavior:

When using the horizontal mouse wheel over SWT Tree and Table controls, SWT correctly generates SWT.MouseHorizontalWheel events.

However, the controls do not scroll horizontally. Instead, the content scrolls vertically, behaving as if a normal mouse wheel event had been received.

The same horizontal wheel works as expected in StyledText controls.

Reproduction:

  1. Create a Tree or Table with SWT.H_SCROLL.
  2. Ensure horizontal scrolling is possible.
  3. Move the horizontal wheel (thumb wheel on MX Master 3S).

Expected result:

The Tree/Table content scrolls horizontally.

Actual result:

The content scrolls vertically.

Additional observations:

The following SWT event is received:

SWT.MouseHorizontalWheel

For example:

HORIZONTAL
count: -3
class: class org.eclipse.swt.widgets.Tree

The control has a valid horizontal scrollbar:

org.eclipse.swt.widgets.Tree hBar=ScrollBar {}

The same behavior occurs with:

  • Tree
  • Table
  • TreeViewer
  • TableViewer
  • CommonNavigator

StyledText behaves correctly and scrolls horizontally.

Source investigation:

While debugging SWT Win32 sources I found that
Scrollable.WM_MOUSEHWHEEL() delegates to:

wmScrollWheel(..., true)

For Tree controls, the 'update' parameter is false because
(state & CANVAS) == 0.

Consequently execution follows the non-update code path:

long code = callWindowProc(
    handle,
    OS.WM_MOUSEWHEEL,
    wParam,
    lParam);

which appears to invoke WM_MOUSEWHEEL even for WM_MOUSEHWHEEL processing.

I am not yet sure whether this is the root cause, but it seemed noteworthy enough to mention.

Lenguaje dominante
Java
Estrellas
202
Forks
206
Merge medio
23 h 40 min
PR fusionados (30 d)
103

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de eclipse-platform/eclipse.platform.swt

Todos los issues de eclipse-platform/eclipse.platform.swt

Issues similares

Más issues de Java

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.