Merge "Remove initial screenshot on interactive bugreport." into nyc-dev am: 3f8f7f4

am: d8c79fe

* commit 'd8c79fe1ac70d00b63b0695438d8b9b4149c5c36':
  Remove initial screenshot on interactive bugreport.

Change-Id: I5fef552ff8bda6631f350e28bc9eac187a25a058
This commit is contained in:
Felipe Leme
2016-04-18 21:28:10 +00:00
committed by android-build-merger
2 changed files with 22 additions and 34 deletions

View File

@@ -336,7 +336,7 @@ public class BugreportProgressService extends Service {
launchBugreportInfoDialog(id); launchBugreportInfoDialog(id);
break; break;
case INTENT_BUGREPORT_SCREENSHOT: case INTENT_BUGREPORT_SCREENSHOT:
takeScreenshot(id, true); takeScreenshot(id);
break; break;
case INTENT_BUGREPORT_SHARE: case INTENT_BUGREPORT_SHARE:
shareBugreport(id, (BugreportInfo) intent.getParcelableExtra(EXTRA_INFO)); shareBugreport(id, (BugreportInfo) intent.getParcelableExtra(EXTRA_INFO));
@@ -417,8 +417,6 @@ public class BugreportProgressService extends Service {
return true; return true;
} }
mProcesses.put(info.id, info); mProcesses.put(info.id, info);
// Take initial screenshot.
takeScreenshot(id, false);
updateProgress(info); updateProgress(info);
return true; return true;
} }
@@ -635,19 +633,11 @@ public class BugreportProgressService extends Service {
/** /**
* Starting point for taking a screenshot. * Starting point for taking a screenshot.
* <p> * <p>
* If {@code delayed} is set, it first display a toast message and waits * It first display a toast message and waits {@link #SCREENSHOT_DELAY_SECONDS} seconds before
* {@link #SCREENSHOT_DELAY_SECONDS} seconds before taking it, otherwise it takes the screenshot * taking the screenshot.
* right away.
* <p>
* Typical usage is delaying when taken from the notification action, and taking it right away
* upon receiving a {@link #INTENT_BUGREPORT_STARTED}.
*/ */
private void takeScreenshot(int id, boolean delayed) { private void takeScreenshot(int id) {
if (delayed) { MetricsLogger.action(this, MetricsEvent.ACTION_BUGREPORT_NOTIFICATION_ACTION_SCREENSHOT);
// Only logs screenshots requested from the notification action.
MetricsLogger.action(this,
MetricsEvent.ACTION_BUGREPORT_NOTIFICATION_ACTION_SCREENSHOT);
}
if (getInfo(id) == null) { if (getInfo(id) == null) {
// Most likely am killed Shell before user tapped the notification. Since system might // Most likely am killed Shell before user tapped the notification. Since system might
// be too busy anwyays, it's better to ignore the notification and switch back to the // be too busy anwyays, it's better to ignore the notification and switch back to the
@@ -659,19 +649,15 @@ public class BugreportProgressService extends Service {
return; return;
} }
setTakingScreenshot(true); setTakingScreenshot(true);
if (delayed) { collapseNotificationBar();
collapseNotificationBar(); final String msg = mContext.getResources()
final String msg = mContext.getResources() .getQuantityString(com.android.internal.R.plurals.bugreport_countdown,
.getQuantityString(com.android.internal.R.plurals.bugreport_countdown, SCREENSHOT_DELAY_SECONDS, SCREENSHOT_DELAY_SECONDS);
SCREENSHOT_DELAY_SECONDS, SCREENSHOT_DELAY_SECONDS); Log.i(TAG, msg);
Log.i(TAG, msg); // Show a toast just once, otherwise it might be captured in the screenshot.
// Show a toast just once, otherwise it might be captured in the screenshot. Toast.makeText(mContext, msg, Toast.LENGTH_SHORT).show();
Toast.makeText(mContext, msg, Toast.LENGTH_SHORT).show();
takeScreenshot(id, SCREENSHOT_DELAY_SECONDS); takeScreenshot(id, SCREENSHOT_DELAY_SECONDS);
} else {
takeScreenshot(id, 0);
}
} }
/** /**

View File

@@ -216,7 +216,7 @@ public class BugreportReceiverTest extends InstrumentationTestCase {
Bundle extras = Bundle extras =
sendBugreportFinishedAndGetSharedIntent(ID, mPlainTextPath, mScreenshotPath); sendBugreportFinishedAndGetSharedIntent(ID, mPlainTextPath, mScreenshotPath);
assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE, assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE,
NAME, NO_TITLE, NO_DESCRIPTION, 1, RENAMED_SCREENSHOTS); NAME, NO_TITLE, NO_DESCRIPTION, 0, RENAMED_SCREENSHOTS);
assertServiceNotRunning(); assertServiceNotRunning();
} }
@@ -266,7 +266,7 @@ public class BugreportReceiverTest extends InstrumentationTestCase {
Bundle extras = acceptBugreportAndGetSharedIntent(ID); Bundle extras = acceptBugreportAndGetSharedIntent(ID);
assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE, assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE,
NAME, NO_TITLE, NO_DESCRIPTION, 2, RENAMED_SCREENSHOTS); NAME, NO_TITLE, NO_DESCRIPTION, 1, RENAMED_SCREENSHOTS);
assertServiceNotRunning(); assertServiceNotRunning();
} }
@@ -283,6 +283,8 @@ public class BugreportReceiverTest extends InstrumentationTestCase {
resetProperties(); resetProperties();
sendBugreportStarted(1000); sendBugreportStarted(1000);
waitForScreenshotButtonEnabled(true);
takeScreenshot();
sendBugreportFinished(ID, mPlainTextPath, NO_SCREENSHOT); sendBugreportFinished(ID, mPlainTextPath, NO_SCREENSHOT);
waitShareNotification(ID); waitShareNotification(ID);
@@ -340,7 +342,7 @@ public class BugreportReceiverTest extends InstrumentationTestCase {
Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID, mPlainTextPath, Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID, mPlainTextPath,
mScreenshotPath); mScreenshotPath);
assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE, assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE,
NEW_NAME, TITLE, mDescription, 1, RENAMED_SCREENSHOTS); NEW_NAME, TITLE, mDescription, 0, RENAMED_SCREENSHOTS);
assertServiceNotRunning(); assertServiceNotRunning();
} }
@@ -377,7 +379,7 @@ public class BugreportReceiverTest extends InstrumentationTestCase {
Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID, Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID,
plainText? mPlainTextPath : mZipPath, mScreenshotPath); plainText? mPlainTextPath : mZipPath, mScreenshotPath);
assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE, assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE,
NEW_NAME, TITLE, mDescription, 1, RENAMED_SCREENSHOTS); NEW_NAME, TITLE, mDescription, 0, RENAMED_SCREENSHOTS);
assertServiceNotRunning(); assertServiceNotRunning();
} }
@@ -404,7 +406,7 @@ public class BugreportReceiverTest extends InstrumentationTestCase {
Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID, mZipPath, mScreenshotPath); Bundle extras = sendBugreportFinishedAndGetSharedIntent(ID, mZipPath, mScreenshotPath);
assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE, assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, ZIP_FILE,
NO_NAME, NO_TITLE, mDescription, 1, DIDNT_RENAME_SCREENSHOTS); NO_NAME, NO_TITLE, mDescription, 0, DIDNT_RENAME_SCREENSHOTS);
assertServiceNotRunning(); assertServiceNotRunning();
} }
@@ -449,7 +451,7 @@ public class BugreportReceiverTest extends InstrumentationTestCase {
// title.txt and description.txt entries. // title.txt and description.txt entries.
extras = sendBugreportFinishedAndGetSharedIntent(ID2, mZipPath2, NO_SCREENSHOT); extras = sendBugreportFinishedAndGetSharedIntent(ID2, mZipPath2, NO_SCREENSHOT);
assertActionSendMultiple(extras, BUGREPORT_CONTENT, NO_SCREENSHOT, ID2, PID2, TITLE2, assertActionSendMultiple(extras, BUGREPORT_CONTENT, NO_SCREENSHOT, ID2, PID2, TITLE2,
NEW_NAME2, TITLE2, DESCRIPTION2, 1, RENAMED_SCREENSHOTS); NEW_NAME2, TITLE2, DESCRIPTION2, 0, RENAMED_SCREENSHOTS);
assertServiceNotRunning(); assertServiceNotRunning();
} }
@@ -500,7 +502,7 @@ public class BugreportReceiverTest extends InstrumentationTestCase {
// Finally, share bugreport. // Finally, share bugreport.
Bundle extras = acceptBugreportAndGetSharedIntent(ID); Bundle extras = acceptBugreportAndGetSharedIntent(ID);
assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE, assertActionSendMultiple(extras, BUGREPORT_CONTENT, SCREENSHOT_CONTENT, ID, PID, TITLE,
NAME, TITLE, mDescription, 1, RENAMED_SCREENSHOTS); NAME, TITLE, mDescription, 0, RENAMED_SCREENSHOTS);
assertServiceNotRunning(); assertServiceNotRunning();
} }