New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 792775 link

Starred by 5 users

Issue metadata

Status: Assigned
Owner:
Last visit > 30 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Task

Blocking:
issue 786614


Participants' hotlists:
Hotlist-1
Downloads-Storage-Location


Sign in to add a comment

[downloads] implement downloads storage location change functionality

Project Member Reported by jming@chromium.org, Dec 7 2017

Issue description

Project Member

Comment 1 by bugdroid1@chromium.org, Dec 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/189b0cccc8029bea44885cd76d5d3b6ef8a705ba

commit 189b0cccc8029bea44885cd76d5d3b6ef8a705ba
Author: Joy Ming <jming@chromium.org>
Date: Fri Dec 08 19:42:43 2017

Add flag to chrome://flags for downloads location change.

Add a flag to chrome://flags to enable/disable changing default
downloads storage location on Android.

Bug: 792775
Change-Id: I34f1aeaf998bf1426a9932b0378c719795b72bd8
Reviewed-on: https://chromium-review.googlesource.com/813060
Reviewed-by: Xing Liu <xingliu@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Commit-Queue: Joy Ming <jming@chromium.org>
Cr-Commit-Position: refs/heads/master@{#522844}
[modify] https://crrev.com/189b0cccc8029bea44885cd76d5d3b6ef8a705ba/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
[modify] https://crrev.com/189b0cccc8029bea44885cd76d5d3b6ef8a705ba/chrome/browser/about_flags.cc
[modify] https://crrev.com/189b0cccc8029bea44885cd76d5d3b6ef8a705ba/chrome/browser/android/chrome_feature_list.cc
[modify] https://crrev.com/189b0cccc8029bea44885cd76d5d3b6ef8a705ba/chrome/browser/flag_descriptions.cc
[modify] https://crrev.com/189b0cccc8029bea44885cd76d5d3b6ef8a705ba/chrome/browser/flag_descriptions.h
[modify] https://crrev.com/189b0cccc8029bea44885cd76d5d3b6ef8a705ba/chrome/common/chrome_features.cc
[modify] https://crrev.com/189b0cccc8029bea44885cd76d5d3b6ef8a705ba/chrome/common/chrome_features.h
[modify] https://crrev.com/189b0cccc8029bea44885cd76d5d3b6ef8a705ba/tools/metrics/histograms/enums.xml

Project Member

Comment 2 by bugdroid1@chromium.org, Dec 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb

commit cda8e1fdaf9eac7785a009d70d21cb68bc020bfb
Author: Joy Ming <jming@chromium.org>
Date: Mon Dec 11 23:54:02 2017

[Downloads location] Create a preference for downloads location.

This CL is part of the greater effort to build out functionality to
allow users to change their default download storage location. This is
the first step, surfacing the option to change download location in the
preferences pane. This is not fully functional (the directory selector
is not yet implemented) and is hidden behind a flag.

Bug: 792775
Change-Id: Ic57aa2e4f61c83861e5711c2fe0b48737217904e
Reviewed-on: https://chromium-review.googlesource.com/818205
Commit-Queue: Joy Ming <jming@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#523258}
[add] https://crrev.com/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb/chrome/android/java/res/xml/download_preferences.xml
[modify] https://crrev.com/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb/chrome/android/java/res/xml/main_preferences.xml
[add] https://crrev.com/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb/chrome/android/java/src/org/chromium/chrome/browser/preferences/DownloadPreferences.java
[modify] https://crrev.com/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
[modify] https://crrev.com/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb/chrome/android/java/src/org/chromium/chrome/browser/preferences/PrefServiceBridge.java
[modify] https://crrev.com/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb/chrome/android/java/strings/android_chrome_strings.grd
[modify] https://crrev.com/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb/chrome/android/java_sources.gni
[modify] https://crrev.com/cda8e1fdaf9eac7785a009d70d21cb68bc020bfb/chrome/browser/android/preferences/pref_service_bridge.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Jan 2 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/247ffb59804c6c63d64270365f2ae609815bea9e

commit 247ffb59804c6c63d64270365f2ae609815bea9e
Author: Joy Ming <jming@chromium.org>
Date: Tue Jan 02 22:02:21 2018

[Downloads location] Implement dummy storage directory selector.

This is part of a series of changes to implement the functionality to
change default download location on Android. This CL creates a simple
toggle between internal and external storage locations as a temporary
step while the layout of the final directory selector is being decided.

Screenshot:
https://drive.google.com/file/d/1axW_UAm8JWlAhrQvITsiHCKi1nNoF8Ym

Bug: 792775
Change-Id: I3a5b11c84c3e4dcd79ab941351fdd20c310d569d
Reviewed-on: https://chromium-review.googlesource.com/832822
Reviewed-by: Ted Choc (back but slow, ping me) <tedchoc@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Commit-Queue: Joy Ming <jming@chromium.org>
Cr-Commit-Position: refs/heads/master@{#526539}
[modify] https://crrev.com/247ffb59804c6c63d64270365f2ae609815bea9e/chrome/android/java/res/xml/download_preferences.xml
[modify] https://crrev.com/247ffb59804c6c63d64270365f2ae609815bea9e/chrome/android/java/src/org/chromium/chrome/browser/preferences/DownloadPreferences.java
[modify] https://crrev.com/247ffb59804c6c63d64270365f2ae609815bea9e/chrome/android/java/strings/android_chrome_strings.grd
[modify] https://crrev.com/247ffb59804c6c63d64270365f2ae609815bea9e/chrome/browser/android/preferences/pref_service_bridge.cc

Labels: -Type-Bug -Pri-3 M-67 Pri-1 Type-Feature
Project Member

Comment 5 by bugdroid1@chromium.org, Jan 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb

commit c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb
Author: Joy Ming <jming@chromium.org>
Date: Tue Jan 23 00:37:14 2018

[Downloads location] Initial implementation of download location dialog.

The new flow for changing downloads location involves a dialog that
appears before the user is downloading that asks to confirm the location
of the download. In this change, I create a dummy dialog that pops up
when the user is about to download, only if the preference for showing
this dialog is checked off in settings. Clicking on any button on this
dialog should allow the download to proceed as usual.

Screenshot of the dialog:
https://drive.google.com/file/d/1tSbEWm7PCmHS75uQBs2-21NeF1HFbx90/
(Note: This is not the final UI, just a dummy dialog)

Bug: 792775
Change-Id: Id61e57af6153a3c066af68d44a5a47e761d1a9d6
Reviewed-on: https://chromium-review.googlesource.com/852484
Commit-Queue: Joy Ming <jming@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531087}
[add] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/android/java/res/layout/download_location_dialog.xml
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/android/java/res/xml/download_preferences.xml
[add] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[add] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/android/java/src/org/chromium/chrome/browser/preferences/DownloadPreferences.java
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/android/java/strings/android_chrome_strings.grd
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/android/java_sources.gni
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/BUILD.gn
[add] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/android/download/download_location_dialog_bridge.cc
[add] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/android/download/download_location_dialog_bridge.h
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/android/preferences/prefs.h
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/download/chrome_download_manager_delegate.cc
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/download/chrome_download_manager_delegate.h
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/download/chrome_download_manager_delegate_unittest.cc
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/download/download_prefs.cc
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/download/download_prefs.h
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/browser/download/download_target_determiner_unittest.cc
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/common/pref_names.cc
[modify] https://crrev.com/c6c1b8d418e0e7d634df6c9aa7978fbc284e40fb/chrome/common/pref_names.h

Project Member

Comment 6 by bugdroid1@chromium.org, Jan 31 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/88d768a2b11fd0cc025392fe5e3516d8fec1aae5

commit 88d768a2b11fd0cc025392fe5e3516d8fec1aae5
Author: Joy Ming <jming@chromium.org>
Date: Wed Jan 31 19:34:29 2018

[Downloads location] Initial version of (canonical) directory selector.

Implement an initial version of the downloads location directory
selector that allows users to chose one of a few canonical folders
(Pictures, Audio, Documents, etc) that will serve as the default
location their downloads will be saved to.

Mocks:
go/downloads-location-mocks

Screenshots:
https://jming.users.x20web.corp.google.com/www/directoryselector_modern.png
https://jming.users.x20web.corp.google.com/www/directoryselector_notmodern.png

Bug: 792775
Change-Id: I35288f03ff01c33e3fda3fc1239daef7b661a585
Reviewed-on: https://chromium-review.googlesource.com/891629
Commit-Queue: Joy Ming <jming@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Cr-Commit-Position: refs/heads/master@{#533358}
[add] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/res/drawable/ic_sd_storage.xml
[add] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/res/xml/download_directory.xml
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/res/xml/download_preferences.xml
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/res/xml/main_preferences.xml
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkFolderSelectActivity.java
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadFilter.java
[delete] https://crrev.com/a438b798b2cbd89888bd2539335a0b790c2f799a/chrome/android/java/src/org/chromium/chrome/browser/preferences/DownloadPreferences.java
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/src/org/chromium/chrome/browser/preferences/PrefServiceBridge.java
[add] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[add] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryPreference.java
[add] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadPreferences.java
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/src/org/chromium/chrome/browser/widget/selection/SelectableItemView.java
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java/strings/android_chrome_strings.grd
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/android/java_sources.gni
[modify] https://crrev.com/88d768a2b11fd0cc025392fe5e3516d8fec1aae5/chrome/browser/android/preferences/pref_service_bridge.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/41055bd7bddaa11af9ddfed9652e064ae5e0d311

commit 41055bd7bddaa11af9ddfed9652e064ae5e0d311
Author: Joy Ming <jming@chromium.org>
Date: Fri Feb 09 21:48:03 2018

[Downloads location] Include file name/location editing on interstitial.

This is part of a set of changes to make it possible for users to choose
where they want to save their files during downloads on Android. This CL
updates the interstitial download location dialog to include the option
to edit the name and location of the download at the time of download.

This CL includes the following functionality:
- Option to change the name of the download file.
- Option to change the location of the download file through the
download directory preference.
- Updating the location of selected download file on the dialog.
- Checking the "Don't show again" box the first time the interstitial
is shown.
- Saving the file with the new name and location.

Mocks: go/downloads-location-mocks

Screenshot:
https://jming.users.x20web.corp.google.com/www/downloaddialog.png

Bug: 792775,810198
Change-Id: I997fb394e5cbbc2481a3809214b9d9aa5dc1c109
Reviewed-on: https://chromium-review.googlesource.com/896866
Commit-Queue: Joy Ming <jming@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535839}
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/BUILD.gn
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/BUILD.gn
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/res/layout/download_location_dialog.xml
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadFilter.java
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/src/org/chromium/chrome/browser/preferences/PrefServiceBridge.java
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[add] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryList.java
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadPreferences.java
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java/strings/android_chrome_strings.grd
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/android/java_sources.gni
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/BUILD.gn
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/android/download/download_controller.h
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/android/download/download_location_dialog_bridge.cc
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/android/download/download_location_dialog_bridge.h
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/android/preferences/pref_service_bridge.cc
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/android/preferences/prefs.h
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/download/download_prefs.cc
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/download/download_prefs.h
[add] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/download/download_prompt_status.h
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/browser/download/download_target_determiner_unittest.cc
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/chrome/common/pref_names.cc
[modify] https://crrev.com/41055bd7bddaa11af9ddfed9652e064ae5e0d311/tools/metrics/histograms/enums.xml

Project Member

Comment 8 by bugdroid1@chromium.org, Feb 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f3581827364d7f31f217b05c0c9696826992aee7

commit f3581827364d7f31f217b05c0c9696826992aee7
Author: Joy Ming <jming@chromium.org>
Date: Wed Feb 14 18:52:13 2018

[Downloads location] Switch to using ModalDialogManager.

This CL switches the implementation of the DownloadLocationDialog from
AlertDialog to ModalDialogManager.

Bug: 792775
Change-Id: Ida60fb9cd55f9b2e07a918bfb90e79468552de6d
Reviewed-on: https://chromium-review.googlesource.com/915105
Commit-Queue: Joy Ming <jming@chromium.org>
Reviewed-by: Becky Zhou <huayinz@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#536763}
[modify] https://crrev.com/f3581827364d7f31f217b05c0c9696826992aee7/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[modify] https://crrev.com/f3581827364d7f31f217b05c0c9696826992aee7/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java

Project Member

Comment 9 by bugdroid1@chromium.org, Mar 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e

commit 3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e
Author: Joy Ming <jming@chromium.org>
Date: Wed Mar 14 17:42:18 2018

[Downloads location] Implementation of dropdown location selection.

After trying multiple methods in which to select the download location
(including a full-fledged folder selector, surfacing only the
cannonical directories like Music or Pictures), we decided on giving the
user only the option to select between internal and external
directories (ie. Downloads from internal storage vs. SD card). This CL
implements the user interface for this.

Some of the structural changes include:
- Implementing Spinners for preferences and the dialog, using styles
that are generic but match with the different context.
- Consolidating DownloadDirectoryList functionality into
DownloadDirectoryAdapter.
- Modifying DownloadDirectoryAdapter to be an ArrayAdapter and using it
as the adapter for the Spinners, keeping things uniform.

Screenshots are as follows:

Downloads preferences:
https://drive.google.com/open?id=1CNJG8e4M9Q3Seps5QyA6Sx45bOUewO0y
https://drive.google.com/open?id=1UnCCIGwdYeh5iOV1Cb2S4X9hjS-YV5s8

Download location dialog:
https://drive.google.com/open?id=1szZlaMiqGyWD6RoVU1B8fSoDqOjLl-KH
https://drive.google.com/open?id=1pKAATJMwaWoetHxGoiW4CqdqLiXj3kPx

Bug: 792775
Change-Id: Ie4aabed98f900d260298d98fe9dc172438bbb719
Reviewed-on: https://chromium-review.googlesource.com/959384
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
Commit-Queue: Joy Ming <jming@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543120}
[delete] https://crrev.com/cd508f2124fe8f1eff1310026f5411f53f2776c4/chrome/android/java/res/drawable/ic_sd_storage.xml
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/res/layout/download_location_dialog.xml
[add] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/res/layout/download_location_spinner_dropdown_item.xml
[add] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/res/layout/download_location_spinner_item.xml
[delete] https://crrev.com/cd508f2124fe8f1eff1310026f5411f53f2776c4/chrome/android/java/res/xml/download_directory.xml
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/res/xml/download_preferences.xml
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadFilter.java
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/src/org/chromium/chrome/browser/preferences/SpinnerPreference.java
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[delete] https://crrev.com/cd508f2124fe8f1eff1310026f5411f53f2776c4/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryList.java
[delete] https://crrev.com/cd508f2124fe8f1eff1310026f5411f53f2776c4/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryPreference.java
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadPreferences.java
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java/strings/android_chrome_strings.grd
[modify] https://crrev.com/3ecc16b9dddf15ff0d9551fe4e48a05e0c140d7e/chrome/android/java_sources.gni

