Полезная информация

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№1370106-09-2019 16:01:03

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 976
UA: Firefox 52.0

Re: Custom Buttons

func4ptch4 пишет:

И вопрос, написано "Fix menu auto-opening in Firefox 69+" то есть там уже она есть? Почему тогда не открывалось автоматом?..

Чтобы открылось автоматом должен быть
открыт какой-нибудь из коллег по тулбару.

func4ptch4 пишет:

при клике все норм при автопопапе криво вниз

Это на вертикальном тулбаре что ли?
Можно попробовать заменить в автопопапе 'after_start'
на DropElt.closest("toolbar[orient=vertical]") ? "end_before" : "after_start"

Отсутствует

 

№1370206-09-2019 17:55:24

User999
Участник
 
Группа: Members
Зарегистрирован: 06-09-2019
Сообщений: 2
UA: Firefox 69.0

Re: Custom Buttons

Странно. Тут https://addons.thunderbird.net/en-us/firefox/addon/custom-buttons/ написано, что custom-buttons в Quantum не работают, но тема живая.
Как вы работаете с custom-buttons? Подключаете поддержку устаревших расширений?

Отсутствует

 

№1370306-09-2019 18:11:30

kokoss
Участник
 
Группа: Members
Зарегистрирован: 15-02-2018
Сообщений: 458
UA: Firefox 52.0

Отсутствует

 

№1370406-09-2019 23:20:46

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 126
UA: Firefox 69.0

Re: Custom Buttons

Dumby
Сработало ураа) да на вертикальном.

может кому надо (AutoPopup)

Выделить код

Код:

