From 34cadfc8764aecacb27a51d580603122a1f96740 Mon Sep 17 00:00:00 2001 From: humbletim Date: Thu, 4 May 2017 11:22:30 -0400 Subject: [PATCH] sort RunningScripts by caseless filename --- .../resources/qml/hifi/dialogs/RunningScripts.qml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/interface/resources/qml/hifi/dialogs/RunningScripts.qml b/interface/resources/qml/hifi/dialogs/RunningScripts.qml index d95dbc2e55..832f3d324b 100644 --- a/interface/resources/qml/hifi/dialogs/RunningScripts.qml +++ b/interface/resources/qml/hifi/dialogs/RunningScripts.qml @@ -54,7 +54,20 @@ ScrollingWindow { } function updateRunningScripts() { + function simplify(path) { + // trim URI querystring/fragment + path = (path+'').replace(/[#?].*$/,''); + // normalize separators and grab last path segment (ie: just the filename) + path = path.replace(/\\/g, '/').split('/').pop(); + // return lowercased because we want to sort mnemonically + return path.toLowerCase(); + } var runningScripts = ScriptDiscoveryService.getRunning(); + runningScripts.sort(function(a,b) { + a = simplify(a.path); + b = simplify(b.path); + return a < b ? -1 : a > b ? 1 : 0; + }); runningScriptsModel.clear() for (var i = 0; i < runningScripts.length; ++i) { runningScriptsModel.append(runningScripts[i]);