Create App Launcher shortcuts and icons on Linux with --enable-app-list.

The shortcuts are only created if they have not been in the past.

This adds Linux-suitable icons to chrome/app/theme/chromium/linux, which
are PNG versions of the images in app_list.ico. The existing PNG images
are designed exclusively for Mac and are unsuitable on Linux.

Also made --enable-app-list and --reset-app-list-install-state available
on Linux in about://flags.

BUG=299250

Review URL: https://codereview.chromium.org/111853006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245855 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index c74285f..b41c3af 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -1723,7 +1723,7 @@
     "reset-app-list-install-state",
     IDS_FLAGS_RESET_APP_LIST_INSTALL_STATE_NAME,
     IDS_FLAGS_RESET_APP_LIST_INSTALL_STATE_DESCRIPTION,
-    kOsMac | kOsWin,
+    kOsMac | kOsWin | kOsLinux,
     SINGLE_VALUE_TYPE(switches::kResetAppListInstallState)
   },
 #if defined(ENABLE_APP_LIST)
@@ -1734,6 +1734,18 @@
     kOsWin | kOsCrOS,
     SINGLE_VALUE_TYPE(switches::kShowAppListStartPage)
   },
+#if defined(OS_LINUX)
+  {
+    // This is compiled out on non-Linux platforms because otherwise it would be
+    // visible on Win/Mac/CrOS but not on Linux GTK, which would be confusing.
+    // TODO(mgiuca): Remove the #if when Aura is the default on Linux.
+    "enable-app-list",
+    IDS_FLAGS_ENABLE_APP_LIST_NAME,
+    IDS_FLAGS_ENABLE_APP_LIST_DESCRIPTION,
+    kOsLinux,
+    SINGLE_VALUE_TYPE(switches::kEnableAppList)
+  },
+#endif
   {
     "enable-app-list-folder",
     IDS_FLAGS_ENABLE_APP_LIST_FOLDER,