Project Member

Comment 10 by bugdroid1@chromium.org, Apr 10 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/65cf3f02a409b80f95446a56cdb46ee1c5cf724c

commit 65cf3f02a409b80f95446a56cdb46ee1c5cf724c
Author: Joy Ming <jming@chromium.org>
Date: Tue Apr 10 23:27:45 2018

[Downloads location] Implement pre-download error-handling.

Handle errors that occur before downloading, including the name being
repeated/too long, the location being missing/full, etc. Some of the
changes include:

- Creating DownloadsLocationDialogType to indicate which type of error-
handling dialog to display.
- Re-routing DownloadTargetDeterminer to loop back and double check in
the case that it was a user-confirmed "new" filename/location.

Screenshots:
Rename workflow:
https://drive.google.com/file/d/1S4Pw8zXy-uZvotx3L8eNZgl2QMzaETfX/view

Not enough space option:
https://drive.google.com/file/d/1JiCVo5K4kEcGVtZQhdJ4sSrqEQNagdgB/view

Bug: 792775, 825929
Change-Id: Ic981343eede2b10a84d383ad429f5ddcbccfd38c
Reviewed-on: https://chromium-review.googlesource.com/982530
Commit-Queue: Joy Ming <jming@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Tommy Nyquist <nyquist@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: Min Qin <qinmin@chromium.org>
Reviewed-by: Xing Liu <xingliu@chromium.org>
Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549674}
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/BUILD.gn
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/res/layout/download_location_dialog.xml
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/res/values-v17/styles.xml
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/src/org/chromium/chrome/browser/download/ui/SpaceDisplay.java
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadPreferences.java
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/strings/android_chrome_strings.grd
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_DOWNLOAD_AGAIN.png.sha1
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_DOWNLOAD_TO_DEFAULT_FOLDER.png.sha1
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_NAME_EXISTS.png.sha1
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_NAME_TOO_LONG.png.sha1
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_NOT_ENOUGH_SPACE.png.sha1
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_NO_SD_CARD.png.sha1
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_RENAME_FILE.png.sha1
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/BUILD.gn
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/android/download/download_location_dialog_bridge.h
[rename] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/android/download/download_location_dialog_bridge_impl.cc
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/android/download/download_location_dialog_bridge_impl.h
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/download/chrome_download_manager_delegate.cc
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/download/chrome_download_manager_delegate.h
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/download/chrome_download_manager_delegate_unittest.cc
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/download/download_confirmation_result.h
[add] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/download/download_location_dialog_type.h
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/download/download_target_determiner.cc
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/chrome/browser/download/download_target_determiner.h
[modify] https://crrev.com/65cf3f02a409b80f95446a56cdb46ee1c5cf724c/ui/android/java/res/values-v17/styles.xml

