| 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 a925f57b3bc1536614d9d640ad6d68b6d9a30f3d..d436748a5a6ebda4acfb37e6db4be276dc3cdb74 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
|
| @@ -51,7 +51,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| VISIT,
|
| }
|
|
|
| - private EnhancedBookmarksModel mEnhancedBookmarksModel;
|
| + private EnhancedBookmarksModel mModel;
|
| private BookmarkId mBookmarkId;
|
| private EmptyAlertEditText mTitleEditText;
|
| private EmptyAlertEditText mUrlEditText;
|
| @@ -76,7 +76,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| @Override
|
| public void bookmarkNodeMoved(BookmarkItem oldParent, int oldIndex, BookmarkItem newParent,
|
| int newIndex) {
|
| - BookmarkId movedBookmark = mEnhancedBookmarksModel.getChildAt(newParent.getId(),
|
| + BookmarkId movedBookmark = mModel.getChildAt(newParent.getId(),
|
| newIndex);
|
| if (movedBookmark.equals(mBookmarkId)) {
|
| mFolderTextView.setText(newParent.getTitle());
|
| @@ -86,14 +86,14 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| @Override
|
| public void bookmarkNodeChanged(BookmarkItem node) {
|
| if (mBookmarkId.equals(node.getId()) || node.getId().equals(
|
| - mEnhancedBookmarksModel.getBookmarkById(mBookmarkId).getParentId())) {
|
| + mModel.getBookmarkById(mBookmarkId).getParentId())) {
|
| updateViewContent();
|
| }
|
| }
|
|
|
| @Override
|
| public void bookmarkModelChanged() {
|
| - if (mEnhancedBookmarksModel.doesBookmarkExist(mBookmarkId)) {
|
| + if (mModel.doesBookmarkExist(mBookmarkId)) {
|
| updateViewContent();
|
| } else {
|
| Log.wtf(TAG, "The bookmark was deleted somehow during bookmarkModelChange!",
|
| @@ -110,11 +110,15 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| int title = OfflinePageUtils.getStringId(R.string.edit_bookmark);
|
| setTitle(title);
|
| EnhancedBookmarkUtils.setTaskDescriptionInDocumentMode(this, getString(title));
|
| - mEnhancedBookmarksModel = new EnhancedBookmarksModel();
|
| + mModel = new EnhancedBookmarksModel();
|
| mBookmarkId = BookmarkId.getBookmarkIdFromString(
|
| getIntent().getStringExtra(INTENT_BOOKMARK_ID));
|
| - mEnhancedBookmarksModel.addObserver(mBookmarkModelObserver);
|
| - assert mEnhancedBookmarksModel.getBookmarkById(mBookmarkId).isEditable();
|
| + mModel.addObserver(mBookmarkModelObserver);
|
| + BookmarkItem item = mModel.getBookmarkById(mBookmarkId);
|
| + if (!mModel.doesBookmarkExist(mBookmarkId) || item == null) {
|
| + finish();
|
| + return;
|
| + }
|
|
|
| setContentView(R.layout.eb_edit);
|
| mTitleEditText = (EmptyAlertEditText) findViewById(R.id.title_text);
|
| @@ -130,7 +134,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| });
|
|
|
| if (OfflinePageBridge.isEnabled() && OfflinePageBridge.canSavePage(
|
| - mEnhancedBookmarksModel.getBookmarkById(mBookmarkId).getUrl())) {
|
| + mModel.getBookmarkById(mBookmarkId).getUrl())) {
|
| mOfflinePageModelObserver = new OfflinePageModelObserver() {
|
| @Override
|
| public void offlinePageDeleted(BookmarkId bookmarkId) {
|
| @@ -140,7 +144,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| }
|
| };
|
|
|
| - mEnhancedBookmarksModel.getOfflinePageBridge().addObserver(mOfflinePageModelObserver);
|
| + mModel.getOfflinePageBridge().addObserver(mOfflinePageModelObserver);
|
| // Make offline page section visible and find controls.
|
| findViewById(R.id.offline_page_group).setVisibility(View.VISIBLE);
|
| getIntent().setExtrasClassLoader(WebContents.class.getClassLoader());
|
| @@ -156,18 +160,19 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| }
|
|
|
| private void updateViewContent() {
|
| - BookmarkItem bookmarkItem = mEnhancedBookmarksModel.getBookmarkById(mBookmarkId);
|
| + BookmarkItem bookmarkItem = mModel.getBookmarkById(mBookmarkId);
|
|
|
| if (!TextUtils.equals(mTitleEditText.getTrimmedText(), bookmarkItem.getTitle())) {
|
| mTitleEditText.setText(bookmarkItem.getTitle());
|
| }
|
| - String folderTitle = mEnhancedBookmarksModel.getBookmarkTitle(bookmarkItem.getParentId());
|
| + String folderTitle = mModel.getBookmarkTitle(bookmarkItem.getParentId());
|
| if (!TextUtils.equals(mFolderTextView.getText(), folderTitle)) {
|
| mFolderTextView.setText(folderTitle);
|
| }
|
| if (!TextUtils.equals(mUrlEditText.getTrimmedText(), bookmarkItem.getUrl())) {
|
| mUrlEditText.setText(bookmarkItem.getUrl());
|
| }
|
| + mTitleEditText.setEnabled(bookmarkItem.isEditable());
|
| mUrlEditText.setEnabled(bookmarkItem.isUrlEditable());
|
| mFolderTextView.setEnabled(bookmarkItem.isMovable());
|
| }
|
| @@ -188,7 +193,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| // Log added for detecting delete button double clicking.
|
| Log.i(TAG, "Delete button pressed by user! isFinishing() == " + isFinishing());
|
|
|
| - mEnhancedBookmarksModel.deleteBookmark(mBookmarkId);
|
| + mModel.deleteBookmark(mBookmarkId);
|
| finish();
|
| return true;
|
| } else if (item.getItemId() == android.R.id.home) {
|
| @@ -200,26 +205,26 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
|
|
| @Override
|
| protected void onStop() {
|
| - if (mEnhancedBookmarksModel.doesBookmarkExist(mBookmarkId)) {
|
| + if (mModel.doesBookmarkExist(mBookmarkId)) {
|
| final String originalUrl =
|
| - mEnhancedBookmarksModel.getBookmarkById(mBookmarkId).getUrl();
|
| + mModel.getBookmarkById(mBookmarkId).getUrl();
|
| final String title = mTitleEditText.getTrimmedText();
|
| final String url = mUrlEditText.getTrimmedText();
|
|
|
| if (!mTitleEditText.isEmpty()) {
|
| - mEnhancedBookmarksModel.setBookmarkTitle(mBookmarkId, title);
|
| + mModel.setBookmarkTitle(mBookmarkId, title);
|
| }
|
|
|
| if (!mUrlEditText.isEmpty()
|
| - && mEnhancedBookmarksModel.getBookmarkById(mBookmarkId).isUrlEditable()) {
|
| + && mModel.getBookmarkById(mBookmarkId).isUrlEditable()) {
|
| String fixedUrl = UrlUtilities.fixupUrl(url);
|
| if (fixedUrl != null && !fixedUrl.equals(originalUrl)) {
|
| boolean hasOfflinePage = OfflinePageBridge.isEnabled()
|
| - && mEnhancedBookmarksModel.getOfflinePageBridge()
|
| + && mModel.getOfflinePageBridge()
|
| .getPageByBookmarkId(mBookmarkId) != null;
|
| RecordHistogram.recordBooleanHistogram(
|
| "OfflinePages.Edit.BookmarkUrlChangedForOfflinePage", hasOfflinePage);
|
| - mEnhancedBookmarksModel.setBookmarkUrl(mBookmarkId, fixedUrl);
|
| + mModel.setBookmarkUrl(mBookmarkId, fixedUrl);
|
| }
|
| }
|
| }
|
| @@ -231,12 +236,12 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| protected void onDestroy() {
|
| recordOfflineButtonAction(false);
|
| if (OfflinePageBridge.isEnabled()) {
|
| - mEnhancedBookmarksModel.getOfflinePageBridge().removeObserver(
|
| + mModel.getOfflinePageBridge().removeObserver(
|
| mOfflinePageModelObserver);
|
| }
|
| - mEnhancedBookmarksModel.removeObserver(mBookmarkModelObserver);
|
| - mEnhancedBookmarksModel.destroy();
|
| - mEnhancedBookmarksModel = null;
|
| + mModel.removeObserver(mBookmarkModelObserver);
|
| + mModel.destroy();
|
| + mModel = null;
|
| super.onDestroy();
|
| }
|
|
|
| @@ -245,14 +250,14 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
|
|
| // It is possible that callback arrives after the activity was dismissed.
|
| // See http://crbug.com/566939
|
| - if (mEnhancedBookmarksModel == null) return;
|
| + if (mModel == null) return;
|
|
|
| - mEnhancedBookmarksModel.getOfflinePageBridge().checkOfflinePageMetadata();
|
| + mModel.getOfflinePageBridge().checkOfflinePageMetadata();
|
|
|
| Button saveRemoveVisitButton = (Button) findViewById(R.id.offline_page_save_remove_button);
|
| TextView offlinePageInfoTextView = (TextView) findViewById(R.id.offline_page_info_text);
|
|
|
| - OfflinePageItem offlinePage = mEnhancedBookmarksModel.getOfflinePageBridge()
|
| + OfflinePageItem offlinePage = mModel.getOfflinePageBridge()
|
| .getPageByBookmarkId(mBookmarkId);
|
| if (offlinePage != null) {
|
| // Offline page exists. Show information and button to remove.
|
| @@ -282,7 +287,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| @Override
|
| public void onClick(View v) {
|
| recordOfflineButtonAction(true);
|
| - mEnhancedBookmarksModel.getOfflinePageBridge().deletePage(
|
| + mModel.getOfflinePageBridge().deletePage(
|
| mBookmarkId, new DeletePageCallback() {
|
| @Override
|
| public void onDeletePageDone(int deletePageResult) {
|
| @@ -303,7 +308,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| @Override
|
| public void onClick(View v) {
|
| recordOfflineButtonAction(true);
|
| - mEnhancedBookmarksModel.getOfflinePageBridge().savePage(
|
| + mModel.getOfflinePageBridge().savePage(
|
| mWebContents, mBookmarkId, new SavePageCallback() {
|
| @Override
|
| public void onSavePageDone(int savePageResult, String url) {
|
| @@ -333,7 +338,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
|
| // TODO(kkimlabs): Refactor this out to handle the intent in ChromeActivity.
|
| if (DeviceFormFactor.isTablet(this)) {
|
| EnhancedBookmarkUtils.openBookmark(
|
| - mEnhancedBookmarksModel, this, mBookmarkId, LaunchLocation.BOOKMARK_EDITOR);
|
| + mModel, this, mBookmarkId, LaunchLocation.BOOKMARK_EDITOR);
|
| } else {
|
| Intent intent = new Intent();
|
| intent.putExtra(
|
|
|