Protect url editing from progress changes
Also fixes url bar disappearing when selection mode is entered
Change-Id: I87ec4ac9bb3abd9e472df9f565bf8b0f6d1f510e
diff --git a/src/com/android/browser/TitleBarXLarge.java b/src/com/android/browser/TitleBarXLarge.java
index f1c6c6b..496246c 100644
--- a/src/com/android/browser/TitleBarXLarge.java
+++ b/src/com/android/browser/TitleBarXLarge.java
@@ -186,6 +186,11 @@
* @param clearInput clear the input field
*/
void onEditUrl(boolean clearInput) {
+ // editing takes preference of progress
+ mContainer.setVisibility(View.VISIBLE);
+ if (mUseQuickControls) {
+ mProgressView.setVisibility(View.GONE);
+ }
if (!mUrlInput.hasFocus()) {
mUrlInput.requestFocus();
}
@@ -341,16 +346,21 @@
*/
@Override
void setProgress(int newProgress) {
+ boolean blockvisuals = mUseQuickControls && isEditingUrl();
if (newProgress >= PROGRESS_MAX) {
- mProgressView.setProgress(PageProgressView.MAX_PROGRESS);
- mProgressView.setVisibility(View.GONE);
+ if (!blockvisuals) {
+ mProgressView.setProgress(PageProgressView.MAX_PROGRESS);
+ mProgressView.setVisibility(View.GONE);
+ mStopButton.setImageDrawable(mReloadDrawable);
+ }
mInLoad = false;
- mStopButton.setImageDrawable(mReloadDrawable);
} else {
if (!mInLoad) {
- mProgressView.setVisibility(View.VISIBLE);
+ if (!blockvisuals) {
+ mProgressView.setVisibility(View.VISIBLE);
+ mStopButton.setImageDrawable(mStopDrawable);
+ }
mInLoad = true;
- mStopButton.setImageDrawable(mStopDrawable);
}
mProgressView.setProgress(newProgress * PageProgressView.MAX_PROGRESS
/ PROGRESS_MAX);
diff --git a/src/com/android/browser/XLargeUi.java b/src/com/android/browser/XLargeUi.java
index 7f9baa7..11642af 100644
--- a/src/com/android/browser/XLargeUi.java
+++ b/src/com/android/browser/XLargeUi.java
@@ -174,13 +174,15 @@
if (tab.inForeground()) {
mFakeTitleBar.setProgress(progress);
if (progress == 100) {
- hideFakeTitleBar();
- if (mUseQuickControls) {
- mFakeTitleBar.setShowProgressOnly(false);
- setFakeTitleBarGravity(Gravity.BOTTOM);
+ if (!mFakeTitleBar.isEditingUrl()) {
+ hideFakeTitleBar();
+ if (mUseQuickControls) {
+ mFakeTitleBar.setShowProgressOnly(false);
+ setFakeTitleBarGravity(Gravity.BOTTOM);
+ }
}
} else {
- if (mUseQuickControls) {
+ if (mUseQuickControls && !mFakeTitleBar.isEditingUrl()) {
mFakeTitleBar.setShowProgressOnly(true);
if (!isFakeTitleBarShowing()) {
setFakeTitleBarGravity(Gravity.TOP);
@@ -269,6 +271,8 @@
}
void showFakeTitleBarAndEdit() {
+ mFakeTitleBar.setShowProgressOnly(false);
+ setFakeTitleBarGravity(Gravity.BOTTOM);
showFakeTitleBar();
mFakeTitleBar.onEditUrl(false);
}
@@ -306,7 +310,7 @@
@Override
public void onActionModeStarted(ActionMode mode) {
- if (mFakeTitleBar.isEditingUrl()) {
+ if (!mFakeTitleBar.isEditingUrl()) {
// hide the fake title bar when CAB is shown
hideFakeTitleBar();
}