Project Member

Comment 11 by bugdroid1@chromium.org, Apr 16 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/aefa4487dda0511bc69aa7f7660508e28e487634

commit aefa4487dda0511bc69aa7f7660508e28e487634
Author: Joy Ming <jming@chromium.org>
Date: Mon Apr 16 18:58:57 2018

[Downloads location] Add option to go to settings in downloads home.

Currently the only way to get to the Downloads-related settings is by
navigating through Chrome Settings. This CL adds a button into the
downloads home top toolbar that allows the user to go directly to
the Downloads-related settings.

Screenshots:
https://drive.google.com/file/d/1KDZJF8XoKpaBjj7jNZmgiHubEokGqHc6/view
https://drive.google.com/file/d/1pV2M05Kpqh-xa3XcerZYDHHLbgW6rwqB/view
https://drive.google.com/file/d/1mb6jOUZbPYVWvy2z5vATY4BrA6-a2LH6/view
https://drive.google.com/file/d/1sBKowuMVTkY62dalrRGEDHX-DP6Tt3ky/view

Bug: 792775
Change-Id: Ib92393fd30a231597bbda9a1d2c610fc46718cda
Reviewed-on: https://chromium-review.googlesource.com/998827
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Reviewed-by: Steven Holte <holte@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Commit-Queue: Joy Ming <jming@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551060}
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/res/menu/download_manager_menu.xml
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerToolbar.java
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/src/org/chromium/chrome/browser/widget/selection/SelectableListToolbar.java
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/strings/android_chrome_strings.grd
[add] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MANAGER_UI_HIDE_STORAGE.png.sha1
[add] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MANAGER_UI_SHOW_STORAGE.png.sha1
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/tools/metrics/actions/actions.xml

