Добрый день!

Имеется ли возможность получить все закладки для данного браузера.

В интерфейсе nsINavBookmarksService такой возможности нет, хотя функция есть  exportBookmarksHTML но она не работает.

Может быть есть другая возможность

Большой пишет

получить все закладки

В каком виде?

Например,
Закладки – Показать все закладки – Импорт и резервирование – Экспорт закладок в HTML-файл…
работает.

<menuitem id="fileExport" command="OrganizerCommand_export" label="Экспорт закладок в HTML-файл…" accesskey="Э"/>
=> <command id="OrganizerCommand_export" oncommand="PlacesOrganizer.exportBookmarks();"/>
=> chrome://browser/content/places/places.js

Выделить код

Код:

exportBookmarks: function PO_exportBookmarks() {
    let fp = Cc["@mozilla.org/filepicker;1"].createInstance(Ci.nsIFilePicker);
    let fpCallback = function fpCallback_done(aResult) {
      if (aResult != Ci.nsIFilePicker.returnCancel) {
        Components.utils.import("resource://gre/modules/BookmarkHTMLUtils.jsm");
        BookmarkHTMLUtils.exportToFile(fp.file)
                         .then(null, Components.utils.reportError);
      }
    };
    ...

=> resource://gre/modules/BookmarkHTMLUtils.jsm

Выделить код

Код:

exportToFile: function BHU_exportToFile(aLocalFile) {
    let exporter = new BookmarkExporter();
    return exporter.exportToFile(aLocalFile);
  },
Выделить код

Код:

_doExport: function doExport() {
    ...
    let root = PlacesUtils.getFolderContents(
                                    PlacesUtils.bookmarksMenuFolderId).root;

Спасибо.

Посмотрел их код, мудрено (Не понятно зачем надо было так усложнять, ну да ладно).

Почему-то не получается получить описание.
Возможно я делаю что-то не так.


Выделить код

Код:

let aService = Cc["@mozilla.org/browser/annotation-service;1"].getService(Ci.nsIAnnotationService);
let root = PlacesUtils.getFolderContents(PlacesUtils.toolbarFolderId).root;
let a = aService.getItemAnnotation(root.getChild(4).itemId, aService.DESCRIPTION_ANNO);
Выделить код

Код:

"DESCRIPTION_ANNO" in aService; // false

А с "bookmarkProperties/description" у меня работает.

Infocatcher пишет

А с "bookmarkProperties/description" у меня работает.

Да, у меня тоже спасибо.