summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryawano <yawano@chromium.org>2015-04-03 00:51:59 -0700
committerCommit bot <commit-bot@chromium.org>2015-04-03 07:52:37 +0000
commite6a41b132391ffdfdacb8d36990ad4db51ecf3a1 (patch)
tree4e82eb9341e96b70b2505dc542a1925adbf3535d
parent4feb24fc5e5b7033574c61084edce9a9b71d7f66 (diff)
downloadchromium_src-e6a41b132391ffdfdacb8d36990ad4db51ecf3a1.zip
chromium_src-e6a41b132391ffdfdacb8d36990ad4db51ecf3a1.tar.gz
chromium_src-e6a41b132391ffdfdacb8d36990ad4db51ecf3a1.tar.bz2
Add flag for MTP write support.
BUG=413541 TEST=manually tested. Review URL: https://codereview.chromium.org/1049833004 Cr-Commit-Position: refs/heads/master@{#323671}
-rw-r--r--chrome/app/chromeos_strings.grdp6
-rw-r--r--chrome/browser/about_flags.cc9
-rw-r--r--chrome/browser/chromeos/file_manager/volume_manager.cc7
-rw-r--r--chromeos/chromeos_switches.cc3
-rw-r--r--chromeos/chromeos_switches.h1
-rw-r--r--tools/metrics/histograms/histograms.xml1
6 files changed, 24 insertions, 3 deletions
diff --git a/chrome/app/chromeos_strings.grdp b/chrome/app/chromeos_strings.grdp
index 1c179e6..dfc49d3 100644
--- a/chrome/app/chromeos_strings.grdp
+++ b/chrome/app/chromeos_strings.grdp
@@ -6213,4 +6213,10 @@ All users must sign out to continue.
<message name="IDS_FILE_SYSTEM_REQUEST_FILE_SYSTEM_DIALOG_NO_BUTTON" desc="Label on the button to reject permissions.">
No
</message>
+ <message name="IDS_FLAG_ENABLE_MTP_WRITE_SUPPORT_NAME" desc="Name of the option to enable mtp write support.">
+ Enable MTP write support
+ </message>
+ <message name="IDS_FLAG_ENABLE_MTP_WRITE_SUPPORT_DESCRIPTION" desc="Description of the option to enable mtp write support.">
+ Enable MTP write support in file manager. Some operations (editing an image on MTP volume) are not supported yet.
+ </message>
</grit-part>
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index 6470590..908091f 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -2328,6 +2328,15 @@ const Experiment kExperiments[] = {
SINGLE_VALUE_TYPE(app_list::switches::kEnableLauncherSearchProviderApi)
},
#endif // defined(ENABLE_APP_LIST)
+#if defined(OS_CHROMEOS)
+ {
+ "enable-mtp-write-support",
+ IDS_FLAG_ENABLE_MTP_WRITE_SUPPORT_NAME,
+ IDS_FLAG_ENABLE_MTP_WRITE_SUPPORT_DESCRIPTION,
+ kOsCrOS,
+ SINGLE_VALUE_TYPE(chromeos::switches::kEnableMtpWriteSupport)
+ },
+#endif // defined(OS_CHROMEOS)
// NOTE: Adding new command-line switches requires adding corresponding
// entries to enum "LoginCustomFlags" in histograms.xml. See note in
diff --git a/chrome/browser/chromeos/file_manager/volume_manager.cc b/chrome/browser/chromeos/file_manager/volume_manager.cc
index 84e01df..561dfab 100644
--- a/chrome/browser/chromeos/file_manager/volume_manager.cc
+++ b/chrome/browser/chromeos/file_manager/volume_manager.cc
@@ -6,6 +6,7 @@
#include "base/basictypes.h"
#include "base/bind.h"
+#include "base/command_line.h"
#include "base/files/file_path.h"
#include "base/logging.h"
#include "base/memory/weak_ptr.h"
@@ -25,6 +26,7 @@
#include "chrome/browser/media_galleries/fileapi/mtp_device_map_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/pref_names.h"
+#include "chromeos/chromeos_switches.h"
#include "chromeos/disks/disk_mount_manager.h"
#include "components/storage_monitor/storage_monitor.h"
#include "content/public/browser/browser_context.h"
@@ -686,9 +688,8 @@ void VolumeManager::OnRemovableStorageAttached(
path);
DCHECK(result);
- // TODO(yawano) A variable to switch MTP write support. This variable should
- // be false until MTP write operation is implemented and shipped.
- bool write_supported = false;
+ bool write_supported = base::CommandLine::ForCurrentProcess()->HasSwitch(
+ chromeos::switches::kEnableMtpWriteSupport);
content::BrowserThread::PostTask(
content::BrowserThread::IO, FROM_HERE,
diff --git a/chromeos/chromeos_switches.cc b/chromeos/chromeos_switches.cc
index 7b16766..6f4e4a7 100644
--- a/chromeos/chromeos_switches.cc
+++ b/chromeos/chromeos_switches.cc
@@ -141,6 +141,9 @@ const char kDisableVoiceInput[] = "disable-voice-input";
// Enabled sharing assets for installed default apps.
const char kEnableExtensionAssetsSharing[] = "enable-extension-assets-sharing";
+// Enables mtp write support.
+const char kEnableMtpWriteSupport[] = "enable-mtp-write-support";
+
// Enables notifications about captive portals in session.
const char kEnableNetworkPortalNotification[] =
"enable-network-portal-notification";
diff --git a/chromeos/chromeos_switches.h b/chromeos/chromeos_switches.h
index 4c03f1d..da85bbad 100644
--- a/chromeos/chromeos_switches.h
+++ b/chromeos/chromeos_switches.h
@@ -63,6 +63,7 @@ CHROMEOS_EXPORT extern const char kEnableExtensionAssetsSharing[];
CHROMEOS_EXPORT extern const char kEnableFirewallHolePunching[];
CHROMEOS_EXPORT extern const char kEnableFirstRunUITransitions[];
CHROMEOS_EXPORT extern const char kEnableKioskMode[];
+CHROMEOS_EXPORT extern const char kEnableMtpWriteSupport[];
CHROMEOS_EXPORT extern const char kEnableNetworkPortalNotification[];
CHROMEOS_EXPORT extern const char kEnableNewKoreanIme[];
CHROMEOS_EXPORT extern const char kEnablePhysicalKeyboardAutocorrect[];
diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml
index e9196c9..caea1d2 100644
--- a/tools/metrics/histograms/histograms.xml
+++ b/tools/metrics/histograms/histograms.xml
@@ -54188,6 +54188,7 @@ To add a new entry, add it with any value and run test to compute valid value.
<int value="1361047396" label="disable-click-delay"/>
<int value="1367671275" label="enable-proximity-auth-proximity-detection"/>
<int value="1371907429" label="enable-wallet-card-import"/>
+ <int value="1372680885" label="enable-mtp-write-support"/>
<int value="1373777956" label="disable-threaded-gpu-rasterization"/>
<int value="1378310092" label="disable-suggestions-service"/>
<int value="1381746642" label="enable-automatic-password-saving"/>