Project Member

Comment 12 by bugdroid1@chromium.org, Apr 17 2018

Labels: merge-merged-testbranch
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/aefa4487dda0511bc69aa7f7660508e28e487634

commit aefa4487dda0511bc69aa7f7660508e28e487634
Author: Joy Ming <jming@chromium.org>
Date: Mon Apr 16 18:58:57 2018

[Downloads location] Add option to go to settings in downloads home.

Currently the only way to get to the Downloads-related settings is by
navigating through Chrome Settings. This CL adds a button into the
downloads home top toolbar that allows the user to go directly to
the Downloads-related settings.

Screenshots:
https://drive.google.com/file/d/1KDZJF8XoKpaBjj7jNZmgiHubEokGqHc6/view
https://drive.google.com/file/d/1pV2M05Kpqh-xa3XcerZYDHHLbgW6rwqB/view
https://drive.google.com/file/d/1mb6jOUZbPYVWvy2z5vATY4BrA6-a2LH6/view
https://drive.google.com/file/d/1sBKowuMVTkY62dalrRGEDHX-DP6Tt3ky/view

Bug: 792775
Change-Id: Ib92393fd30a231597bbda9a1d2c610fc46718cda
Reviewed-on: https://chromium-review.googlesource.com/998827
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Reviewed-by: Steven Holte <holte@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Commit-Queue: Joy Ming <jming@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551060}
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/res/menu/download_manager_menu.xml
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerToolbar.java
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/src/org/chromium/chrome/browser/widget/selection/SelectableListToolbar.java
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/strings/android_chrome_strings.grd
[add] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MANAGER_UI_HIDE_STORAGE.png.sha1
[add] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MANAGER_UI_SHOW_STORAGE.png.sha1
[modify] https://crrev.com/aefa4487dda0511bc69aa7f7660508e28e487634/tools/metrics/actions/actions.xml

Project Member

Comment 13 by bugdroid1@chromium.org, Apr 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf

commit 2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf
Author: Joy Ming <jming@chromium.org>
Date: Wed Apr 18 22:45:57 2018

[Downloads location] Missing SD card error in downloads home.

Display an error the first time a user is visiting downloads home, has
removed their SD card, and some files are missing as a result.

This includes the following changes:
* Creation of a preference to keep track of whether this error has been
shown/should be shown.
* When a download is noticed to be removed by the DownloadManagerService,
also check to see if it was due to external removal.
* Display the snackbar with DownloadSnackbarController.

Mocks: go/downloads-location-mocks

Screenshot:
https://drive.google.com/file/d/1H-d9XlxnXEW9ZACRMJvDUvUz5PKAqiQj/view

Bug: 792775
Change-Id: Ie32075739e57568c3b9c1dea31bfb9204acd3abe
Reviewed-on: https://chromium-review.googlesource.com/1008625
Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: Min Qin <qinmin@chromium.org>
Commit-Queue: Joy Ming <jming@chromium.org>
Cr-Commit-Position: refs/heads/master@{#551865}
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadSnackbarController.java
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/android/java/src/org/chromium/chrome/browser/snackbar/Snackbar.java
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/android/java/strings/android_chrome_strings.grd
[add] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_NO_SD_CARD_SNACKBAR.png.sha1
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/browser/android/preferences/prefs.h
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/browser/download/download_prefs.cc
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/common/pref_names.cc
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/chrome/common/pref_names.h
[modify] https://crrev.com/2b6f6ca9cddd05ce8f17a50072b52f92ccd19daf/tools/metrics/histograms/enums.xml

Project Member

Comment 14 by bugdroid1@chromium.org, Apr 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d2f6e0824678e0f0d86ced659a82c0b4fc209e7a

commit d2f6e0824678e0f0d86ced659a82c0b4fc209e7a
Author: Joy Ming <jming@chromium.org>
Date: Mon Apr 23 22:47:03 2018

[Downloads location] Small UI/string changes.

Some clean-up UI/string changes:

* Change "No SD card found" to "SD card not found" in case the user had
another SD card but we weren't able to find one of them.
* Include a "No available download locations" message to be shown on the
settings page in the corner case where the user has no download options.
* Increase the size of the title text for the download location spinner
preference (same as other preferences).

Bug: 792775
Change-Id: I8c0a972f793b263ce59c090906e64192477c67b4
Reviewed-on: https://chromium-review.googlesource.com/1022521
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Commit-Queue: Joy Ming <jming@chromium.org>
Cr-Commit-Position: refs/heads/master@{#552869}
[modify] https://crrev.com/d2f6e0824678e0f0d86ced659a82c0b4fc209e7a/chrome/android/java/res/layout/preference_spinner.xml
[modify] https://crrev.com/d2f6e0824678e0f0d86ced659a82c0b4fc209e7a/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/d2f6e0824678e0f0d86ced659a82c0b4fc209e7a/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadPreferences.java
[modify] https://crrev.com/d2f6e0824678e0f0d86ced659a82c0b4fc209e7a/chrome/android/java/strings/android_chrome_strings.grd
[add] https://crrev.com/d2f6e0824678e0f0d86ced659a82c0b4fc209e7a/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_NO_AVAILABLE_LOCATIONS.png.sha1

Project Member

Comment 15 by bugdroid1@chromium.org, Apr 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f

commit c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f
Author: Joy Ming <jming@chromium.org>
Date: Wed Apr 25 21:50:34 2018

[Downloads location] IPH for downloads settings in download home.

Include in-product help to let users know that there is the option to
change download storage location through the download settings option in
downloads home.

Screenshot:
https://drive.google.com/file/d/1EcJkOUnKa0W3DldtmMPgugG6rGIdNqd8/view

Bug: 792775
Change-Id: I90932e6c647e2d46a24a13e80d71fc30df8a4da1
Reviewed-on: https://chromium-review.googlesource.com/1020458
Commit-Queue: Joy Ming <jming@chromium.org>
Reviewed-by: Steven Holte <holte@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553771}
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/chrome/android/java/strings/android_chrome_strings.grd
[add] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/chrome/android/java/strings/android_chrome_strings_grd/IDS_IPH_DOWNLOAD_SETTINGS_TEXT.png.sha1
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/components/feature_engagement/public/android/java/src/org/chromium/components/feature_engagement/FeatureConstants.java
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/components/feature_engagement/public/feature_constants.cc
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/components/feature_engagement/public/feature_constants.h
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/components/feature_engagement/public/feature_list.cc
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/components/feature_engagement/public/feature_list.h
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/testing/variations/fieldtrial_testing_config.json
[modify] https://crrev.com/c3adf4f0ddb1922b84e0e52ca2f601d6be4b240f/tools/metrics/histograms/histograms.xml

Cc: dtrainor@chromium.org aboss@chromium.org vamshi.k...@techmahindra.com
 Issue 810122  has been merged into this issue.

Comment 17 by jming@chromium.org, Apr 26 2018

Blocking: 786614
Cc: xingliu@chromium.org
Project Member

Comment 19 by bugdroid1@chromium.org, May 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4308e90ba957117b822abed840ed69bb8c35b509

commit 4308e90ba957117b822abed840ed69bb8c35b509
Author: Xing Liu <xingliu@chromium.org>
Date: Fri May 04 18:13:00 2018

Download location: Add strings for error notification for M68.

When the SD card is full, we show an error notification as well as an
location dialog. This CL adds the string resources used in error
notification for M68, also adds the new download header string for
disk space info.

TBR=wnwen@chromium.org

Bug: 792775
Change-Id: Ide2ee1a0be020942ad940df05940c98d2231da6e
Reviewed-on: https://chromium-review.googlesource.com/1040245
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556119}
[modify] https://crrev.com/4308e90ba957117b822abed840ed69bb8c35b509/build/android/lint/suppressions.xml
[modify] https://crrev.com/4308e90ba957117b822abed840ed69bb8c35b509/chrome/android/java/strings/android_chrome_strings.grd
[add] https://crrev.com/4308e90ba957117b822abed840ed69bb8c35b509/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_NOTIFICATION_RETRY.png.sha1
[add] https://crrev.com/4308e90ba957117b822abed840ed69bb8c35b509/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_LOCATION_NOT_ENOUGH_SPACE_SD_CARD_FULL.png.sha1

