Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Расширения для Firefox/Mozilla Firefox Extensions (часть 8)

Модерирует : gyra, Maz

gyra (16-09-2017 13:48): Расширения для Firefox/Mozilla Firefox Extensions (часть 9)  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

wvxwxvw

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
@namespace url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);
 
#placesContext .box-inherit.scrollbox-innerbox {
    -moz-binding: url('data:application/xml,\
\
<?xml version="1.0"?>\%0A\
<bindings xmlns="http://www.mozilla.org/xbl">\%0A\
    <binding id="placesContext_extraMenuitem">\%0A\
        <implementation>\%0A\
            <constructor>\%0A\
                <![CDATA[\%0A\
                    var before = document.getElementById("placesContext_editSeparator");\%0A\
                    var popup = this.linkedPopup = this.parentNode.parentNode.parentNode;\%0A\
                    var menuitem = popup.insertBefore(document.createElement("menuitem"), before);\%0A\
                    menuitem.id = "placesContext_goParentFolder";\%0A\
                    menuitem.setAttribute("label", decodeURIComponent(\%0A\
                        "Go Parent Folder"\%0A\
                    ));\%0A\
                    function sel(view, id) {\%0A\
                        var str = "node.type == Ci.nsINavHistoryResultNode.RESULT_TYPE_FOLDER";\%0A\
                        var src = view.selectItems.toString();\%0A\
                        var code = src.replace(str + ";", "(" + str + " || " + str + "_SHORTCUT);");\%0A\
                        view.place = view.place; eval("(" + code + ")").bind(view)([id]);\%0A\
                        vis(view);\%0A\
                    }\%0A\
                    function vis(tree) {\%0A\
                        var pos = 0.5, tbo = tree.treeBoxObject;\%0A\
                        var ind = tbo.view.selection.currentIndex;\%0A\
                        var first = tbo.getFirstVisibleRow();\%0A\
                        var visibleRows = tbo.height/tbo.rowHeight;\%0A\
                        var newFirst = ind - pos*visibleRows + 1;\%0A\
                        tbo.scrollByLines(Math.round(newFirst - first));\%0A\
                    }\%0A\
                    menuitem.setAttribute("oncommand", "this.cmd();");\%0A\
                    menuitem.cmd = function() {\%0A\
                        var view = popup._view, id = view.selectedNode.itemId;\%0A\
                        if (view.id == "placeContent") {\%0A\
                            var plView = document.getElementById("placesList");\%0A\
                            var parentId = PlacesUtils.bookmarks.getFolderIdForItem(id);\%0A\
                            sel(plView, parentId);\%0A\
                            setTimeout(() => {view.selectItems([id]); vis(view);}, 100);\%0A\
                        } else\%0A\
                            sel(view, id);\%0A\
                    }\%0A\
                    var handler = this.linkedPopupPopupshowihgHandler = function () {\%0A\
                        var place = (popup._view.selectedNodes.length == 1) && popup._view.selectedNode;\%0A\
                        menuitem.hidden = menuitem.disabled = !(place && PlacesUtils.nodeIsBookmark(place)\%0A\
                            && (location.href == "chrome://browser/content/places/places.xul" || location.href == "chrome://browser/content/bookmarks/bookmarksPanel.xul"));\%0A\
                    };\%0A\
                    handler(); popup.addEventListener("popupshowing", handler);\%0A\
                ]]>\%0A\
            </constructor>\%0A\
            <destructor>\%0A\
                    this.linkedPopup.removeEventListener("popupshowing", this.linkedPopupPopupshowihgHandler);\%0A\
            </destructor>\%0A\
        </implementation>\%0A\
    </binding>\%0A\
</bindings>\
\
    ') !important;
}  

Всего записей: 5677 | Зарегистр. 02-04-2015 | Отправлено: 12:48 20-07-2017
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » Расширения для Firefox/Mozilla Firefox Extensions (часть 8)
gyra (16-09-2017 13:48): Расширения для Firefox/Mozilla Firefox Extensions (часть 9)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru