Skip to content

Any configuration in combination with mouse = "Left" is silently ignored and the default used instead #8473

Open
@Phx01

Description

@Phx01

Platform
Fedora Linux 41
Cinnamon Desktop 6.4.6 (X11)

Alacritty
0.15.0 (platform built-in repositories)

Relevant Configuration (~/.config/alacritty/alacritty.toml)

[mouse]
...
bindings = [
	# copy / paste
	{ mouse = "Left",    mods = "Shift",   action = "ExpandSelection"},
	{ mouse = "Left",    mods = "Alt",     action = "Copy" },
	{ mouse = "Right",   mods = "Alt",     action = "Paste" },
	# font size / zoom
	{ mouse = "Forward", mods = "Control", action = "IncreaseFontSize" },
	{ mouse = "Back",    mods = "Control", action = "DecreaseFontSize" },
	{ mouse = "Middle",  mods = "Control", action = "ResetFontSize" },
]

Event Output (when using alacritty --print-events)

[12.949720321s] [INFO ] [alacritty_winit_event] KeyboardInput { device_id: DeviceId(X(DeviceId(3))), event: KeyEvent { physical_key: Code(AltLeft), logical_key: Named(Alt), text: None, location: Left, state: Pressed, repeat: false, platform_specific: KeyEventExtra { text_with_all_modifiers: None, key_without_modifiers: Named(Alt) } }, is_synthetic: false }
[12.949808167s] [INFO ] [alacritty_winit_event] ModifiersChanged(Modifiers { state: ModifiersState(ALT), pressed_mods: ModifiersKeys(0x0) })
[12.949831156s] [INFO ] [alacritty_winit_event] About to wait
[14.729044668s] [INFO ] [alacritty_winit_event] MouseInput { device_id: DeviceId(X(DeviceId(2))), state: Pressed, button: Left }
[14.729136600s] [INFO ] [alacritty_winit_event] ModifiersChanged(Modifiers { state: ModifiersState(ALT), pressed_mods: ModifiersKeys(0x0) })
[14.729160990s] [INFO ] [alacritty_winit_event] About to wait
[14.729471418s] [INFO ] [alacritty_winit_event] RedrawRequested
[14.731042577s] [INFO ] [alacritty_winit_event] About to wait
[14.731132492s] [INFO ] [alacritty_winit_event] Event { window_id: Some(WindowId(96468995)), payload: Frame }
[14.731150716s] [INFO ] [alacritty_winit_event] About to wait
[14.808690881s] [INFO ] [alacritty_winit_event] MouseInput { device_id: DeviceId(X(DeviceId(2))), state: Released, button: Left }
[14.808758833s] [INFO ] [alacritty_winit_event] ModifiersChanged(Modifiers { state: ModifiersState(ALT), pressed_mods: ModifiersKeys(0x0) })
[14.808781303s] [INFO ] [alacritty_winit_event] About to wait
[15.584713222s] [INFO ] [alacritty_winit_event] KeyboardInput { device_id: DeviceId(X(DeviceId(3))), event: KeyEvent { physical_key: Code(AltLeft), logical_key: Named(Alt), text: None, location: Left, state: Released, repeat: false, platform_specific: KeyEventExtra { text_with_all_modifiers: None, key_without_modifiers: Named(Alt) } }, is_synthetic: false }
[15.584767953s] [INFO ] [alacritty_winit_event] ModifiersChanged(Modifiers { state: ModifiersState(0x0), pressed_mods: ModifiersKeys(0x0) })

This shows that the button and key is actually recognized and not intercepted elsewhere.

It appears that the configuration for anything related to the left mouse button is ignored (using the application's defaults instead). Any other button (as shown in "Relevant Configuration" above) works just as expected. The same left mouse button lines starts working when s/Left/Middle/ or any other valid mouse button.
I even tried disabling those buttons beforehand by adding action = "None" for them, but it did not do anything either.

Is this expected behavior? If so, why?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions