Revert "-make sure single select after multi select works better"
This reverts commit f909634832
.
It caused various regressions (#4556 and #4607).
This commit is contained in:
parent
c0df7da2ca
commit
9ed2084b42
@ -278,7 +278,6 @@ void ItemList::remove_item(int p_idx){
|
|||||||
items.remove(p_idx);
|
items.remove(p_idx);
|
||||||
update();
|
update();
|
||||||
shape_changed=true;
|
shape_changed=true;
|
||||||
defer_select_single=-1;
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -289,7 +288,6 @@ void ItemList::clear(){
|
|||||||
current=-1;
|
current=-1;
|
||||||
ensure_selected_visible=false;
|
ensure_selected_visible=false;
|
||||||
update();
|
update();
|
||||||
defer_select_single=-1;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -367,20 +365,6 @@ Size2 ItemList::get_min_icon_size() const {
|
|||||||
|
|
||||||
|
|
||||||
void ItemList::_input_event(const InputEvent& p_event) {
|
void ItemList::_input_event(const InputEvent& p_event) {
|
||||||
|
|
||||||
if (defer_select_single>=0 && p_event.type==InputEvent::MOUSE_MOTION) {
|
|
||||||
defer_select_single=-1;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (defer_select_single>=0 && p_event.type==InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index==BUTTON_LEFT && !p_event.mouse_button.pressed) {
|
|
||||||
|
|
||||||
select(defer_select_single,true);
|
|
||||||
|
|
||||||
emit_signal("multi_selected",defer_select_single,true);
|
|
||||||
defer_select_single=-1;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (p_event.type==InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index==BUTTON_LEFT && p_event.mouse_button.pressed) {
|
if (p_event.type==InputEvent::MOUSE_BUTTON && p_event.mouse_button.button_index==BUTTON_LEFT && p_event.mouse_button.pressed) {
|
||||||
|
|
||||||
const InputEventMouseButton &mb = p_event.mouse_button;
|
const InputEventMouseButton &mb = p_event.mouse_button;
|
||||||
@ -434,13 +418,7 @@ void ItemList::_input_event(const InputEvent& p_event) {
|
|||||||
emit_signal("multi_selected",i,true);
|
emit_signal("multi_selected",i,true);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
if (!mb.mod.command && select_mode==SELECT_MULTI && items[i].selectable && items[i].selected) {
|
|
||||||
defer_select_single=i;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
bool selected = !items[i].selected;
|
bool selected = !items[i].selected;
|
||||||
|
|
||||||
select(i,select_mode==SELECT_SINGLE || !mb.mod.command);
|
select(i,select_mode==SELECT_SINGLE || !mb.mod.command);
|
||||||
if (selected) {
|
if (selected) {
|
||||||
if (select_mode==SELECT_SINGLE) {
|
if (select_mode==SELECT_SINGLE) {
|
||||||
@ -1164,7 +1142,6 @@ ItemList::ItemList() {
|
|||||||
current_columns=1;
|
current_columns=1;
|
||||||
search_time_msec=0;
|
search_time_msec=0;
|
||||||
ensure_selected_visible=false;
|
ensure_selected_visible=false;
|
||||||
defer_select_single=-1;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,8 +59,6 @@ private:
|
|||||||
int max_columns;
|
int max_columns;
|
||||||
Size2 min_icon_size;
|
Size2 min_icon_size;
|
||||||
|
|
||||||
int defer_select_single;
|
|
||||||
|
|
||||||
void _scroll_changed(double);
|
void _scroll_changed(double);
|
||||||
void _input_event(const InputEvent& p_event);
|
void _input_event(const InputEvent& p_event);
|
||||||
protected:
|
protected:
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
#include "os/thread_safe.h"
|
#include "os/thread_safe.h"
|
||||||
class FileAccess;
|
class FileAccess;
|
||||||
|
|
||||||
struct EditorProgressBG;
|
class EditorProgressBG;
|
||||||
class EditorFileSystemDirectory : public Object {
|
class EditorFileSystemDirectory : public Object {
|
||||||
|
|
||||||
OBJ_TYPE( EditorFileSystemDirectory,Object );
|
OBJ_TYPE( EditorFileSystemDirectory,Object );
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
|
|
||||||
class EditorExportPlatform;
|
class EditorExportPlatform;
|
||||||
class FileAccess;
|
class FileAccess;
|
||||||
struct EditorProgress;
|
class EditorProgress;
|
||||||
|
|
||||||
class EditorImportPlugin : public Reference {
|
class EditorImportPlugin : public Reference {
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user