diff options
| author | Phil Crosby | 2011-07-29 23:49:25 -0700 |
|---|---|---|
| committer | Phil Crosby | 2011-07-29 23:49:25 -0700 |
| commit | dc114c168740212670021ec39a097371bd35b3ed (patch) | |
| tree | cd59aac7dff5b080d07ec41d26237b5db35bc1e7 /vimiumFrontend.js | |
| parent | 9a7a2eff94d67aac307c6e20ec90270165ef05b2 (diff) | |
| download | vimium-dc114c168740212670021ec39a097371bd35b3ed.tar.bz2 | |
Remove the zooming functionality. It conflict's with Chrome's native zooming and doesn't work as well.
Now that Chrome saves your zoom settings, there's no need for our own zoom implementation.
This also fixes #370.
Diffstat (limited to 'vimiumFrontend.js')
| -rw-r--r-- | vimiumFrontend.js | 74 |
1 files changed, 4 insertions, 70 deletions
diff --git a/vimiumFrontend.js b/vimiumFrontend.js index 0e3f66e8..4307b481 100644 --- a/vimiumFrontend.js +++ b/vimiumFrontend.js @@ -1,8 +1,8 @@ /* * This content script takes input from its webpage and executes commands locally on behalf of the background - * page. It must be run prior to domReady so that we perform some operations very early, like setting - * the page's zoom level. We tell the background page that we're in domReady and ready to accept normal - * commands by connectiong to a port named "domReady". + * page. It must be run prior to domReady so that we perform some operations very early. We tell the + * background page that we're in domReady and ready to accept normal commands by connectiong to a port named + * "domReady". */ var getCurrentUrlHandlers = []; // function(url) @@ -15,7 +15,6 @@ var isShowingHelpDialog = false; var handlerStack = []; var keyPort; var settingPort; -var saveZoomLevelPort; // Users can disable Vimium on URL patterns via the settings page. var isEnabledForUrl = true; // The user's operating system. @@ -23,9 +22,6 @@ var currentCompletionKeys; var validFirstKeys; var linkHintCss; -// TODO(philc): This should be pulled from the extension's storage when the page loads. -var currentZoomLevel = 100; - // The types in <input type="..."> that we consider for focusInput command. Right now this is recalculated in // each content script. Alternatively we could calculate it once in the background page and use a request to // fetch it each time. @@ -75,17 +71,13 @@ var hasModifiersRegex = /^<([amc]-)+.>/; var googleRegex = /:\/\/[^/]*google[^/]+/; /* - * Complete initialization work that sould be done prior to DOMReady, like setting the page's zoom level. + * Complete initialization work that sould be done prior to DOMReady. */ function initializePreDomReady() { settings.load(); checkIfEnabledForUrl(); - var getZoomLevelPort = chrome.extension.connect({ name: "getZoomLevel" }); - if (window.self == window.parent) - getZoomLevelPort.postMessage({ domain: window.location.host }); - chrome.extension.sendRequest({handler: "getLinkHintCss"}, function (response) { linkHintCss = response.linkHintCss; }); @@ -145,12 +137,6 @@ function initializePreDomReady() { port.onMessage.addListener(function(args) { if (getCurrentUrlHandlers.length > 0) { getCurrentUrlHandlers.pop()(args.url); } }); - } else if (port.name == "returnZoomLevel") { - port.onMessage.addListener(function(args) { - currentZoomLevel = args.zoomLevel; - if (isEnabledForUrl) - setPageZoomLevel(currentZoomLevel); - }); } else if (port.name == "returnSetting") { port.onMessage.addListener(settings.receiveMessage); } else if (port.name == "refreshCompletionKeys") { @@ -223,47 +209,6 @@ function enterInsertModeIfElementIsFocused() { enterInsertModeWithoutShowingIndicator(document.activeElement); } -/* - * Asks the background page to persist the zoom level for the given domain to localStorage. - */ -function saveZoomLevel(domain, zoomLevel) { - if (!saveZoomLevelPort) - saveZoomLevelPort = chrome.extension.connect({ name: "saveZoomLevel" }); - saveZoomLevelPort.postMessage({ domain: domain, zoomLevel: zoomLevel }); -} - -/* - * Zoom in increments of 20%; this matches chrome's CMD+ and CMD- keystrokes. - * Set the zoom style on documentElement because document.body does not exist pre-page load. - */ -function setPageZoomLevel(zoomLevel, showUINotification) { - document.documentElement.style.zoom = zoomLevel + "%"; - if (document.body) - HUD.updatePageZoomLevel(zoomLevel); - if (showUINotification) - HUD.showForDuration("Zoom: " + currentZoomLevel + "%", 1000); -} - -function zoomIn() { - currentZoomLevel += 20; - setAndSaveZoom(); -} - -function zoomOut() { - currentZoomLevel -= 20; - setAndSaveZoom(); -} - -function zoomReset() { - currentZoomLevel = 100; - setAndSaveZoom(); -} - -function setAndSaveZoom() { - setPageZoomLevel(currentZoomLevel, true); - saveZoomLevel(window.location.host, currentZoomLevel); -} - function scrollToBottom() { window.scrollTo(window.pageXOffset, document.body.scrollHeight); } function scrollToTop() { window.scrollTo(window.pageXOffset, 0); } function scrollToLeft() { window.scrollTo(0, window.pageYOffset); } @@ -853,15 +798,6 @@ HUD = { function() { HUD.upgradeNotificationElement().style.display = "none"; }); }, - updatePageZoomLevel: function(pageZoomLevel) { - // Since the chrome HUD does not scale with the page's zoom level, neither will this HUD. - var inverseZoomLevel = (100.0 / pageZoomLevel) * 100; - if (HUD._displayElement) - HUD.displayElement().style.zoom = inverseZoomLevel + "%"; - if (HUD._upgradeNotificationElement) - HUD.upgradeNotificationElement().style.zoom = inverseZoomLevel + "%"; - }, - /* * Retrieves the HUD HTML element. */ @@ -870,7 +806,6 @@ HUD = { HUD._displayElement = HUD.createHudElement(); // Keep this far enough to the right so that it doesn't collide with the "popups blocked" chrome HUD. HUD._displayElement.style.right = "150px"; - HUD.updatePageZoomLevel(currentZoomLevel); } return HUD._displayElement; }, @@ -880,7 +815,6 @@ HUD = { HUD._upgradeNotificationElement = HUD.createHudElement(); // Position this just to the left of our normal HUD. HUD._upgradeNotificationElement.style.right = "315px"; - HUD.updatePageZoomLevel(currentZoomLevel); } return HUD._upgradeNotificationElement; }, |
