diff options
author | yoshiki@chromium.org <yoshiki@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-25 04:39:01 +0000 |
---|---|---|
committer | yoshiki@chromium.org <yoshiki@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-25 04:39:01 +0000 |
commit | 7b56f0813b23bca66949efc7b29a713ce7521ad1 (patch) | |
tree | 087bbdd716b0836357438f1d638a26391891c5c6 /chrome/browser/resources | |
parent | bf39d2e44fa703b28aa02fe3bd34c01f5bbdcc4a (diff) | |
download | chromium_src-7b56f0813b23bca66949efc7b29a713ce7521ad1.zip chromium_src-7b56f0813b23bca66949efc7b29a713ce7521ad1.tar.gz chromium_src-7b56f0813b23bca66949efc7b29a713ce7521ad1.tar.bz2 |
WebUI Task Manager: fix the problem that sorting doesn't work in some columns.
r110943 has made sorting disabled by default, so that we cannot sort on the columns which sort-function is not defined explicitly (for example, "title").
This cl explicitly defines sorting to all the columns.
BUG=none
TEST=manual
Review URL: https://chromiumcodereview.appspot.com/9249012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119005 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/resources')
-rw-r--r-- | chrome/browser/resources/task_manager/main.js | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/chrome/browser/resources/task_manager/main.js b/chrome/browser/resources/task_manager/main.js index 5a8f518..a795587 100644 --- a/chrome/browser/resources/task_manager/main.js +++ b/chrome/browser/resources/task_manager/main.js @@ -178,26 +178,30 @@ TaskManager.prototype = { // Initializes compare functions for column sort. var dm = this.dataModel_; - // Columns to sort by value instead of itself. - var columns_sorted_by_value = [ + // List of columns to sort by its numerical value as opposed to the + // formatted value, e.g., 20480 vs. 20KB. + var COLUMNS_SORTED_BY_VALUE = [ 'cpuUsage', 'physicalMemory', 'sharedMemory', 'privateMemory', 'networkUsage', 'webCoreImageCacheSize', 'webCoreScriptsCacheSize', 'webCoreCSSCacheSize', 'fps', 'sqliteMemoryUsed', 'goatsTeleported', 'v8MemoryAllocatedSize']; - for (var i in columns_sorted_by_value) { - var column_id = columns_sorted_by_value[i]; - var compare_func = function() { - var value_id = column_id + 'Value'; + for (var i = 0; i < DEFAULT_COLUMNS.length; i++) { + var columnId = DEFAULT_COLUMNS[i][0]; + var compareFunc = (function() { + var columnIdToSort = columnId; + if (COLUMNS_SORTED_BY_VALUE.indexOf(columnId) != -1) + columnIdToSort += 'Value'; + return function(a, b) { - var aValues = a[value_id]; - var bValues = b[value_id]; + var aValues = a[columnIdToSort]; + var bValues = b[columnIdToSort]; var aValue = aValues && aValues[0] || 0; var bvalue = bValues && bValues[0] || 0; return dm.defaultValuesCompareFunction(aValue, bvalue); }; - }(); - dm.setCompareFunction(column_id, compare_func); + })(); + dm.setCompareFunction(columnId, compareFunc); } this.initTable_(); |