
When [`drag_and_drop_selection` is true](https://zed.dev/docs/configuring-zed#drag-and-drop-selection), users can make a selection in the buffer and then drag and drop it to a new location. However, the editor forces users to wait 300ms after mouse down before dragging. If users try to drag before this delay has elapsed, they will create a new text selection instead, which can create the impression that drag and drop does not work. I made two changes to improve the UX of this feature: * If users do not want a delay before drag and drop is enabled, they can set the `drag_and_drop_selection.delay_ms` setting to 0. * If the user has done a mouse down on a text selection, the cursor changes to a copy affordance as soon as the configured delay has elapsed, rather than waiting for them to start dragging. This way they don't need to guess at when the delay has elapsed. The default settings for this feature are now: ``` "drag_and_drop_selection": { "enabled": true, "delay_ms": 300 } ``` Closes #33915 Before: https://github.com/user-attachments/assets/7b2f986f-9c67-4b2b-a10e-757c3e9c934b After: https://github.com/user-attachments/assets/726d0dbf-e58b-41ad-93d2-1a758640b422 Release Notes: - Migrate `drag_and_drop_selection` setting to `drag_and_drop_selection.enabled`. - Add `drag_and_drop_selection.delay_ms` setting to configure the delay that must elapse before drag and drop is allowed. - Show a ready to drag cursor affordance as soon as the delay has elapsed --------- Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
101 lines
1.8 KiB
Rust
101 lines
1.8 KiB
Rust
pub(crate) mod m_2025_01_02 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_01_29 {
|
|
mod keymap;
|
|
mod settings;
|
|
|
|
pub(crate) use keymap::KEYMAP_PATTERNS;
|
|
pub(crate) use settings::{SETTINGS_PATTERNS, replace_edit_prediction_provider_setting};
|
|
}
|
|
|
|
pub(crate) mod m_2025_01_30 {
|
|
mod keymap;
|
|
mod settings;
|
|
|
|
pub(crate) use keymap::KEYMAP_PATTERNS;
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_03_03 {
|
|
mod keymap;
|
|
|
|
pub(crate) use keymap::KEYMAP_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_03_06 {
|
|
mod keymap;
|
|
|
|
pub(crate) use keymap::KEYMAP_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_03_29 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_04_15 {
|
|
mod keymap;
|
|
mod settings;
|
|
|
|
pub(crate) use keymap::KEYMAP_PATTERNS;
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_04_21 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_04_23 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_05_05 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_05_08 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_05_29 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_06_16 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_06_25 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_06_27 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|
|
|
|
pub(crate) mod m_2025_07_08 {
|
|
mod settings;
|
|
|
|
pub(crate) use settings::SETTINGS_PATTERNS;
|
|
}
|