diff --git a/src/com/android/browser/BrowserBookmarksAdapter.java b/src/com/android/browser/BrowserBookmarksAdapter.java
index 93cf5d9..afc28ba 100644
--- a/src/com/android/browser/BrowserBookmarksAdapter.java
+++ b/src/com/android/browser/BrowserBookmarksAdapter.java
@@ -49,6 +49,11 @@
     }
 
     @Override
+    protected long getItemId(Cursor c) {
+        return c.getLong(BookmarksLoader.COLUMN_INDEX_ID);
+    }
+
+    @Override
     public View newView(Context context, ViewGroup parent) {
         return mInflater.inflate(R.layout.bookmark_thumbnail, parent, false);
     }
diff --git a/src/com/android/browser/util/ThreadedCursorAdapter.java b/src/com/android/browser/util/ThreadedCursorAdapter.java
index b70ca36..72a07ea 100644
--- a/src/com/android/browser/util/ThreadedCursorAdapter.java
+++ b/src/com/android/browser/util/ThreadedCursorAdapter.java
@@ -137,7 +137,9 @@
 
     @Override
     public long getItemId(int position) {
-        return position;
+        synchronized (mCursorLock) {
+            return getItemId(getItem(position));
+        }
     }
 
     private void loadRowObject(int position, LoadContainer container) {
@@ -207,4 +209,5 @@
     public abstract void bindView(View view, T object);
     public abstract T getRowObject(Cursor c, T recycleObject);
     public abstract T getLoadingObject();
+    protected abstract long getItemId(Cursor c);
 }
\ No newline at end of file
diff --git a/src/com/android/browser/view/BookmarkExpandableView.java b/src/com/android/browser/view/BookmarkExpandableView.java
index 095bb7b..7badaf5 100644
--- a/src/com/android/browser/view/BookmarkExpandableView.java
+++ b/src/com/android/browser/view/BookmarkExpandableView.java
@@ -228,7 +228,7 @@
                     || mAdapter.mChildren.get(groupPosition).getCount() <= childPosition) {
                 return;
             }
-            long id = (Long) v.getTag(R.id.child_id);
+            long id = mAdapter.mChildren.get(groupPosition).getItemId(childPosition);
             if (mOnChildClickListener != null) {
                 mOnChildClickListener.onChildClick(BookmarkExpandableView.this,
                         v, groupPosition, childPosition, id);
@@ -331,7 +331,6 @@
                     View v = childAdapter.getView(realChildPosition, cv, row);
                     v.setTag(R.id.group_position, groupPosition);
                     v.setTag(R.id.child_position, realChildPosition);
-                    v.setTag(R.id.child_id, childAdapter.getItemId(realChildPosition));
                     v.setOnClickListener(mChildClickListener);
                     v.setLongClickable(mLongClickable);
                     if (cv == null) {