// ==UserScript==
// @name AutoPopup.uc.js
// @description Auto popup menulist/menupopup/Panelpopup
// @compatibility Firefox 2.0+
// @author GOLF-AT
// @version 2.0.0.20131119
(function(){var PopElt=null;var DropElt=null;
            var PopTimer=null;var HideTimer=null;
            var AlwaysPop=false;var nDelay=600;

 function IsNewMenuBtn(elt){try{return elt.id=='PanelUI-menu-button';}catch(e){return false;}}
 function AutoPopup(){PopTimer=null;
                      if (DropElt){
                      if (DropElt.localName=='dropmarker' ||
                IsNewMenuBtn(DropElt))
                PopElt=DropElt;
                else{
                var v=null;
                try{v=DropElt.ownerDocument.
                    getAnonymousNodes(DropElt);
                }catch(ex){}
                if(v!=null && v.length!=0 && v[0].
                    localName=='menupopup')
                    PopElt = v[0];
                else
                    PopElt=DropElt.childNodes[0];}

            if (IsNewMenuBtn(PopElt)){PanelUI.show();return;}
            try{PopElt.openPopup(PopElt.parentNode,  DropElt.closest("toolbar[orient=vertical]")?'end_before':'after_start');  //('after_start');|forum.mozilla-russia.org/viewtopic.php?pid=773032#p773032
            }catch(e){PopElt=null;}
        }
    }

    function HidePopup()
    {
        try {
            if (PopElt.localName=='dropmarker')
                PopElt.parentNode.closePopup();
            else if (IsNewMenuBtn(PopElt))
                PanelUI.hide();
            else
                PopElt.hidePopup();
        }catch(e) {}
        HideTimer = null; DropElt = null;
        PopElt = null;
    }

    function MouseOver(e)
    {
        if (!AlwaysPop && !document.hasFocus())
            return;
        if (e.target.getAttribute('cb-name') == "Proxy") return;
        if (e.target.getAttribute('cb-name') == "Merge Custom Button") return;
        if (e.target.getAttribute('cb-name') == "Session Bookmarks") return;

        if (IsButton(e.target)) {
            type = e.target.getAttribute('type');
            if (type == 'menu-button') {
                if (e.originalTarget!=e.target)
                    return;
            }
            /*else {
                if (type != 'menu') return;
            }*/
        }

        if (HideTimer) {
            window.clearTimeout(HideTimer);
            HideTimer = null;
        }
        try {
            if ('PopupAutoComplete'==e.target.id.
                substr(0,17))
                return;
            for(var elt=e.target; elt!=null; elt=
                elt.parentNode) {
                if (elt.localName=='popup' || elt.
                    localName=='menupopup')
                    return;
            }
        }catch(ex) {}

        if (IsNewMenuBtn(PopElt)) {
            if (e.target != PopElt) HidePopup();
        }
        else if (PopElt != null) {
            if (DropElt!=null && e.target==DropElt)
                return;
            try {
                if (PopElt.localName != 'dropmarker'
                    ) {
                    for(var elt=e.target; elt!=null;
                        elt=elt.parentNode) {
                        if (elt == PopElt) return;
                    }
                }
            }catch(ex) {}
            HidePopup();
        }
        DropElt = e.target;
        PopTimer = setTimeout(AutoPopup, nDelay);
    }

    function MouseOut(e)
    {
        if (PopTimer) {
            window.clearTimeout(PopTimer);
            PopTimer = null;
        }
        if (!HideTimer && PopElt && !IsNewMenuBtn(e.
            target))
            HideTimer = window.setTimeout(HidePopup,
                500);
    }

    function IsButton(elt) {
        try {
            return elt.localName=='toolbarbutton' || elt
                .localName=='button';
        }catch(e) { return false; }
    }

    function IsMenuButton(elt) {
        if (IsNewMenuBtn(elt)) return true;

        if (!IsButton(elt)) return false;
        for(var i=0; i<2; i++) {
            try {
                var nodes = i==0x01 ? elt.childNodes : elt.
                    ownerDocument.getAnonymousNodes(elt);
                if (nodes!=null && nodes.length && nodes[0]
                    .localName=='menupopup')
                    return true;
            }catch(e) {}
        }
        return false;
    }

    function EnumElement(elt) {
        try {
            if (elt.localName == 'prefpane') {
                elt.addEventListener('paneload', function(e) {
                    setTimeout(function() { EnumElement(e.
                        target); }, 100);
                    }, false);
            }
            else if(elt.id=='sidebar' && !elt.hasAttribute(
                'AutoPopup')) {
                elt.setAttribute('AutoPopup', true)
                elt.addEventListener('SidebarFocused',
                    function(e) { EnumElement(elt); }, false);
            }
            else if(elt.id == 'editBookmarkPanel')
                return;
        }catch(e) {}

        for(var i=0; i<2; i++) {
            var nodes = null;
            try {
                if (elt.localName == 'browser') {
                    i = 1;
                    nodes = elt.contentDocument.childNodes;
                }
                else
                    nodes = i==0x01 ? elt.childNodes : elt.
                        ownerDocument.getAnonymousNodes(elt);
            }catch(e) { nodes = null; }
            if (nodes == null) continue;

            for(var n=0; n<nodes.length; n++) {
                try {
                    var node = nodes[n];
                    if ('PopupAutoComplete'==node.getAttribute(
                        'id').substr(0,17) || 'menupopup'==node
                        .localName || node.localName=='popup')
                        ;
                    else if (node.localName != 'dropmarker') {
                        if (node.localName=='menu' && 'menubar'
                            ==node.parentNode.localName)
                            ;
                        else if(!IsMenuButton(node))
                            node = null;
                    }
                    else if(node.getAttribute('type')=='menu') {
                        node = node.parentNode;
                        if (!node.firstChild || node.firstChild.
                            localName!='menupopup')
                            continue;
                    }
                    if (node == null) {
                        EnumElement(nodes[n]); continue;
                    }
                    if (node.hasAttribute('command')) continue;

                    addEventListener('mouseout', MouseOut,
                        false, node);
                    addEventListener('mouseover',MouseOver,
                        false, node);
                }catch(e) {}
            }
        }
    }
    setTimeout(function() { EnumElement(document); }, 1100);})();


Доктор ТуамОсес, как по мне она делает большой взрыв и создает новую вселенную.

Отредактировано func4ptch4 (07-09-2019 20:17:20)

Отсутствует

 

№1370507-09-2019 09:19:18

Доктор ТуамОсес
Участник
 
Группа: Members
Зарегистрирован: 21-04-2014
Сообщений: 202
UA: Firefox 35.0

Re: Custom Buttons

func4ptch4
Ашто она делает?http://s5.rimg.info/1cd0031bea37f4c11a1f189dc370571f.gif

Отсутствует

 

№1370607-09-2019 12:49:55

solombala
Участник
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 104
UA: Firefox 69.0

Re: Custom Buttons

Dumby
http://htmlbook.ru/css/padding
Что делать? Падает 69 при  MOZ_FORCE_DISABLE_E10S=1 или в коде это, падает при без мульти...
Это Зачем?