Project Member

Comment 20 by bugdroid1@chromium.org, May 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8e60c4363166b4e57e01c2ed318883e089f4bbdd

commit 8e60c4363166b4e57e01c2ed318883e089f4bbdd
Author: Xing Liu <xingliu@chromium.org>
Date: Mon May 07 20:38:24 2018

Download location: Add number of strings in suppressions.xml.

This CL adds a number for download location suppressed strings in lint.
Also adds a TODO that links to the bug to clean up these strings.

Bug: 792775
Change-Id: I498b486116868d2165b4ab8d12ea8364b6a98e08
Reviewed-on: https://chromium-review.googlesource.com/1047853
Reviewed-by: Peter Wen <wnwen@chromium.org>
Commit-Queue: Xing Liu <xingliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556558}
[modify] https://crrev.com/8e60c4363166b4e57e01c2ed318883e089f4bbdd/build/android/lint/suppressions.xml

Project Member

Comment 21 by bugdroid1@chromium.org, May 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6

commit 4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6
Author: Xing Liu <xingliu@chromium.org>
Date: Wed May 09 00:04:35 2018

Download location: New settings icon and menu item.

Currently we use an extra menu with two items to show download location
settings and show/hide disk space info.

This CL removes the extra menu and uses a new menu item to only show
download location setting. The icon uses a setting icon, which will be
replaced later for correct color.

Bug: 838738,792775
Change-Id: Ic2f65df05ea9a46d8d49885b15d5fa6a9273ba07
Reviewed-on: https://chromium-review.googlesource.com/1043362
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557019}
[add] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/res/drawable-hdpi/btn_settings.png
[add] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/res/drawable-mdpi/btn_settings.png
[add] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/res/drawable-xhdpi/btn_settings.png
[add] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/res/drawable-xxhdpi/btn_settings.png
[add] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/res/drawable-xxxhdpi/btn_settings.png
[modify] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/res/menu/download_manager_menu.xml
[modify] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerToolbar.java
[modify] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
[modify] https://crrev.com/4fee81ef6a3c21b207ffd6f82dcc1a13e8557bd6/chrome/android/java/strings/android_chrome_strings.grd
[delete] https://crrev.com/ebd882cf95df2b1a3376eefba28a410c9e76c41f/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MANAGER_UI_HIDE_STORAGE.png.sha1
[delete] https://crrev.com/ebd882cf95df2b1a3376eefba28a410c9e76c41f/chrome/android/java/strings/android_chrome_strings_grd/IDS_DOWNLOAD_MANAGER_UI_SHOW_STORAGE.png.sha1

Project Member

Comment 22 by bugdroid1@chromium.org, May 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1cbdc22295c4ce67a797f31e0c3928c0c01a97e3

commit 1cbdc22295c4ce67a797f31e0c3928c0c01a97e3
Author: Xing Liu <xingliu@chromium.org>
Date: Wed May 09 18:59:02 2018

Download location: Fix a crash when showing DownloadLocationDialog.

DownloadLocationDialog uses ModalDialogView to limit the whole layout
inside a small area. During the measuring pass of layout area on the
view hierarchy, LayoutParams of views cannot be null.

However, we also use a Spinner inside the ModalDialogView, where the
view is dynamically attached to its parent, and may not have
LayoutParams when the measuring pass happens.

This CL ensures the LayoutParams non null when generating the view for
the Spinner in download location dialog.

Bug: 840340,792775
Change-Id: Ibae3ab3561f51afc49ed4d0ce29611f6fe322b5a
Reviewed-on: https://chromium-review.googlesource.com/1050977
Reviewed-by: Min Qin <qinmin@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Commit-Queue: Xing Liu <xingliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557266}
[modify] https://crrev.com/1cbdc22295c4ce67a797f31e0c3928c0c01a97e3/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java

Project Member

Comment 23 by bugdroid1@chromium.org, May 11 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b9456c1697817ac74da657f908fade052d56e8b1

commit b9456c1697817ac74da657f908fade052d56e8b1
Author: Xing Liu <xingliu@chromium.org>
Date: Fri May 11 01:46:17 2018

