Perhaps I'm misunderstanding the code, but this approach seems to have a few drawbacks. First of all it's not very scalable to deep-clone the whole list. More seriously, the order of the bookmarks seems to be unstable. When I remove a bookmark I want the other ones to stay where they are. Currently they jump around in some circumstances and I lose my place. The order also changes sometimes when I pull to reload.