summaryrefslogtreecommitdiffstats
path: root/zellij-server
diff options
context:
space:
mode:
authorThomas Linford <tlinford@users.noreply.github.com>2023-01-12 18:38:12 +0100
committerGitHub <noreply@github.com>2023-01-12 18:38:12 +0100
commit522790984699b36ca197749d11ad638303a072f7 (patch)
tree043771a635cf953efd1f1cb9f5d2db1f6f12a6f7 /zellij-server
parent3da1cbf95c34283091186fd54926673fe2ec10f6 (diff)
fix(mouse): selection not ending on mouse release with copy_on_select set to false (#2086)
Diffstat (limited to 'zellij-server')
-rw-r--r--zellij-server/src/tab/mod.rs17
1 files changed, 10 insertions, 7 deletions
diff --git a/zellij-server/src/tab/mod.rs b/zellij-server/src/tab/mod.rs
index 0cf3a6977..036fbd68e 100644
--- a/zellij-server/src/tab/mod.rs
+++ b/zellij-server/src/tab/mod.rs
@@ -2371,17 +2371,20 @@ impl Tab {
} else {
let relative_position = active_pane.relative_position(position);
if let PaneId::Terminal(_) = active_pane.pid() {
- if selecting && copy_on_release {
+ if selecting {
active_pane.end_selection(&relative_position, client_id);
- let selected_text = active_pane.get_selected_text();
- active_pane.reset_selection();
-
- if let Some(selected_text) = selected_text {
- self.write_selection_to_clipboard(&selected_text)
- .with_context(err_context)?;
+ if copy_on_release {
+ let selected_text = active_pane.get_selected_text();
+ active_pane.reset_selection();
+
+ if let Some(selected_text) = selected_text {
+ self.write_selection_to_clipboard(&selected_text)
+ .with_context(err_context)?;
+ }
}
}
} else {
+ // notify the release event to a plugin pane, should be renamed
active_pane.end_selection(&relative_position, client_id);
}