Установить заголовок всплывающего окна для расширения Firefox - PullRequest
0 голосов
/ 29 мая 2018

Я создаю расширение для браузера, которое будет работать в нескольких браузерах.При нажатии действия браузера создается всплывающее окно со страницей расширения.Chrome использует заголовок всплывающей страницы в качестве заголовка всплывающего окна, а Firefox - нет.

Вместо этого я получаю следующее:

enter image description here

Почему Firefox не использует заголовок страницы?Чтобы исправить это, я установил заголовок окна в обратном вызове windows.create, но это тоже не сработало.

Вот скрипт background.js, который открывает всплывающее окно.

'use strict';

let browser = (function () {
    return window.msBrowser ||
        window.browser ||
        window.chrome;
})();

var popupWindowId = false;

browser.browserAction.onClicked.addListener(function() {
    // Open the popup if not already open. If open, focus on it.
    if(popupWindowId === false) {
        popupWindowId = true;
        browser.windows.create({
            'url': 'index.html',
            'type': 'popup',
            'height': 525,
            'width': 350
        }, function(win) {
            win.title = 'My Title';
            popupWindowId = win.id;
            firefoxWorkaroundForBlankPanel();
        });

        return;
    } else if(typeof popupWindowId === 'number'){
        // The window is open, and the user clicked the button.
        // Focus the window.
        browser.windows.update(popupWindowId, { focused: true });
    }
});

browser.windows.onRemoved.addListener(function (winId){
    if(popupWindowId === winId){
        popupWindowId = false;
    }
});

// workaround for bug https://bugzilla.mozilla.org/show_bug.cgi?id=1425829
// bug causes popup to appear blank until resized
async function firefoxWorkaroundForBlankPanel () {
    const {id, width, height} = await browser.windows.getCurrent();
    browser.windows.update(id, {
        height: height + 1
    });
}

1 Ответ

0 голосов
/ 17 июня 2018

К сожалению, вы не можете удалить расширение URL из заголовка всплывающего окна.В соответствии с этим обсуждением отчета об ошибках Mozilla это сделано специально для предотвращения попыток подделки / фишинга со стороны злонамеренных расширений (например, путем обмана пользователя тем, что всплывающее окно расширения является частью пользовательского интерфейса браузера).Но, по крайней мере, они могут изменить его, чтобы оно показывало «Extension [Extension name]» в заголовке окна вместо уродливого URL-адреса расширения.

...