OSDN Git Service

When displaying a bookmark item, only truncate the Strings that we display in the...
authorBen Murdoch <benm@google.com>
Wed, 28 Oct 2009 13:22:46 +0000 (13:22 +0000)
committerBen Murdoch <benm@google.com>
Wed, 28 Oct 2009 13:22:46 +0000 (13:22 +0000)
Fix for b/2219781

Change-Id: I4ea3cdfbaedce0dea6bd69f560aae9aea71ed7c1

src/com/android/browser/BookmarkItem.java
src/com/android/browser/BrowserBookmarksAdapter.java

index a70dd4f..fbb362e 100644 (file)
@@ -33,6 +33,7 @@ class BookmarkItem extends LinearLayout {
     protected TextView    mUrlText;
     protected ImageView   mImageView;
     protected String      mUrl;
+    protected String      mTitle;
 
     /**
      *  Instantiate a bookmark item, including a default favicon.
@@ -65,7 +66,7 @@ class BookmarkItem extends LinearLayout {
      * Return the name assigned to this bookmark item.
      */
     /* package */ String getName() {
-        return mTextView.getText().toString();
+        return mTitle;
     }
 
     /**
@@ -99,6 +100,16 @@ class BookmarkItem extends LinearLayout {
      *  @param name The new name for the bookmark item.
      */
     /* package */ void setName(String name) {
+        if (name == null) {
+            return;
+        }
+
+        mTitle = name;
+
+        if (name.length() > BrowserSettings.MAX_TEXTVIEW_LEN) {
+            name = name.substring(0, BrowserSettings.MAX_TEXTVIEW_LEN);
+        }
+
         mTextView.setText(name);
     }
     
@@ -107,7 +118,16 @@ class BookmarkItem extends LinearLayout {
      *  @param url  The new url for the bookmark item.
      */
     /* package */ void setUrl(String url) {
-        mUrlText.setText(url);
+        if (url == null) {
+            return;
+        }
+
         mUrl = url;
+
+        if (url.length() > BrowserSettings.MAX_TEXTVIEW_LEN) {
+            url = url.substring(0, BrowserSettings.MAX_TEXTVIEW_LEN);
+        }
+
+        mUrlText.setText(url);
     }
 }
index dd56d2f..d1fdf07 100644 (file)
@@ -540,15 +540,8 @@ class BrowserBookmarksAdapter extends BaseAdapter {
     private void bind(BookmarkItem b, int position) {
         mCursor.moveToPosition(position- mExtraOffset);
 
-        String title = mCursor.getString(Browser.HISTORY_PROJECTION_TITLE_INDEX);
-        if (title.length() > BrowserSettings.MAX_TEXTVIEW_LEN) {
-            title = title.substring(0, BrowserSettings.MAX_TEXTVIEW_LEN);
-        }
-        b.setName(title);
+        b.setName(mCursor.getString(Browser.HISTORY_PROJECTION_TITLE_INDEX));
         String url = mCursor.getString(Browser.HISTORY_PROJECTION_URL_INDEX);
-        if (url.length() > BrowserSettings.MAX_TEXTVIEW_LEN) {
-            url = url.substring(0, BrowserSettings.MAX_TEXTVIEW_LEN);
-        }
         b.setUrl(url);
         byte[] data = mCursor.getBlob(Browser.HISTORY_PROJECTION_FAVICON_INDEX);
         if (data != null) {