Download location: Fix issue that can't access file on SD card.

Chrome uses file URL to access file on disk. The path needs to be in
a directory white list.

This CL adds the external SD card directory to the white list, so file
can be accessed through file URL. Also moves the core function
getAllDownloadDirectories to PathUtils for easier access in native code.


Bug: 838419,792775
Change-Id: If52202d6a62f89106b1e8533f8c1884b17cc9e0b
Reviewed-on: https://chromium-review.googlesource.com/1050394
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Shakti Sahu <shaktisahu@chromium.org>
Reviewed-by: Maks Orlovich <morlovich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557759}
[modify] https://crrev.com/b9456c1697817ac74da657f908fade052d56e8b1/base/android/java/src/org/chromium/base/PathUtils.java
[modify] https://crrev.com/b9456c1697817ac74da657f908fade052d56e8b1/base/android/path_utils.cc
[modify] https://crrev.com/b9456c1697817ac74da657f908fade052d56e8b1/base/android/path_utils.h
[modify] https://crrev.com/b9456c1697817ac74da657f908fade052d56e8b1/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
[modify] https://crrev.com/b9456c1697817ac74da657f908fade052d56e8b1/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
[modify] https://crrev.com/b9456c1697817ac74da657f908fade052d56e8b1/chrome/android/java/src/org/chromium/chrome/browser/download/ui/DownloadManagerUi.java
[modify] https://crrev.com/b9456c1697817ac74da657f908fade052d56e8b1/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/b9456c1697817ac74da657f908fade052d56e8b1/chrome/browser/net/chrome_network_delegate.cc

Project Member

Comment 24 by bugdroid1@chromium.org, May 11 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ab750274305770612416bf8f03f04cdac1890b09

commit ab750274305770612416bf8f03f04cdac1890b09
Author: Xing Liu <xingliu@chromium.org>
Date: Fri May 11 16:48:06 2018

Download location: Fix an issue in file writing.

When we write to a file, currently we assume the whole chunk is written.
However when users pull out the SD card or disk, base::File::Write will
return a size less than the chunk size, and the next call to
base::File::Write will return an error.

This CL fixed this issue so FILE_FAILED error can be correctly reported
when the SD card is unmounted.

This CL basically makes the core write function back to this revision:
https://chromium.googlesource.com/chromium/src/+/29db19d0c973a8990283ec4b81111db5bdb8d2de/content/browser/download/base_file.cc#101

Bug:  841559 ,792775
Change-Id: Icfba65833bf3aec07d30d8d3bed57a9abba7f8d1
Reviewed-on: https://chromium-review.googlesource.com/1053233
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557903}
[modify] https://crrev.com/ab750274305770612416bf8f03f04cdac1890b09/components/download/internal/common/base_file.cc

Project Member

Comment 25 by bugdroid1@chromium.org, May 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/86b826a6515aa25e1ac80dae52cf3c73268231d2

commit 86b826a6515aa25e1ac80dae52cf3c73268231d2
Author: Xing Liu <xingliu@chromium.org>
Date: Thu May 17 17:09:35 2018

Download location: Refactor DownloadLocationBridge to be more generic.

Currently DownloadLocationDialog is coupled with download target
determiner and DownloadItem's work flow, this raises an issue that there
is no way to show the dialog for error handling, because the current
flow needs to wait for the server response. And the application may
fall into a loop of download failed, send request and failed again.

This CL makes DownloadLocationBridge decoupled from
DownloadTargetDeterminer.

Bug: 792775
Change-Id: Ic25e1cfe033ba68746927ae0c7c37c18f97cd392
Reviewed-on: https://chromium-review.googlesource.com/1058277
Reviewed-by: Min Qin <qinmin@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Commit-Queue: Xing Liu <xingliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559578}
[modify] https://crrev.com/86b826a6515aa25e1ac80dae52cf3c73268231d2/chrome/browser/android/download/download_location_dialog_bridge.h
[modify] https://crrev.com/86b826a6515aa25e1ac80dae52cf3c73268231d2/chrome/browser/android/download/download_location_dialog_bridge_impl.cc
[modify] https://crrev.com/86b826a6515aa25e1ac80dae52cf3c73268231d2/chrome/browser/android/download/download_location_dialog_bridge_impl.h
[modify] https://crrev.com/86b826a6515aa25e1ac80dae52cf3c73268231d2/chrome/browser/download/chrome_download_manager_delegate.cc
[modify] https://crrev.com/86b826a6515aa25e1ac80dae52cf3c73268231d2/chrome/browser/download/chrome_download_manager_delegate.h
[modify] https://crrev.com/86b826a6515aa25e1ac80dae52cf3c73268231d2/chrome/browser/download/chrome_download_manager_delegate_unittest.cc
[modify] https://crrev.com/86b826a6515aa25e1ac80dae52cf3c73268231d2/chrome/browser/download/download_location_dialog_type.h

Project Member

Comment 26 by bugdroid1@chromium.org, May 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f43149f8bf93d333ab678d7d2342fc88c7b6e405

commit f43149f8bf93d333ab678d7d2342fc88c7b6e405
Author: Xing Liu <xingliu@chromium.org>
Date: Tue May 22 19:16:44 2018

Tolerate file descriptor close error on Android.

Chrome will crash when the user removes the SD card on certain Android
devices while downloading file to SD card, since closing file
descriptor will throw error.

Instead, on Android, we should tolerate this error as same as other
linux kernel based OS.

Bug: 844148,792775
Change-Id: I293fdcb4fd5277394efab6bca72089feb287cee0
Reviewed-on: https://chromium-review.googlesource.com/1066185
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Xing Liu <xingliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560721}
[modify] https://crrev.com/f43149f8bf93d333ab678d7d2342fc88c7b6e405/base/files/scoped_file.cc

Project Member

Comment 27 by bugdroid1@chromium.org, May 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0

commit 59dd516e0d537b7d91c10d564c8dd2dd05bf04b0
Author: Xing Liu <xingliu@chromium.org>
Date: Tue May 22 19:53:02 2018

Download location: Change download location preference UI.

Previously we reused the spinner code in download location dialog, this
CL implements new UI in download location preference to use a custom
layout with radio button and text views.

We reuses the adapter to provide the underlying data used by the UI.

