Index: chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java |
index 428c19285e39df1ff8d2043c92860be6d979031d..47e9d1285e28a0c4d2834adbb357438c613e2688 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java |
@@ -6,6 +6,7 @@ package org.chromium.chrome.browser.enhancedbookmarks; |
import android.os.Bundle; |
import android.support.v7.widget.Toolbar; |
+import android.text.TextUtils; |
import android.view.Menu; |
import android.view.MenuItem; |
import android.view.View; |
@@ -66,6 +67,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase { |
@Override |
public void bookmarkModelChanged() { |
+ updateViewContent(); |
if (!mEnhancedBookmarksModel.doesBookmarkExist(mBookmarkId)) { |
Log.wtf(TAG, "The bookmark was deleted somehow during bookmarkModelChange!", |
new Exception(TAG)); |
@@ -86,8 +88,9 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase { |
setContentView(R.layout.eb_edit); |
mTitleEditText = (EmptyAlertEditText) findViewById(R.id.title_text); |
- mUrlEditText = (EmptyAlertEditText) findViewById(R.id.url_text); |
mFolderTextView = (TextView) findViewById(R.id.folder_text); |
+ mUrlEditText = (EmptyAlertEditText) findViewById(R.id.url_text); |
+ |
mFolderTextView.setOnClickListener(new View.OnClickListener() { |
@Override |
public void onClick(View v) { |
@@ -95,6 +98,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase { |
EnhancedBookmarkEditActivity.this, mBookmarkId); |
} |
}); |
+ |
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); |
setSupportActionBar(toolbar); |
getSupportActionBar().setDisplayHomeAsUpEnabled(true); |
@@ -104,10 +108,17 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase { |
private void updateViewContent() { |
BookmarkItem bookmarkItem = mEnhancedBookmarksModel.getBookmarkById(mBookmarkId); |
- mTitleEditText.setText(bookmarkItem.getTitle()); |
- mUrlEditText.setText(bookmarkItem.getUrl()); |
- mFolderTextView.setText( |
- mEnhancedBookmarksModel.getBookmarkTitle(bookmarkItem.getParentId())); |
+ |
+ if (!TextUtils.equals(mTitleEditText.getTrimmedText(), bookmarkItem.getTitle())) { |
+ mTitleEditText.setText(bookmarkItem.getTitle()); |
+ } |
+ String folderTitle = mEnhancedBookmarksModel.getBookmarkTitle(bookmarkItem.getParentId()); |
+ if (!TextUtils.equals(mFolderTextView.getText(), folderTitle)) { |
+ mFolderTextView.setText(folderTitle); |
+ } |
+ if (!TextUtils.equals(mUrlEditText.getTrimmedText(), bookmarkItem.getUrl())) { |
+ mUrlEditText.setText(bookmarkItem.getUrl()); |
+ } |
} |
@Override |
@@ -130,27 +141,25 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase { |
finish(); |
return true; |
} else if (item.getItemId() == android.R.id.home) { |
- onBackPressed(); |
+ finish(); |
return true; |
} |
return super.onOptionsItemSelected(item); |
} |
@Override |
- public void onBackPressed() { |
- String newTitle = mTitleEditText.getTrimmedText(); |
- String newUrl = mUrlEditText.getTrimmedText(); |
- newUrl = UrlUtilities.fixupUrl(newUrl); |
- if (newUrl == null) newUrl = ""; |
- mUrlEditText.setText(newUrl); |
- |
- if (!mTitleEditText.validate() || !mUrlEditText.validate()) return; |
- |
- mEnhancedBookmarksModel.setBookmarkTitle(mBookmarkId, newTitle); |
- mEnhancedBookmarksModel.setBookmarkUrl(mBookmarkId, newUrl); |
- super.onBackPressed(); |
- } |
+ protected void onStop() { |
+ if (mTitleEditText.isEmpty()) { |
+ mEnhancedBookmarksModel.setBookmarkTitle(mBookmarkId, mTitleEditText.getTrimmedText()); |
+ } |
+ if (mUrlEditText.isEmpty()) { |
+ String fixedUrl = UrlUtilities.fixupUrl(mUrlEditText.getTrimmedText()); |
+ if (fixedUrl != null) mEnhancedBookmarksModel.setBookmarkUrl(mBookmarkId, fixedUrl); |
+ } |
+ |
+ super.onStop(); |
+ } |
@Override |
protected void onDestroy() { |
mEnhancedBookmarksModel.removeObserver(mBookmarkModelObserver); |