diff options
| author | Ilya Sukhar | 2010-10-20 23:42:44 -0700 |
|---|---|---|
| committer | Ilya Sukhar | 2010-10-20 23:42:44 -0700 |
| commit | f7a534efe5d4c77c462955674dd4678bc10f2012 (patch) | |
| tree | b7dbd24e23221a7e5856d860581099d6bac424c9 | |
| parent | ac4858bfe66563d5295d87c89322e5f138f1d191 (diff) | |
| download | vimium-f7a534efe5d4c77c462955674dd4678bc10f2012.tar.bz2 | |
Implemented a workaround for the Chrome bug that broke the 'yy' command. Closes 206. Relevant chrome bug: http://code.google.com/p/chromium/issues/detail?id=55188
| -rw-r--r-- | background_page.html | 11 | ||||
| -rw-r--r-- | vimiumFrontend.js | 6 |
2 files changed, 15 insertions, 2 deletions
diff --git a/background_page.html b/background_page.html index 48084f77..4d03c99b 100644 --- a/background_page.html +++ b/background_page.html @@ -1,6 +1,7 @@ <html> <head> <script type="text/javascript" src="commands.js"></script> +<script type="text/javascript" src="lib/clipboard.js"></script> <script type="text/javascript" charset="utf-8"> // Chromium #15242 will make this XHR request to access the manifest unnecessary. var manifestRequest = new XMLHttpRequest(); @@ -73,7 +74,8 @@ registerFrame: registerFrame, frameFocused: handleFrameFocused, upgradeNotificationClosed: upgradeNotificationClosed, - updateScrollPosition: handleUpdateScrollPosition + updateScrollPosition: handleUpdateScrollPosition, + copyToClipboard: copyToClipboard }; // Event handlers @@ -251,6 +253,13 @@ } /* + * Copies some data (request.data) to the clipboard. + */ + function copyToClipboard(request) { + Clipboard.copy(request.data); + } + + /* * Used by the content scripts to get settings from the local storage. */ function getSetting(args, port) { diff --git a/vimiumFrontend.js b/vimiumFrontend.js index 19e2e0a2..8e5b8246 100644 --- a/vimiumFrontend.js +++ b/vimiumFrontend.js @@ -286,7 +286,11 @@ function toggleViewSource() { } function copyCurrentUrl() { - getCurrentUrlHandlers.push(function (url) { Clipboard.copy(url); }); + // TODO(ilya): When the following bug is fixed, revisit this approach of sending back to the background page + // to copy. + // http://code.google.com/p/chromium/issues/detail?id=55188 + //getCurrentUrlHandlers.push(function (url) { Clipboard.copy(url); }); + getCurrentUrlHandlers.push(function (url) { chrome.extension.sendRequest({ handler: "copyToClipboard", data: url }); }); // TODO(ilya): Convert to sendRequest. var getCurrentUrlPort = chrome.extension.connect({ name: "getCurrentTabUrl" }); |
