X-Git-Url: http://ecere.com/cgi-bin/gitweb.cgi?p=ede;a=blobdiff_plain;f=explorer%2Fsrc%2FExplorerWindow.ec;h=eb690c357346f4d565071809d44ed97c94a6e34e;hp=d22c0d260c93a454e80a4d11433c0ef9380cb710;hb=HEAD;hpb=bc25e0084823e36a8403b14a96985459328cbe3c;ds=inline diff --git a/explorer/src/ExplorerWindow.ec b/explorer/src/ExplorerWindow.ec index d22c0d2..eb690c3 100644 --- a/explorer/src/ExplorerWindow.ec +++ b/explorer/src/ExplorerWindow.ec @@ -532,7 +532,7 @@ class ExplorerWindow : Window ToggleIconToolButton viewDetails { toolBar, this, icon = viewDetails, toolTip = "Toggle Listing Details"; bool NotifyClicked(Button button, int x, int y, Modifiers mods) { - view.details = true; + view.details = button.checked; view.treeBranches = false; view.Refresh(); view.Activate(); @@ -1207,24 +1207,27 @@ class ExplorerWindow : Window void UpdateHistoryItem(FileSystemBoxSelection selection) { - HistoryItem item = history[historyIndex]; - - if(!item.holdRecordingSelection) + if(history.count > historyIndex) // TODO: Review why this would happen... { - if(selection.node || (selection.nodes && selection.nodes.count)) + HistoryItem item = history[historyIndex]; + + if(!item.holdRecordingSelection) { - item.selection.Free(); - if(selection.nodes.count) + if(selection.node || (selection.nodes && selection.nodes.count)) { - for(node : selection.nodes) - item.selection.Add(CopyString(node.path)); + item.selection.Free(); + if(selection.nodes.count) + { + for(node : selection.nodes) + item.selection.Add(CopyString(node.path)); + } + else if(selection.node) + item.selection.Add(CopyString(selection.node.path)); } - else if(selection.node) - item.selection.Add(CopyString(selection.node.path)); } + else + item.holdRecordingSelection = false; } - else - item.holdRecordingSelection = false; } void SearchStart() @@ -1387,6 +1390,7 @@ class ExplorerWindow : Window //userMode = true; addressBar.path = view.path; ReadyTree(); + view.Refresh(); return true; }