Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Where is the button "history-panelmenu" defined?

  • 5 پاسخ
  • 1 has this problem
  • 3 views
  • آخرین پاسخ توسّط Yaron

more options

I couldn't find it in "browser.xul".

I'd like to add a right-click function to the button. I can do that as follows:

var historyUndo = document.getElementById("history-panelmenu"); historyUndo.addEventListener("click", function(event) { if(event.button != 0) undoCloseTab(); }, false); historyUndo.setAttribute("context", "");

But I'd rather change the xul file.


Thank you.

I couldn't find it in "browser.xul". I'd like to add a right-click function to the button. I can do that as follows: var historyUndo = document.getElementById("history-panelmenu"); historyUndo.addEventListener("click", function(event) { if(event.button != 0) undoCloseTab(); }, false); historyUndo.setAttribute("context", ""); But I'd rather change the xul file. Thank you.

Chosen solution

See:

  • resource:///modules/CustomizableUI.jsm
  • resource:///modules/CustomizableWidgets.jsm
Read this answer in context 👍 1

All Replies (5)

more options

Chosen Solution

See:

  • resource:///modules/CustomizableUI.jsm
  • resource:///modules/CustomizableWidgets.jsm

Modified by cor-el

more options

Thank you so much. I really appreciate it.

I've added the following 2 lines to "const CustomizableWidgets" in CustomizableWidgets.jsm:

    context: "",
    onClick: function(event) { if(event.button != 0) undoCloseTab(); }

This is the code after the change:

const CustomizableWidgets = [{
    id: "history-panelmenu",
    type: "view",
    viewId: "PanelUI-history",
    shortcutId: "key_gotoHistory",
    tooltiptext: "history-panelmenu.tooltiptext2",
    defaultArea: CustomizableUI.AREA_PANEL,
    context: "",
    onClick: function(event) { if(event.button != 0) undoCloseTab(); }
    onViewShowing: function(aEvent) {

***

I re-zipped the files and replaced omni.ja, but it doesn't work. Any idea?

Modified by cor-el

more options
more options

Thanks again. It's kind of you.

Using "undoCloseTab()" in an extension works as expected.

Do you know if the "onClick" is correct? Should changes in JSM files apply without any further actions?

more options

I've just erased some code in CustomizableWidgets.jsm, and it has no effect. It seems that modifying the file is not enough. What do you think?

I used -purgecaches.