diff options
-rw-r--r-- | desktop/core_window.h | 1 | ||||
-rw-r--r-- | desktop/tree.c | 3 | ||||
-rw-r--r-- | desktop/treeview.c | 1 |
3 files changed, 5 insertions, 0 deletions
diff --git a/desktop/core_window.h b/desktop/core_window.h index ee7254b45..8af893778 100644 --- a/desktop/core_window.h +++ b/desktop/core_window.h @@ -30,6 +30,7 @@ struct core_window; typedef enum { CORE_WINDOW_DRAG_NONE, CORE_WINDOW_DRAG_SELECTION, + CORE_WINDOW_DRAG_TEXT_SELECTION, CORE_WINDOW_DRAG_MOVE } core_window_drag_status; diff --git a/desktop/tree.c b/desktop/tree.c index 0e864f991..ec5f09fc4 100644 --- a/desktop/tree.c +++ b/desktop/tree.c @@ -233,6 +233,9 @@ static void treeview_test_drag_status(struct core_window *cw, case CORE_WINDOW_DRAG_MOVE: tree->drag = TREE_MOVE_DRAG; + + case CORE_WINDOW_DRAG_TEXT_SELECTION: + tree->drag = TREE_TEXTAREA_DRAG; break; default: diff --git a/desktop/treeview.c b/desktop/treeview.c index ac65b0d38..a63adef47 100644 --- a/desktop/treeview.c +++ b/desktop/treeview.c @@ -2413,6 +2413,7 @@ static void treeview_textarea_callback(void *data, struct textarea_msg *msg) /* Textarea drag started */ tree->drag.type = TV_DRAG_TEXTAREA; } + tree->cw_t->drag_status(tree->cw_h, tree->drag.type); break; case TEXTAREA_MSG_REDRAW_REQUEST: |