скрытый текст
//
try {
    Components.interfaces.nsIUDPSocketChild ||
    Cc["@mozilla.org/process/environment;1"].getService(Ci.nsIEnvironment).set(
        "MOZ_FORCE_DISABLE_E10S",
        Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch)
            .getBoolPref("browser.tabs.remote.autostart", true) ? "" : "1"
    );
} catch(ex) {}

browser.tabs.remote.autostart", false  - true -false на это кнопку сделал, так другие кнопки не того, перевод и т.д..
Эта шарада с 69, конкретно достала...Перенос в плеер (не из контекста) тоже отвалился ..
Это подставлять? (losslessDecodeURI(gBrowser.currentURI) ...Не, не справлюсь.

Отредактировано solombala (07-09-2019 18:04:51)

Отсутствует

 

№1370707-09-2019 16:58:54

leex
Участник
 
Группа: Members
Зарегистрирован: 24-03-2011
Сообщений: 244
UA: Firefox 69.0

Re: Custom Buttons

Ребята есть ли кнопка для копипаста?
На некоторых сайтах когда копируешь текст и вставляешь его в другой документ, то автоматом добавляется ссылка на страницу откуда было скопировано.
Хотелось бы запретить автоматическое добавление ссылок.

А на других сайтах текст вообще не выделяется и не копируется
Есть ли кнопка, которая позволяла бы копирование?

Отредактировано leex (08-09-2019 19:11:53)

Отсутствует

 

№1370807-09-2019 20:16:32

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 126
UA: Firefox 69.0

Re: Custom Buttons

leex user_pref("dom.event.clipboardevents.enabled",false); //=Не вставляются комментарии на Youtube - изменить (п.у. true), глючит фейсбук!
                                                                                               //=Запрет сайту знать что вы копировали, также убирает копирайт.

Tampermonkey (js)

Выделить код

Код:

// ==UserScript==
// @name          Absolute Enable Right Click & Copy
// @namespace     Absolute Right Click
// @description   Force Enable Right Click & Copy & Highlight
// @shortcutKeys  [Ctrl + `] Activate Absolute Right Click Mode To Force Remove Any Type Of Protection
// @author        Absolute
// @version       1.8.9
// @include       *://*
// @icon          https://i.imgur.com/AC7SyUr.png
// @compatible    Chrome Google Chrome + Tampermonkey
// @grant         GM_registerMenuCommand
// @license       BSD
// @copyright     Absolute, 2016-Oct-06
// ==/UserScript==

(function() {
    'use strict';

    var css = document.createElement('style');
    var head = document.head;

    css.type = 'text/css';

    css.innerText = `* {
        -webkit-user-select: text !important;
        -moz-user-select: text !important;
        -ms-user-select: text !important;
         user-select: text !important;
    }`;

    function main() {

        var doc = document;
        var body = document.body;

        var docEvents = [
            doc.oncontextmenu = null,
            doc.onselectstart = null,
            doc.ondragstart = null,
            doc.onmousedown = null
        ];

        var bodyEvents = [
            body.oncontextmenu = null,
            body.onselectstart = null,
            body.ondragstart = null,
            body.onmousedown = null,
            body.oncut = null,
            body.oncopy = null,
            body.onpaste = null
        ];

        [].forEach.call(
            ['copy', 'cut', 'paste', 'select', 'selectstart'],
            function(event) {
                document.addEventListener(event, function(e) { e.stopPropagation(); }, true);
            }
        );

        alwaysAbsoluteMode();
        enableCommandMenu();
        head.appendChild(css);
        document.addEventListener('keydown', keyPress);
    }

    function keyPress(event) {
        if (event.ctrlKey && event.keyCode == 192) {
            return confirm('Activate Absolute Right Click Mode!') == true ? absoluteMode() : null;
        }
    }

    function absoluteMode() {
        [].forEach.call(
            ['contextmenu', 'copy', 'cut', 'paste', 'mouseup', 'mousedown', 'keyup', 'keydown', 'drag', 'dragstart', 'select', 'selectstart'],
            function(event) {
                document.addEventListener(event, function(e) { e.stopPropagation(); }, true);
            }
        );
    }

    function alwaysAbsoluteMode() {
        let sites = ['example.com','www.example.com'];
        const list = RegExp(sites.join('|')).exec(location.hostname);
        return list ? absoluteMode() : null;
    }

    function enableCommandMenu() {
        var commandMenu = true;
        try {
            if (typeof(GM_registerMenuCommand) == undefined) {
                return;
            } else {
                if (commandMenu == true ) {
                    GM_registerMenuCommand('Enable Absolute Right Click Mode', function() {
                        return confirm('Activate Absolute Right Click Mode!') == true ? absoluteMode() : null;
                    });
                }
            }
        }
        catch(err) {
            console.log(err);
        }
    }

    var blackList = [
        'youtube.com','.google.','.google.com','greasyfork.org','twitter.com','instagram.com','facebook.com','translate.google.com','.amazon.','.ebay.','github.','stackoverflow.com',
        'bing.com','live.com','.microsoft.com','dropbox.com','pcloud.com','box.com','sync.com','onedrive.com','mail.ru','deviantart.com','pastebin.com',
        'dailymotion.com','twitch.tv','spotify.com','steam.com','steampowered.com','gitlab.com','.reddit.com'
    ]

    var enabled = false;
    var url = window.location.hostname;
    var match = RegExp(blackList.join('|')).exec(url);

    if (window && typeof window != undefined && head != undefined) {

        if (!match && enabled != true) {

            main();
            enabled = true

            //console.log(location.hostname);

            window.addEventListener('contextmenu', function contextmenu(event) {
                event.stopPropagation();
                event.stopImmediatePropagation();
                var handler = new eventHandler(event);
                window.removeEventListener(event.type, contextmenu, true);
                var eventsCallBack = new eventsCall(function() {});
                handler.fire();
                window.addEventListener(event.type, contextmenu, true);
                if (handler.isCanceled && (eventsCallBack.isCalled)) {
                    event.preventDefault();
                }
            }, true);
        }

        function eventsCall() {
            this.events = ['DOMAttrModified', 'DOMNodeInserted', 'DOMNodeRemoved', 'DOMCharacterDataModified', 'DOMSubtreeModified'];
            this.bind();
        }

        eventsCall.prototype.bind = function() {
            this.events.forEach(function (event) {
                document.addEventListener(event, this, true);
            }.bind(this));
        };

        eventsCall.prototype.handleEvent = function() {
            this.isCalled = true;
        };

        eventsCall.prototype.unbind = function() {
            this.events.forEach(function (event) {}.bind(this));
        };

        function eventHandler(event) {
            this.event = event;
            this.contextmenuEvent = this.createEvent(this.event.type);
        }

        eventHandler.prototype.createEvent = function(type) {
            var target = this.event.target;
            var event = target.ownerDocument.createEvent('MouseEvents');
            event.initMouseEvent(
                type, this.event.bubbles, this.event.cancelable,
                target.ownerDocument.defaultView, this.event.detail,
                this.event.screenX, this.event.screenY, this.event.clientX, this.event.clientY,
                this.event.ctrlKey, this.event.altKey, this.event.shiftKey, this.event.metaKey,
                this.event.button, this.event.relatedTarget
            );
            return event;
        };

        eventHandler.prototype.fire = function() {
            var target = this.event.target;
            var contextmenuHandler = function(event) {
                event.preventDefault();
            }.bind(this);
            target.dispatchEvent(this.contextmenuEvent);
            this.isCanceled = this.contextmenuEvent.defaultPrevented;
        };

    }

})();


upd: так оно и есть) добавил описание.

