| Index: chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellDelegate.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellDelegate.java
|
| index 4dfe4c64ad5f8cf6e828be0bf4870cc44c670092..5e45166cc7dc3182c94914c342e9f75b12794c58 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellDelegate.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrShellDelegate.java
|
| @@ -31,6 +31,7 @@ import android.widget.FrameLayout;
|
|
|
| import org.chromium.base.ActivityState;
|
| import org.chromium.base.ApplicationStatus;
|
| +import org.chromium.base.ContextUtils;
|
| import org.chromium.base.Log;
|
| import org.chromium.base.ThreadUtils;
|
| import org.chromium.base.VisibleForTesting;
|
| @@ -44,6 +45,7 @@ import org.chromium.chrome.browser.ChromeFeatureList;
|
| import org.chromium.chrome.browser.ChromeTabbedActivity;
|
| import org.chromium.chrome.browser.IntentHandler;
|
| import org.chromium.chrome.browser.customtabs.CustomTabActivity;
|
| +import org.chromium.chrome.browser.help.HelpAndFeedback;
|
| import org.chromium.chrome.browser.infobar.InfoBarIdentifier;
|
| import org.chromium.chrome.browser.infobar.SimpleConfirmInfoBarBuilder;
|
| import org.chromium.chrome.browser.tab.Tab;
|
| @@ -94,6 +96,8 @@ public class VrShellDelegate implements ApplicationStatus.ActivityStateListener,
|
|
|
| private static final long REENTER_VR_TIMEOUT_MS = 1000;
|
|
|
| + private static final String FEEDBACK_REPORT_TYPE = "USER_INITIATED_FEEDBACK_REPORT_VR";
|
| +
|
| private static final int VR_SYSTEM_UI_FLAGS = View.SYSTEM_UI_FLAG_LAYOUT_STABLE
|
| | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
|
| | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN
|
| @@ -928,7 +932,16 @@ public class VrShellDelegate implements ApplicationStatus.ActivityStateListener,
|
| }
|
| }
|
|
|
| - private static void promptForFeedback(Tab tab) {
|
| + private static void startFeedback(Tab tab) {
|
| + // TODO(ymalik): This call will connect to the Google Services api which can be slow. Can we
|
| + // connect to it beforehand when we know that we'll be prompting for feedback?
|
| + HelpAndFeedback.getInstance(tab.getActivity())
|
| + .showFeedback(tab.getActivity(), tab.getProfile(), tab.getUrl(),
|
| + ContextUtils.getApplicationContext().getPackageName() + "."
|
| + + FEEDBACK_REPORT_TYPE);
|
| + }
|
| +
|
| + private static void promptForFeedback(final Tab tab) {
|
| final ChromeActivity activity = tab.getActivity();
|
| SimpleConfirmInfoBarBuilder.Listener listener = new SimpleConfirmInfoBarBuilder.Listener() {
|
| @Override
|
| @@ -937,9 +950,7 @@ public class VrShellDelegate implements ApplicationStatus.ActivityStateListener,
|
| @Override
|
| public boolean onInfoBarButtonClicked(boolean isPrimary) {
|
| if (isPrimary) {
|
| - // TODO(ymalik): This just calls Chrome's help and feedback page for now. It
|
| - // should instead start a VR-specific Feedback activity.
|
| - activity.startHelpAndFeedback(activity.getActivityTab(), "vrExitFeedback");
|
| + startFeedback(tab);
|
| } else {
|
| VrFeedbackStatus.setFeedbackOptOut(true);
|
| }
|
|
|