Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(113)

Issue 2143133002: Do screenshot capture async for share intents. (Closed)

Created:
4 years, 5 months ago by ssid
Modified:
4 years, 3 months ago
Reviewers:
Ted C, nyquist
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Do screenshot capture async for share intents. The share intent is started with a delay because of screenshot capturing and compressing. But, lot of times the other activity never uses the screenshot. The screenshot capture, compress to jpeg and write to file can be done in background when the user is selecting the app shared to. This CL introduces a BlockingFileProvider that provides an empty file uri without any contents and shares an intent. While sending the intent it also triggers the screenshot capture. When the file is actually requested by the other app, the file provider will wait till the capture is done and the file is written. The blocking practically never happens because the user takes some time to click on the app, before which the capture is finished. The BlockingFileProvider is made default file provider and the CompatibilityFileProvider logic is added to it. BUG=615229 Committed: https://crrev.com/ee36837ec9d6df950df4020f80ea702d599d666c Cr-Commit-Position: refs/heads/master@{#417185}

Patch Set 1 : . #

Patch Set 2 : fix. #

Patch Set 3 : fix packagename #

Total comments: 30

Patch Set 4 : Fixes and add tests. #

Patch Set 5 : fix. #

Patch Set 6 : fixes and tests. #

Total comments: 2

Patch Set 7 : Remove AsyncTask. #

Total comments: 12

Patch Set 8 : Rebase and comments. #

Total comments: 2

Patch Set 9 : Call function on UI thread. #

Patch Set 10 : Rebase. #

Total comments: 29

Patch Set 11 : Ted's comments. #

Patch Set 12 : Fix StrictMode violation. #

Patch Set 13 : rebase. #

Patch Set 14 : Rebase + more comments addressed. #

Total comments: 24

Patch Set 15 : Comments and rebase. #

Total comments: 12

Patch Set 16 : Fixes. #

Total comments: 4

Patch Set 17 : move to util/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+556 lines, -177 lines) Patch
M chrome/android/java/AndroidManifest.xml View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +1 line, -1 line 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 5 chunks +41 lines, -22 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 8 chunks +9 lines, -10 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/share/ShareHelper.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 9 chunks +93 lines, -73 lines 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/util/ChromeFileProvider.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +177 lines, -0 lines 0 comments Download
D chrome/android/java/src/org/chromium/chrome/browser/util/CompatibilityFileProvider.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -70 lines 0 comments Download
M chrome/android/java_sources.gni View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +3 lines, -1 line 0 comments Download
A chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +135 lines, -0 lines 0 comments Download
A chrome/android/javatests/src/org/chromium/chrome/browser/util/ChromeFileProviderTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +97 lines, -0 lines 0 comments Download

Messages