Отредактировано func4ptch4 (08-09-2019 03:36:59)

Отсутствует

 

№1370908-09-2019 02:24:34

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 549
UA: Firefox 69.0

Re: Custom Buttons

func4ptch4
Не знаю, как сейчас с этой настройкой, но раньше с ней не вставлялись комментарии на ютубе и глючил фейсбук...

Отсутствует

 

№1371008-09-2019 19:08:40

leex
Участник
 
Группа: Members
Зарегистрирован: 24-03-2011
Сообщений: 244
UA: Firefox 69.0

Re: Custom Buttons

func4ptch4
Благодарю за скрипт!

Отсутствует

 

№1371109-09-2019 19:57:07

Ultima2m
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 28-11-2013
Сообщений: 582
UA: Firefox 56.0

Re: Custom Buttons

leex пишет:

Не знаю, как сейчас с этой настройкой, но раньше с ней не вставлялись комментарии на ютубе и глючил фейсбук...

На WF  работает и комменты вроде нормально. Если есть проблемы с сайтами, то можно запретить на них работу скрипта.

Отсутствует

 

№1371209-09-2019 20:13:09

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 549
UA: Firefox 68.0

Re: Custom Buttons

Ultima2m
Нашёл у себя для таких случаев древний букмарклет. Не знаю, работает ли, хотел проверить, что есть WF?

