2017-04-13 1 views
1

J'ai converti mon extension Chrome en Edge à l'aide de la boîte à outils du convertisseur. L'extension charge et modifie correctement la page dans Edge, mais le bouton Action de la page n'est pas disponible dans la barre d'outils. J'ai ajouté l'image 20px comme d'autres l'ont souligné, mais cela n'a rien fait. Des idées sur comment faire fonctionner le bouton et le popup?Boîte à outils d'extension Edge et bouton d'extension manquant

{ 
"author": "Me", 
"background": { 
    "page": "background.html", 
    "persistent": true 
}, 
"content_scripts": [ 
    { 
     "css": [ 
      "styles.css" 
     ], 
     "js": [ 
      "jquery.js", 
      "content.js" 
     ], 
     "matches": [ 
      "*://www.engadget.com/*" 
     ] 
    } 
], 
"description": "Hide unwanted articles on Engadget.com", 
"icons": { 
    "20": "icon_20.png", 
    "128": "icon_128.png" 
}, 
"manifest_version": 2, 
"name": "SanGadget", 
"page_action": { 
    "default_title": "SanGadget Settings", 
    "default_popup": "popup.html", 
    "default_icon": { 
     "20": "icon_20.png" 
    } 
}, 
"permissions": [ 
    "storage", 
    "declarativeContent" 
], 
"version": "0.1.0", 
"-ms-preload": { 
    "backgroundScript": "backgroundScriptsAPIBridge.js", 
    "contentScript": "contentScriptsAPIBridge.js" 
} 

}

+0

Pourriez-vous fournir plus de détails sur la façon dont vous pouvez contrôler l'action de la page? –

+0

L'action Page est activée lorsque l'URL correspond, *: //www.engadget.com/*. Dans Chrome, le bouton est grisé jusqu'à ce que l'URL corresponde, puis il est activé. Je m'attendrais au même comportement dans Edge. – steve

+0

Pourriez-vous donner un exemple de repro simple? Sans cela, nous ne pouvons pas comprendre ce qui ne va pas. –

Répondre

1

Vous utilisez chrome.declarativeContent.ShowPageAction pour afficher l'icône d'action de page. Malheureusement, c'est not supported in Microsoft Edge for now, vous devriez envisager d'autres options. Par exemple, vous pouvez détecter l'URL actuelle de la page (via des scripts de contenu spécifiques et utiliser le passage de message pour notifier la page d'arrière-plan ou écouter directement l'événement browser.tabs.onUpdated en arrière-plan) et afficher ou masquer explicitement cette action via pageAction api, par exemple browser.pageAction.show et browser.pageAction.hide.