Bug: 842464,792775
Change-Id: Iaf68fa3e75d259c9c6e6fd6d79caa1845aaf18b3
Reviewed-on: https://chromium-review.googlesource.com/1062785
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: Theresa <twellington@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Min Qin <qinmin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560737}
[add] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/res/layout/download_location_preference.xml
[add] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/res/layout/download_location_preference_item.xml
[modify] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/res/xml/download_preferences.xml
[add] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/src/org/chromium/chrome/browser/download/DirectoryOption.java
[modify] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[modify] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[add] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreference.java
[add] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreferenceAdapter.java
[modify] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadPreferences.java
[modify] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/chrome/android/java_sources.gni
[add] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/ui/android/java/res/color/black_summary_color_list.xml
[add] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/ui/android/java/res/color/black_title_color_list.xml
[modify] https://crrev.com/59dd516e0d537b7d91c10d564c8dd2dd05bf04b0/ui/android/java/res/values-v17/styles.xml

Project Member

Comment 28 by bugdroid1@chromium.org, May 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fcd12ababd1a66e8473d65fca05b569f09707b30

commit fcd12ababd1a66e8473d65fca05b569f09707b30
Author: Xing Liu <xingliu@chromium.org>
Date: Wed May 23 17:43:16 2018

Download location: Show correct error message when removing SD card.

When the user pulls out the SD card during download, currently we show
the error message file already exists.

This CL handles the case when download has no WebContents and can't
write to external storage, we now show error: "download failed because
storage location is not reachable." The download record will then be
removed in download home UI.

Bug:  841559 ,792775
Change-Id: I918d1484abf183770c49514675e1d1757f5ff887
Reviewed-on: https://chromium-review.googlesource.com/1067754
Reviewed-by: David Trainor <dtrainor@chromium.org>
Commit-Queue: Xing Liu <xingliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561144}
[modify] https://crrev.com/fcd12ababd1a66e8473d65fca05b569f09707b30/chrome/browser/download/chrome_download_manager_delegate.cc

Project Member

Comment 29 by bugdroid1@chromium.org, May 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6def5d92761aeea3dec32cea55a4b0bbab39ae8b

commit 6def5d92761aeea3dec32cea55a4b0bbab39ae8b
Author: Xing Liu <xingliu@chromium.org>
Date: Thu May 24 03:00:29 2018

Download location: fix radio button double selection.

DownloadLocationPreference directly uses native pref to persist the
selection result. However the native pref may have a delay when
persisting the data, and the UI may refresh the view before native pref
is done, which causes double radio button selection.

This CL caches the selection ID so the UI can always get fresh data.


Bug: 842464,792775
Change-Id: I39bec3a61ea2c7f0e656658cfc41a62e12956560
Reviewed-on: https://chromium-review.googlesource.com/1070480
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: Min Qin <qinmin@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561368}
[modify] https://crrev.com/6def5d92761aeea3dec32cea55a4b0bbab39ae8b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[modify] https://crrev.com/6def5d92761aeea3dec32cea55a4b0bbab39ae8b/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/6def5d92761aeea3dec32cea55a4b0bbab39ae8b/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreferenceAdapter.java

Project Member

Comment 30 by bugdroid1@chromium.org, May 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ee50f11140ced4d442723363ee5d451910da2f45

commit ee50f11140ced4d442723363ee5d451910da2f45
Author: Xing Liu <xingliu@chromium.org>
Date: Fri May 25 03:24:00 2018

Download location: Adds metrics for download location feature.

This CL adds metrics for download location change feature, including:
1. Type of the download location dialog.
2. Result of showing the location dialog.
3. The directory picked by the user.

Bug: 792775
Change-Id: I746edc3ca863ac9bacddb8cfdc5cabed66c3d8d1
Reviewed-on: https://chromium-review.googlesource.com/1071101
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561754}
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/android/java/src/org/chromium/chrome/browser/download/DirectoryOption.java
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreferenceAdapter.java
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/browser/BUILD.gn
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/browser/android/download/download_location_dialog_bridge.h
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/browser/android/download/download_location_dialog_bridge_impl.cc
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/browser/android/download/download_location_dialog_bridge_impl.h
[add] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/browser/download/download_location_dialog_result.h
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/chrome/browser/download/download_location_dialog_type.h
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/ee50f11140ced4d442723363ee5d451910da2f45/tools/metrics/histograms/histograms.xml

Labels: -M-67 M-68 Merge-Request-68
Merge request for ee50f11140ced4d442723363ee5d451910da2f45 in comment 30.

"Download location: Adds metrics for download location feature.
"
Project Member

Comment 32 by sheriffbot@chromium.org, May 25 2018

Labels: -Merge-Request-68 Hotlist-Merge-Review Merge-Review-68
This bug requires manual review: There is .grd file changes and we are only 59 days from stable.
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), kariahda@(iOS), bhthompson@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Cc: cma...@chromium.org
+cmasso@ for merge review.
ping cmasso@, can we merge this CL to M68 branch?

https://chromium-review.googlesource.com/c/chromium/src/+/1071101

Comment 35 by cmasso@google.com, May 31 2018

Labels: -Hotlist-Merge-Review -merge-merged-testbranch -Merge-Review-68 Merge-Approved-68
Labels: -Type-Feature Type-Task
Project Member

Comment 37 by bugdroid1@chromium.org, May 31 2018

Labels: -merge-approved-68 merge-merged-3440
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587

commit 4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587
Author: Xing Liu <xingliu@chromium.org>
Date: Thu May 31 01:27:57 2018

Download location: Adds metrics for download location feature.

This CL adds metrics for download location change feature, including:
1. Type of the download location dialog.
2. Result of showing the location dialog.
3. The directory picked by the user.

TBR=xingliu@chromium.org

(cherry picked from commit ee50f11140ced4d442723363ee5d451910da2f45)