Total messages: 90 (62 generated)
ssid
+nyquist ptal, thanks!
4 years, 5 months ago (2016-07-12 22:06:48 UTC) #3
nyquist
https://codereview.chromium.org/2143133002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java File chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java (right): https://codereview.chromium.org/2143133002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java#newcode20 chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java:20: * This class gives an unique identifier for the ...
4 years, 5 months ago (2016-07-14 17:36:32 UTC) #4
ssid
Thanks, Made suggested changes. Ptal. https://codereview.chromium.org/2143133002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java File chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java (right): https://codereview.chromium.org/2143133002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java#newcode20 chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java:20: * This class gives ...
4 years, 5 months ago (2016-07-19 18:32:58 UTC) #6
Ted C
https://codereview.chromium.org/2143133002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java File chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java (right): https://codereview.chromium.org/2143133002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java#newcode1002 chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java:1002: protected Void doInBackground(Void... params) { drive by...why are you ...
4 years, 5 months ago (2016-07-19 21:08:43 UTC) #13
ssid
https://codereview.chromium.org/2143133002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java File chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java (right): https://codereview.chromium.org/2143133002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java#newcode1002 chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java:1002: protected Void doInBackground(Void... params) { On 2016/07/19 21:08:43, Ted ...
4 years, 5 months ago (2016-07-19 21:47:06 UTC) #14
Ted C
On 2016/07/19 21:47:06, ssid wrote: > https://codereview.chromium.org/2143133002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java > File chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java > (right): > > https://codereview.chromium.org/2143133002/diff/160001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java#newcode1002 ...
4 years, 5 months ago (2016-07-19 22:23:45 UTC) #15
ssid
On 2016/07/19 22:23:45, Ted C wrote: > On 2016/07/19 21:47:06, ssid wrote: > > > ...
4 years, 5 months ago (2016-07-26 01:26:14 UTC) #17
ssid
Please review this CL. Thanks
4 years, 4 months ago (2016-07-29 20:41:44 UTC) #18
nyquist
https://codereview.chromium.org/2143133002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java File chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java (right): https://codereview.chromium.org/2143133002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java#newcode979 chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java:979: final String fileName = String.valueOf(System.currentTimeMillis()); On 2016/07/19 18:32:57, ssid ...
4 years, 4 months ago (2016-07-29 23:45:28 UTC) #19
ssid
Made changes, PTAL thanks! https://codereview.chromium.org/2143133002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java File chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java (right): https://codereview.chromium.org/2143133002/diff/60001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java#newcode979 chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java:979: final String fileName = String.valueOf(System.currentTimeMillis()); ...
4 years, 4 months ago (2016-08-03 22:33:41 UTC) #25
nyquist
https://codereview.chromium.org/2143133002/diff/220001/chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java (right): https://codereview.chromium.org/2143133002/diff/220001/chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java#newcode112 chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java:112: mockActivity.onShareMenuItemSelected(true /* shareDirectly */, false /* isIncognito */); I ...
4 years, 4 months ago (2016-08-03 23:02:22 UTC) #26
ssid
Fixed. Ptal thanks. https://codereview.chromium.org/2143133002/diff/220001/chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java (right): https://codereview.chromium.org/2143133002/diff/220001/chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java#newcode112 chrome/android/javatests/src/org/chromium/chrome/browser/ShareIntentTest.java:112: mockActivity.onShareMenuItemSelected(true /* shareDirectly */, false /* ...
4 years, 4 months ago (2016-08-04 22:41:06 UTC) #39
ssid
Also, this build failed because of "Strict mode violation" but passed the second time. Should ...
4 years, 4 months ago (2016-08-04 22:43:09 UTC) #40
nyquist
On 2016/08/04 22:43:09, ssid wrote: > Also, this build failed because of "Strict mode violation" ...
4 years, 4 months ago (2016-08-05 21:57:55 UTC) #41
Ted C
https://codereview.chromium.org/2143133002/diff/260001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java File chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java (right): https://codereview.chromium.org/2143133002/diff/260001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java#newcode30 chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java:30: private static boolean sIsFileReady = false; false and null ...
4 years, 4 months ago (2016-08-06 00:02:41 UTC) #42
ssid
Thanks, made changes, ptal. https://codereview.chromium.org/2143133002/diff/260001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java File chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java (right): https://codereview.chromium.org/2143133002/diff/260001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java#newcode30 chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java:30: private static boolean sIsFileReady = ...
4 years, 4 months ago (2016-08-10 21:45:20 UTC) #43
ssid
ping.
4 years, 4 months ago (2016-08-18 20:46:55 UTC) #56
Ted C
Sorry for the delay! I was definitely confused to begin with, but I "think" I've ...
4 years, 4 months ago (2016-08-19 00:35:29 UTC) #57
ssid
I think I have done what you suggested. PTAL, thanks. https://codereview.chromium.org/2143133002/diff/260001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java File chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java (right): https://codereview.chromium.org/2143133002/diff/260001/chrome/android/java/src/org/chromium/chrome/browser/BlockingFileProvider.java#newcode21 ...
4 years, 4 months ago (2016-08-25 00:24:29 UTC) #61
Ted C
looking super close to me...some naming nits and few little things left but super close ...
4 years, 3 months ago (2016-08-27 00:22:12 UTC) #65
ssid
Sorry for the late fixes. I got pulled into some work. Please bear with me, ...
4 years, 3 months ago (2016-09-06 22:25:36 UTC) #68
Ted C
last few nits and we are good to go https://codereview.chromium.org/2143133002/diff/380001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java File chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java (right): https://codereview.chromium.org/2143133002/diff/380001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java#newcode1057 chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java:1057: ...
4 years, 3 months ago (2016-09-07 00:30:08 UTC) #71
ssid
Fixed, thanks https://codereview.chromium.org/2143133002/diff/380001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java File chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java (right): https://codereview.chromium.org/2143133002/diff/380001/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java#newcode1057 chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java:1057: On 2016/09/07 00:30:07, Ted C wrote: > ...
4 years, 3 months ago (2016-09-07 00:51:23 UTC) #72
Ted C
lgtm w/ a few last comments. thanks for sticking with this! https://codereview.chromium.org/2143133002/diff/380001/chrome/android/javatests/src/org/chromium/chrome/browser/ChromeFileProviderTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/ChromeFileProviderTest.java (right): ...
4 years, 3 months ago (2016-09-07 17:30:13 UTC) #73
ssid
https://codereview.chromium.org/2143133002/diff/380001/chrome/android/javatests/src/org/chromium/chrome/browser/ChromeFileProviderTest.java File chrome/android/javatests/src/org/chromium/chrome/browser/ChromeFileProviderTest.java (right): https://codereview.chromium.org/2143133002/diff/380001/chrome/android/javatests/src/org/chromium/chrome/browser/ChromeFileProviderTest.java#newcode60 chrome/android/javatests/src/org/chromium/chrome/browser/ChromeFileProviderTest.java:60: }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); On 2016/09/07 17:30:13, Ted C wrote: > On ...
4 years, 3 months ago (2016-09-08 03:56:56 UTC) #83
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2143133002/440001
4 years, 3 months ago (2016-09-08 03:58:32 UTC) #86
commit-bot: I haz the power
Committed patchset #17 (id:440001)
4 years, 3 months ago (2016-09-08 04:02:58 UTC) #88
commit-bot: I haz the power
4 years, 3 months ago (2016-09-08 04:05:20 UTC) #90
Message was sent while issue was closed.
Patchset 17 (id:??) landed as
https://crrev.com/ee36837ec9d6df950df4020f80ea702d599d666c
Cr-Commit-Position: refs/heads/master@{#417185}

Powered by Google App Engine
This is Rietveld 408576698