| Index: chrome/browser/gtk/task_manager_gtk.h
|
| diff --git a/chrome/browser/gtk/task_manager_gtk.h b/chrome/browser/gtk/task_manager_gtk.h
|
| index 50f813c8a238ff8274db003666fdabd4c8234d06..05e77abc7b8a6f617c6285f8a364a76f6ea202b2 100644
|
| --- a/chrome/browser/gtk/task_manager_gtk.h
|
| +++ b/chrome/browser/gtk/task_manager_gtk.h
|
| @@ -10,6 +10,7 @@
|
| #include <string>
|
|
|
| #include "chrome/browser/task_manager.h"
|
| +#include "grit/generated_resources.h"
|
|
|
| class TaskManagerGtk : public TaskManagerModelObserver {
|
| public:
|
| @@ -64,6 +65,10 @@ class TaskManagerGtk : public TaskManagerModelObserver {
|
| // Opens about:memory in a new foreground tab.
|
| void OnLinkActivated();
|
|
|
| + // Compare implementation used for sorting columns.
|
| + gint CompareImpl(GtkTreeModel* tree_model, GtkTreeIter* a,
|
| + GtkTreeIter* b, int id);
|
| +
|
| // response signal handler that notifies us of dialog responses.
|
| static void OnResponse(GtkDialog* dialog, gint response_id,
|
| TaskManagerGtk* task_manager);
|
| @@ -91,6 +96,62 @@ class TaskManagerGtk : public TaskManagerModelObserver {
|
| GdkModifierType modifier,
|
| TaskManagerGtk* task_manager);
|
|
|
| + // Page sorting callback.
|
| + static gint ComparePage(GtkTreeModel* model, GtkTreeIter* a,
|
| + GtkTreeIter* b, gpointer task_manager) {
|
| + return reinterpret_cast<TaskManagerGtk*>(task_manager)->
|
| + CompareImpl(model, a, b, IDS_TASK_MANAGER_PAGE_COLUMN);
|
| + }
|
| +
|
| + // Physical memory sorting callback.
|
| + static gint ComparePhysicalMemory(GtkTreeModel* model, GtkTreeIter* a,
|
| + GtkTreeIter* b, gpointer task_manager) {
|
| + return reinterpret_cast<TaskManagerGtk*>(task_manager)->
|
| + CompareImpl(model, a, b, IDS_TASK_MANAGER_PHYSICAL_MEM_COLUMN);
|
| + }
|
| +
|
| + // Shared memory sorting callback.
|
| + static gint CompareSharedMemory(GtkTreeModel* model, GtkTreeIter* a,
|
| + GtkTreeIter* b, gpointer task_manager) {
|
| + return reinterpret_cast<TaskManagerGtk*>(task_manager)->
|
| + CompareImpl(model, a, b, IDS_TASK_MANAGER_SHARED_MEM_COLUMN);
|
| + }
|
| +
|
| + // Private memory sorting callback.
|
| + static gint ComparePrivateMemory(GtkTreeModel* model, GtkTreeIter* a,
|
| + GtkTreeIter* b, gpointer task_manager) {
|
| + return reinterpret_cast<TaskManagerGtk*>(task_manager)->
|
| + CompareImpl(model, a, b, IDS_TASK_MANAGER_PRIVATE_MEM_COLUMN);
|
| + }
|
| +
|
| + // CPU sorting callback.
|
| + static gint CompareCPU(GtkTreeModel* model, GtkTreeIter* a,
|
| + GtkTreeIter* b, gpointer task_manager) {
|
| + return reinterpret_cast<TaskManagerGtk*>(task_manager)->
|
| + CompareImpl(model, a, b, IDS_TASK_MANAGER_CPU_COLUMN);
|
| + }
|
| +
|
| + // Network sorting callback.
|
| + static gint CompareNetwork(GtkTreeModel* model, GtkTreeIter* a,
|
| + GtkTreeIter* b, gpointer task_manager) {
|
| + return reinterpret_cast<TaskManagerGtk*>(task_manager)->
|
| + CompareImpl(model, a, b, IDS_TASK_MANAGER_NET_COLUMN);
|
| + }
|
| +
|
| + // Process ID sorting callback.
|
| + static gint CompareProcessID(GtkTreeModel* model, GtkTreeIter* a,
|
| + GtkTreeIter* b, gpointer task_manager) {
|
| + return reinterpret_cast<TaskManagerGtk*>(task_manager)->
|
| + CompareImpl(model, a, b, IDS_TASK_MANAGER_PROCESS_ID_COLUMN);
|
| + }
|
| +
|
| + // Goats Teleported sorting callback.
|
| + static gint CompareGoatsTeleported(GtkTreeModel* model, GtkTreeIter* a,
|
| + GtkTreeIter* b, gpointer task_manager) {
|
| + return reinterpret_cast<TaskManagerGtk*>(task_manager)->
|
| + CompareImpl(model, a, b, IDS_TASK_MANAGER_GOATS_TELEPORTED_COLUMN);
|
| + }
|
| +
|
| // The task manager.
|
| TaskManager* task_manager_;
|
|
|
| @@ -105,6 +166,7 @@ class TaskManagerGtk : public TaskManagerModelObserver {
|
|
|
| // The list of processes.
|
| GtkListStore* process_list_;
|
| + GtkTreeModel* process_list_sort_;
|
|
|
| // The number of processes in |process_list_|.
|
| int process_count_;
|
|
|