Bonjour ! (J'espère être au bon endroit)

Je voudrais récupérer du code sur la page courante de mon navigateur et l'afficher dans un popup ouvert par une extension chrome.

J'avais commencer à rédiger du code (grâce à des forums et des tutos) mais j'ai appris plus tard que certaines fonctions n'étaient plus utilisées (chrome.tabs.getSelected() notamment).

Aperçu de ce que je voudrais après sélection :



Voilà mon code :

manifest.json
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
 "name": "Selected Text",
 "version": "0.1",
 "description": "Selected Text",
 "browser_action": {
   "default_title": "Selected Text",
   "default_icon": "icon.png",
   "default_popup": "popup.html" 
 },
 "permissions": [
   "tabs",
   "chrome://favicon/",
   "http://*/*", 
   "https://*/*"
 ],
 "content_scripts": [
  {
    "matches": ["http://*/*"],
    "js": ["selection.js"],
    "run_at": "document_start",
    "all_frames": true
  }
 ],
 "manifest_version": 2
}

popup.html

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<!DOCTYPE html> 
<html>
<head>
<style>
  body { width: 300px; }
  textarea { width: 250px; height: 100px;}
</style>
<script>
function pasteSelection() {
  chrome.tabs.getSelected(null, function(tab) {
    chrome.tabs.sendRequest(tab.id, {method: "getSelection"}, function (response) {
      var text = document.getElementById('text'); 
      text.innerHTML = response.data;
    });
  });
}
</script>
</head>
<body>
<textarea id="text"></textarea>
<button onclick="pasteSelection(); ">Obtenir le texte sélectionné</button>
</body>
</html>
selection.js
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
    if (request.method == "getSelection")
      sendResponse({data: window.getSelection().toString()});
    else
      sendResponse({}); // snub them.
});
Pourriez-vous apportez des corrections à mon code afin qu'il fonctionne !
Trois jour que j'ère sur le net à la recherche d'une solution

Merci d'avance de vos réponses