fix on file type (after protobuf change), improve current row select,
still has bug for detecting file type under Windows
This commit is contained in:
parent
a474f904b1
commit
b0ddd3d543
@ -180,6 +180,8 @@ class JobTable: Reactor.Component {
|
||||
if (!err) {
|
||||
handler.remove_dir(job.id, job.path, job.is_remote);
|
||||
refreshDir(job.is_remote);
|
||||
if (is_remote) file_transfer.remote_folder_view.table.resetCurrent();
|
||||
else file_transfer.local_folder_view.table.resetCurrent();
|
||||
}
|
||||
} else if (!job.no_confirm) {
|
||||
handler.confirm_delete_files(id, job.file_num + 1);
|
||||
@ -337,6 +339,7 @@ class FolderView : Reactor.Component {
|
||||
if (type > 3) return;
|
||||
var name = row[1].text;
|
||||
var path = name == ".." ? getParentPath(me.is_remote, me.fd.path) : me.joinPath(name);
|
||||
me.table.resetCurrent();
|
||||
me.goto(path, true);
|
||||
}
|
||||
this.get_updated();
|
||||
@ -605,6 +608,8 @@ function confirmDelete(path, is_remote) {
|
||||
</div>", function(res=null) {
|
||||
if (res) {
|
||||
handler.remove_file(jobIdCounter, path, 0, is_remote);
|
||||
if (is_remote) file_transfer.remote_folder_view.table.resetCurrent();
|
||||
else file_transfer.local_folder_view.table.resetCurrent();
|
||||
deleting_single_file_jobs[jobIdCounter] = { is_remote: is_remote, path: path };
|
||||
jobIdCounter += 1;
|
||||
}
|
||||
|
@ -43,6 +43,15 @@ class Grid: Behavior {
|
||||
{
|
||||
return this.$(thead>:current); // return current cell in header row
|
||||
}
|
||||
|
||||
function resetCurrent() {
|
||||
var prev = this.getCurrentRow();
|
||||
if (prev)
|
||||
{
|
||||
prev.state.current = false; // drop state flag
|
||||
prev.state.checked = false; // drop state flag
|
||||
}
|
||||
}
|
||||
|
||||
function setCurrentRow(row, reason = #by_code, doubleClick = false)
|
||||
{
|
||||
@ -53,8 +62,10 @@ class Grid: Behavior {
|
||||
{
|
||||
if (prev === row && !doubleClick) return; // already here, nothing to do.
|
||||
prev.state.current = false; // drop state flag
|
||||
prev.state.checked = false; // drop state flag
|
||||
}
|
||||
row.state.current = true;
|
||||
row.state.checked = true;
|
||||
row.scrollToView();
|
||||
|
||||
if (doubleClick)
|
||||
@ -71,8 +82,10 @@ class Grid: Behavior {
|
||||
{
|
||||
if (prev === col) return; // already here, nothing to do.
|
||||
prev.state.current = false; // drop state flag
|
||||
prev.state.current = false; // drop state flag
|
||||
}
|
||||
col.state.current = true; // set state flag
|
||||
row.state.checked = true;
|
||||
col.scrollToView();
|
||||
this.onHeaderClick(col);
|
||||
}
|
||||
|
@ -1759,7 +1759,8 @@ fn make_fd(id: i32, entries: &Vec<FileEntry>, only_count: bool) -> Value {
|
||||
}
|
||||
let mut e = Value::map();
|
||||
e.set_item("name", entry.name.to_owned());
|
||||
e.set_item("type", entry.entry_type.value());
|
||||
let tmp = entry.entry_type.value();
|
||||
e.set_item("type", if tmp == 0 { 1 } else { tmp });
|
||||
e.set_item("time", entry.modified_time as f64);
|
||||
e.set_item("size", entry.size as f64);
|
||||
a.push(e);
|
||||
|
Loading…
x
Reference in New Issue
Block a user