Выделить код

Код:

javascript:(function(w){var%20arr=['contextmenu','copy','cut','paste','mousedown','mouseup','beforeunload','beforeprint'];for(var%20i=0,x;x=arr[i];i++){if(w['on'+x])w['on'+x]=null;w.addEventListener(x,function(e){e.stopPropagation()},true)};for(var%20j=0,f;f=w.frames[j];j++){try{arguments.callee(f)}catch(e){}}})(window);

Отсутствует

 

№1371310-09-2019 09:22:53

solombala
Участник
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 104
UA: Firefox 69.0

Re: Custom Buttons

Dumby
https://s17.directupload.net/images/190910/temp/84hhxolc.png
такая вот шняга с 69 , если стили меняю на xhtml, окно не такое. Нет новой версии СВ ? Сам рихтовал,но не то.Ставлю старую, тогда и стили не трогаю и в
AppConstants.jsm меняю

скрытый текст
BROWSER_CHROME_URL: "chrome://browser/content/browser.xul",

Где поганка зарыта? Нашел, кнопка Undo Close///Странно...
Рихтанул и ее, но popup и tooltip не работают...В this createElement надо XUL подставлять?
Или это?
&& node.namespaceURI == xulns

Отредактировано solombala (10-09-2019 13:54:06)

Отсутствует

 

№1371410-09-2019 10:10:12

Ultima2m
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 28-11-2013
Сообщений: 582
UA: Firefox 56.0

Re: Custom Buttons

xrun1 пишет:

Нашёл у себя для таких случаев древний букмарклет.

Работает, но кнопка Autocopy перестала копировать. Остальные вроде работают.

Отсутствует

 

№1371510-09-2019 15:23:50

solombala
Участник
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 104
UA: Firefox 69.0

Re: Custom Buttons

Infocatcher
Что с undo close в 69?

Отсутствует

 

№1371610-09-2019 17:04:00

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 549
UA: Firefox 68.0

Re: Custom Buttons

solombala
Работает кнопка, замените код в инициализации кодом отсюда.

Отсутствует

 

№1371710-09-2019 17:41:16

solombala
Участник
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 104
UA: Firefox 69.0

Re: Custom Buttons

xrun1
Да, xulns - в двух местах...А,я XulElement  подставлял...

Отсутствует

 

№1371811-09-2019 00:42:58

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 126
UA: Firefox 69.0

Re: Custom Buttons

Здравствуйте, как сделать чтобы он один раз сделал назад?

Выделить код

Код:

FileUtils.getFile("CurWorkD",["..","gBrave 0.67","brave-portable.exe"]);
FileUtils.File("/CurWorkD","\\..\\gBrave 0.67\\brave-portable.exe");

Как в этом коде.

скрытый текст

Выделить код

Код:

function openBrave(){
var prof=Services.dirsvc.get('CurWorkD',Ci.nsIFile);
var process=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
prof.initWithPath(prof.path+"\\..\\gBrave 0.67\\brave-portable.exe");
var uri=gBrowser.currentURI.spec;
var uri=/.рф/.test(uri)?Services.io.newURI(uri,null,null).asciiSpec:uri;
process.init(prof);
process.run(false,[uri],1);
}; /**/

Отредактировано func4ptch4 (11-09-2019 13:18:59)

Отсутствует

 

№1371911-09-2019 18:57:03

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 976
UA: Firefox 52.0

Re: Custom Buttons

func4ptch4 пишет:

как сделать чтобы он один раз сделал назад?

Да как обычно

скрытый текст

Выделить код

Код:

var file = Services.dirsvc.get("CurWorkD", Ci.nsIFile).parent;
["gBrave 0.67", "brave-portable.exe"].forEach(file.append);

alert(file.path);


А если есть непреодолимая тяга к двум точкам,
то можно через адрес
скрытый текст

Выделить код

Код:

var uri = Services.io.newFileURI(Services.dirsvc.get("CurWorkD", Ci.nsIFile));
uri = Services.io.newURI("../gBrave 0.67/brave-portable.exe", null, uri);
var {file} = uri.QueryInterface(Ci.nsIFileURL);

alert(file.path);

Отсутствует

 

№1372012-09-2019 11:33:13

Alewww
Участник
 
Группа: Members
Зарегистрирован: 31-01-2009
Сообщений: 12
UA: Firefox 69.0