Bug: 792775
Change-Id: I746edc3ca863ac9bacddb8cfdc5cabed66c3d8d1
Reviewed-on: https://chromium-review.googlesource.com/1071101
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: Ilya Sherman <isherman@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#561754}
Reviewed-on: https://chromium-review.googlesource.com/1080368
Reviewed-by: Xing Liu <xingliu@chromium.org>
Cr-Commit-Position: refs/branch-heads/3440@{#56}
Cr-Branched-From: 010ddcfda246975d194964ccf20038ebbdec6084-refs/heads/master@{#561733}
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/android/java/src/org/chromium/chrome/browser/download/DirectoryOption.java
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialog.java
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreferenceAdapter.java
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/browser/BUILD.gn
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/browser/android/download/download_location_dialog_bridge.h
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/browser/android/download/download_location_dialog_bridge_impl.cc
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/browser/android/download/download_location_dialog_bridge_impl.h
[add] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/browser/download/download_location_dialog_result.h
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/chrome/browser/download/download_location_dialog_type.h
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/4f1ab6ee5fc56435a2d8a98a5f71d7fb3d2d7587/tools/metrics/histograms/histograms.xml

Project Member

Comment 38 by bugdroid1@chromium.org, Jun 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d7497493766c4b8b51b387b6f16bf059c5c098dc

commit d7497493766c4b8b51b387b6f16bf059c5c098dc
Author: Xing Liu <xingliu@chromium.org>
Date: Mon Jun 04 18:19:28 2018

Download location: Add storage summary string in download home.

This CL adds the storage summary string under "Downloads" title in
download home.

Also we start to query directory option in background thread to avoid
disk access on Android main thread.

Bug: 847608,792775
Change-Id: I49341e3bce951016b634510932e3bedcffc96298
Reviewed-on: https://chromium-review.googlesource.com/1081112
Reviewed-by: Peter Wen <wnwen@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Min Qin <qinmin@chromium.org>
Commit-Queue: Xing Liu <xingliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#564155}
[modify] https://crrev.com/d7497493766c4b8b51b387b6f16bf059c5c098dc/build/android/lint/suppressions.xml
[modify] https://crrev.com/d7497493766c4b8b51b387b6f16bf059c5c098dc/chrome/android/java/src/org/chromium/chrome/browser/download/DirectoryOption.java
[modify] https://crrev.com/d7497493766c4b8b51b387b6f16bf059c5c098dc/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
[modify] https://crrev.com/d7497493766c4b8b51b387b6f16bf059c5c098dc/chrome/android/java/src/org/chromium/chrome/browser/download/ui/FilterAdapter.java
[modify] https://crrev.com/d7497493766c4b8b51b387b6f16bf059c5c098dc/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/d7497493766c4b8b51b387b6f16bf059c5c098dc/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreference.java
[modify] https://crrev.com/d7497493766c4b8b51b387b6f16bf059c5c098dc/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreferenceAdapter.java

Project Member

Comment 39 by bugdroid1@chromium.org, Jun 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f9cf89ba3e54dcd8333fd72ac1295388a8c49409

commit f9cf89ba3e54dcd8333fd72ac1295388a8c49409
Author: Xing Liu <xingliu@chromium.org>
Date: Tue Jun 05 20:33:51 2018

Download location: Add storage summary string in download home.

This CL adds the storage summary string under "Downloads" title in
download home.

Also we start to query directory option in background thread to avoid
disk access on Android main thread.

TBR=xingliu@chromium.org

(cherry picked from commit d7497493766c4b8b51b387b6f16bf059c5c098dc)

Bug: 847608,792775
Change-Id: I49341e3bce951016b634510932e3bedcffc96298
Reviewed-on: https://chromium-review.googlesource.com/1081112
Reviewed-by: Peter Wen <wnwen@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Reviewed-by: Min Qin <qinmin@chromium.org>
Commit-Queue: Xing Liu <xingliu@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#564155}
Reviewed-on: https://chromium-review.googlesource.com/1087712
Reviewed-by: Xing Liu <xingliu@chromium.org>
Cr-Commit-Position: refs/branch-heads/3440@{#194}
Cr-Branched-From: 010ddcfda246975d194964ccf20038ebbdec6084-refs/heads/master@{#561733}
[modify] https://crrev.com/f9cf89ba3e54dcd8333fd72ac1295388a8c49409/build/android/lint/suppressions.xml
[modify] https://crrev.com/f9cf89ba3e54dcd8333fd72ac1295388a8c49409/chrome/android/java/src/org/chromium/chrome/browser/download/DirectoryOption.java
[modify] https://crrev.com/f9cf89ba3e54dcd8333fd72ac1295388a8c49409/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
[modify] https://crrev.com/f9cf89ba3e54dcd8333fd72ac1295388a8c49409/chrome/android/java/src/org/chromium/chrome/browser/download/ui/FilterAdapter.java
[modify] https://crrev.com/f9cf89ba3e54dcd8333fd72ac1295388a8c49409/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadDirectoryAdapter.java
[modify] https://crrev.com/f9cf89ba3e54dcd8333fd72ac1295388a8c49409/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreference.java
[modify] https://crrev.com/f9cf89ba3e54dcd8333fd72ac1295388a8c49409/chrome/android/java/src/org/chromium/chrome/browser/preferences/download/DownloadLocationPreferenceAdapter.java

Project Member

Comment 40 by bugdroid1@chromium.org, Jul 11

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/af706557dc98750dc21b5f007f34559b9afffe9e

commit af706557dc98750dc21b5f007f34559b9afffe9e
Author: Xing Liu <xingliu@chromium.org>
Date: Wed Jul 11 19:09:01 2018

Download location: Polish histogram description.

This CL improves the description for download location histogram.

Bug: 792775
Change-Id: I8c70bd1a41d3626621f107ced4d20487c94a695d
Reviewed-on: https://chromium-review.googlesource.com/1132085
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: Mark Pearson <mpearson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#574276}
[modify] https://crrev.com/af706557dc98750dc21b5f007f34559b9afffe9e/tools/metrics/histograms/histograms.xml

Project Member

Comment 41 by bugdroid1@chromium.org, Jul 24

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/570d755752e4b418f0717cdd6806baaabbd4ce35

commit 570d755752e4b418f0717cdd6806baaabbd4ce35
Author: Xing Liu <xingliu@chromium.org>
Date: Tue Jul 24 20:21:49 2018

Download location: Enable the feature flag.

This CL enables the download location feature as part of the rolling
out process.


Bug: 792775
Change-Id: I1f5f18d8eeb5c0d2a75c562672980380f2c11c2e
Reviewed-on: https://chromium-review.googlesource.com/1145474
Commit-Queue: Xing Liu <xingliu@chromium.org>
Reviewed-by: Min Qin <qinmin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#577660}
[modify] https://crrev.com/570d755752e4b418f0717cdd6806baaabbd4ce35/chrome/browser/download/chrome_download_manager_delegate_unittest.cc
[modify] https://crrev.com/570d755752e4b418f0717cdd6806baaabbd4ce35/chrome/common/chrome_features.cc

Sign in to add a comment