Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Defines global variables. | 5 // Defines global variables. |
| 6 var commands = TaskManagerCommands; | 6 var commands = TaskManagerCommands; |
| 7 var taskmanager = undefined; // This will be instantiated in main.js. | 7 var taskmanager = undefined; // This will be instantiated in main.js. |
| 8 | 8 |
| 9 /** | 9 /** |
| 10 * Invoked when a range of items has changed. | 10 * Invoked when a range of items has changed. |
| 11 */ | 11 */ |
| 12 function taskChanged(start, length, tasks) { | 12 function taskChanged(start, length, tasks) { |
| 13 var task = {type: 'change', start: start, length: length, tasks: tasks}; | 13 var task = {type: 'change', start: start, length: length, tasks: tasks}; |
| 14 | 14 |
| 15 if (taskmanager) taskmanager.processTaskChange(task); | 15 if (taskmanager) taskmanager.processTaskChange(task); |
| 16 } | 16 } |
| 17 | 17 |
| 18 var cachedEnabledColumns; | |
|
James Hawkins
2012/03/01 20:03:09
Document variable.
yoshiki
2012/03/02 08:01:14
Done.
| |
| 19 function getEnabledColumns() { | |
|
James Hawkins
2012/03/01 20:03:09
Document method.
yoshiki
2012/03/02 08:01:14
Done.
| |
| 20 // Use the cache after the second time since access to localStorage is slow. | |
| 21 if (cachedEnabledColumns) | |
| 22 return cachedEnabledColumns; | |
| 23 | |
| 24 var json = window.localStorage.getItem(ENABLED_COLUMNS_KEY); | |
| 25 try { | |
| 26 cachedEnabledColumns = JSON.parse(json) || {}; | |
| 27 } catch (e) { | |
| 28 cachedEnabledColumns = {}; | |
| 29 } | |
| 30 for (var i = 0; i < DEFAULT_COLUMNS.length; i++) { | |
| 31 if (typeof(cachedEnabledColumns[DEFAULT_COLUMNS[i][0]]) == 'undefined') | |
| 32 cachedEnabledColumns[DEFAULT_COLUMNS[i][0]] = DEFAULT_COLUMNS[i][3]; | |
| 33 } | |
| 34 return cachedEnabledColumns; | |
| 35 } | |
| 36 | |
| 37 function isColumnEnabled(columnId) { | |
|
James Hawkins
2012/03/01 20:03:09
Document method.
yoshiki
2012/03/02 08:01:14
Done.
| |
| 38 return (getEnabledColumns())[columnId]; | |
| 39 } | |
| 40 | |
| 41 function setEnabledColumns(enabledColumns) { | |
|
James Hawkins
2012/03/01 20:03:09
Document method.
yoshiki
2012/03/02 08:01:14
Done.
| |
| 42 cachedEnabledColumns = enabledColumns; | |
| 43 var json = JSON.stringify(enabledColumns); | |
| 44 window.localStorage.setItem(ENABLED_COLUMNS_KEY, json); | |
| 45 } | |
| 46 | |
| 18 // Enable the taskmanager model before the loading of scripts. | 47 // Enable the taskmanager model before the loading of scripts. |
| 19 (function () { | 48 (function () { |
| 20 for (var i = 0; i < DEFAULT_COLUMNS.length; i++) { | 49 for (var i = 0; i < DEFAULT_COLUMNS.length; i++) { |
| 21 if (DEFAULT_COLUMNS[i][3]) | 50 var columnId = DEFAULT_COLUMNS[i][0]; |
| 22 commands.setUpdateColumn(DEFAULT_COLUMNS[i][0], true); | 51 if (isColumnEnabled(columnId)) |
| 52 commands.setUpdateColumn(columnId, true); | |
| 23 } | 53 } |
| 24 commands.enableTaskManager(); | 54 commands.enableTaskManager(); |
| 25 commands.setUpdateColumn('canInspect', true); | 55 commands.setUpdateColumn('canInspect', true); |
| 26 commands.setUpdateColumn('canActivate', true); | 56 commands.setUpdateColumn('canActivate', true); |
| 27 })(); | 57 })(); |
| OLD | NEW |