Re: Custom Buttons

Здравствуйте. Был такой код, а теперь не работает. Что нужно исправить в нем?:

Выделить код

Код:

var file = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsILocalFile);  
file.initWithPath("C:\\Users\\Alewww\\PycharmProjects\\script.bat");
file.launch();

и еще вот этот также не работает. Что нужно здесь подправить?:

Выделить код

Код:

startProcess("C:\\Users\\Alewww\\PycharmProjects\\script2.bat",[""]);

function startProcess(path, args) {
    var file = Components.classes["@mozilla.org/file/local;1"]
        .createInstance(Components.interfaces.nsILocalFile);
     file.initWithPath(path);
    if(file.exists()) {
       var process = Components.classes["@mozilla.org/process/util;1"]
              .createInstance(Components.interfaces.nsIProcess);
       process.init(file);
        process.run(false, args, args.length);
      } else custombuttons. alertBox ("Файл не найден", path); 
};

Отсутствует

 

№1372112-09-2019 13:44:51

solombala
Участник
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 104
UA: Firefox 68.0

Re: Custom Buttons

Alewww
Где-то так

скрытый текст
var file = Services.dirsvc.get('ProfD', Ci.nsIFile);           
file.initWithPath(".......................");
file.launch();

Батники не привязываются , и не батники , а Vbs / Короче они в профиле должны быть
скрытый текст
var file = Services.dirsvc.get('ProfD', Ci.nsIFile);
         file.initWithPath(file.path + "\\memreduct\\reg.vbs");   
file.launch();

Папка memreduct в профиле ! Или просто батник в профиле

Отсутствует

 

№1372212-09-2019 15:29:32

sn260591
Участник
 
Группа: Members
Зарегистрирован: 26-09-2015
Сообщений: 51
UA: Firefox 69.0

Re: Custom Buttons

Alewww
Попробуй просто заменить nsILocalFile на nsIFile.

Отсутствует

 

№1372313-09-2019 05:45:45

func4ptch4
Участник
 
Группа: Members
Зарегистрирован: 03-05-2018
Сообщений: 126
UA: Firefox 69.0

Re: Custom Buttons

Alewww

Выделить код

Код:

FileUtils.getFile('Home',['PycharmProjects','script.bat']).launch();
Выделить код

Код:

FileUtils.File('C:\\Users\\Alewww\\PycharmProjects\\script.bat').launch();

Насчет 2 кода, не совсем понял что он делает) но можно примерно сделать так, в общем непонятно что я сделал)

Выделить код

Код:

function startProcess(path,args){
     //file.initWithPath(path);
     //if(file.exists())
     {var process=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
       process.init(FileUtils.File('C:\\Users\\Alewww\\PycharmProjects\\script2.bat'));process.run(false,args,args.length);
      }else custombuttons.alertBox("Файл не найден",path);
};
//========================================================
//function startProcess(args){
//var p=Cc["@mozilla.org/process/util;1"].createInstance(Ci.nsIProcess);
//p.init(FileUtils.getFile('Home',['PycharmProjects','script2.bat'));p.run(false,args,args.length);};

Отредактировано func4ptch4 (13-09-2019 14:13:42)

Отсутствует

 

№1372413-09-2019 09:41:55

solombala
Участник
 
Группа: Members
Зарегистрирован: 20-07-2019
Сообщений: 104
UA: Firefox 69.0

Re: Custom Buttons

Dumby
Приморила эта 69...Падает 69 кое-где без мультиhttp://htmlbook.ru/css/padding
Нет настройки , чтоб не падала?

Отредактировано solombala (13-09-2019 10:06:34)

Отсутствует

 

№1372513-09-2019 11:56:20

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 976
UA: Firefox 52.0

Re: Custom Buttons

solombala
К сожалению, ничем помочь не могу. Про контентские дела
меня спрашивать бесполезно, и если бы мог написать что-нибудь
умнее чем «паддинг же, вот и падает», то написал бы сразу.

А вообще, для десктопа, однопроцессный Firefox считается у них
как «неподдерживающаяся конфигурация», со всеми вытекающими.
Простейший пример: выключаем e10s, вызываем ChromeUtils.requestProcInfo();
Получаем краш. Причём изначально метод работал и в однопроцессном.
И дальше, видимо, будет только хуже.

Отредактировано Dumby (13-09-2019 12:00:12)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2011 Mozilla Russia
Язык отображения форума: [Русский] [English]