In addition to the DND feedback, this patch:
- introduces a new var 'BookmarksInsertion' that 'encapsulates' DND feedback
display.
- rewrite the rtl handling related to DND. BookmarksInsertion deals with this
subtleties and the "public" feedback orientation ("before"|"on"|"after")
returned by BookmarksInsertion.getOrientation refers now to the DOM.
- paste and copy commands on the menus now insert after the rclicked element.
The hack that appended everything at the end of the container has been removed
or more accurately replaced by another one that is at least invisible to the
user and we already used for DND. The problem is due a problem with the content
building of containers with siblings (open in tabs stuff) not generated by the
bookmarks template.
- usual small glitch fixing.
192624 - empty bookmark folder should show "(Empty)"
202798 - customizing toolbar in fullscreen mode breaks menus (bandaid)
221482 - bookmarks toolbar temporarily cleared when clicking restore default set in customize
232089 - bookmarks 'create in' shouldn't persist
234089 - bookmarks toolbar folder shouldn't be deletable with C-x (crasher)
238661 - moving a bookmark folder to itself deletes the folder
250179 - bookmarks toolbar wonky after customization
250820 - toolbar icon state/context menu/etc. broken after returning from fullscreen mode
251988 - livemark menu doesn't work after going to page without livemark and clicking
251335 - bookmarks toolbar folder has different context menu from other bookmark folders
251802 - refresh livemark doesn't work from toolbar/menu
252053 - make bookmarks use SafeOutputStream (dwitte)
252133 - new bookmarks items should be added below selected items, not above
252792 - livemark context menu contains active new folder menu item
252870 - context menu of empty personal toolbar folder has inconsistent items
252875 - bookmarks root name not localizable
Some cleanup, use of "class" instead of "id" for the "open in tabs" menuitem and menuseparator, because the latter are supposed to be unique in the document.
Bug 210910: Right-clicking a file within a bookmarks folder in the bookmarks menu or toolbar makes that folder inaccessible
I added the bm command controller to the menubar bookmark menu, to deal with hidden bookmarks toolbar.
- logic change: a transaction will not be performed when one of its item can not be acted on. Before, the only the valid items were processed. A LOT of simplifications have come up. I am slowly moving toward the resolution of bug 168411, by simplifying the interface that will be needed to move the transactions to the bookmarks service.
- fix bug 221550: the selection is not retained when performing an invalid transaction
- no need to restore the selection after an action that doesn't touch the datasource.
- during a batch, the bookmarks toolbar observer wasn't notified.
- much faster preUpdateTreeSelection
- various code cleanup
- DND bookmarks in tree is now significantly faster.
- still need to figure out what is the best BATCH_LIMIT value.
an additional fix is included: if no ...#BookmarksToolbarFolder arc is found, then search for an (obsolete) resource "NC:PersonalToolbarFolder" (221410).
When none of them is found, then a new btf is created (only once!).
- remove unused functions. Note that RDF commands were already broken, so deleteBookmarkItem and insertBookmarkItem (that were not used) may come back, but in another form.
- remove the "New Bookmark Folder" and "New Search Folder"
- refactor the "html" serializer to avoid some duplicated code.
- remove the use of the profile name for the bookmarks root.
- enforce synthax "aArgument" in some random places.
Bug 205378 - Meta bug for changes in bookmarks sorting code
r=jag, sr=sspitzer, a=sspitzer,asa
The CloneResource() has been back ported from Firebird, originally
implemented by Pierre Chanial.