aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-03-08Bump version number to 1.58.v1.58Stephen Blott
2017-03-04Merge pull request #2369 from gdh1995/zoomed-docEl-offsetStephen Blott
getViewportTopLeft: support zoomed static documentElement
2017-03-04Merge pull request #2384 from gdh1995/pass-keys-on-body-lockedStephen Blott
InsertMode should not handle key events if document.body is editable
2017-03-04Merge pull request #2428 from mrmr1993/use-event-argumentStephen Blott
Use event argument instead of global event object
2017-02-11Don't depend on global event for Frame event listeners (FF)mrmr1993
2017-02-11Don't depend on global event for CoreScroller event listeners (FF)mrmr1993
2017-02-11Merge pull request #2426 from mrmr1993/no-depreciated-apisStephen Blott
Replace depreciated APIs
2017-02-09Guard against undefined (out of spec) getDestinationInsertionPointsmrmr1993
2017-02-08Stop using deprecated key 'selected' of tabs; switch to 'active'mrmr1993
The documentation suggests that 'highlighted' is equivalent to 'selected'. However, multiple tabs can be highlighted in a window -- in fact, everywhere 'selected' was used, we wanted the unique active tab.
2017-02-08Stop using non-standard event.srcElement; switch to event.targetmrmr1993
2017-02-08Remove stub for deprecated onActiveChangedmrmr1993
2017-02-08Remove stub for deprecated tabs.onSelectionChangedmrmr1993
2017-02-08Stop using deprecated tabs.getAllInWindow; switch to tabs.querymrmr1993
2017-02-08Stop using deprecated tabs.getSelected; switch to tabs.querymrmr1993
2017-01-03InsertMode should not handle key events if document.body is editablegdh1995
For example, the host JavaScript may create an "about:blank" iframe with a `content-editable` `body`, and then: * the parent frame may handle `Escape` key events by itself * but now, Vimium always grabs `Escape` events * and tries to exit `InsertMode` * although `document.body` is still current `activeElement` after `body.blur()` * as a result, neither the parent can receive and handle wanted keyevents, nor Vimium will succeed in returing back to NormalMode
2017-01-03take documentElement's border into considerationgdh1995
2017-01-03getViewportTopLeft: consider the new style "contain"gdh1995
If an element's `contain` is/contains `paint`, then it will be forced showing just as its `position` is `relative`.
2017-01-03getViewportTopLeft: support zoomed static documentElementgdh1995
if `document.documentElement` is zoomed, Vimium's hints `<div>` are also zoomed, and then `scrollY` may be not equal with viewport client rect's `top`. Example: * make the tab zoom level is 1, `documentElement`'s `zoom` style is 2 * open a page, scroll to the top left corner * press `f`, and all things are right * exit LinkHints mode, scroll down for 100px, and then press `f` * this time all hints has moved down 200px from the correct place
2016-12-26Merge pull request #2386 from smblott-github/fix-infinite-scrollingStephen Blott
Fix (another) infinite-scroll issue.
2016-12-26Fix (another) infinite-scroll issue.Stephen Blott
Steps to reproduce: - Press and hold `j`. - Tab `k`. - Release `j`. The tap on `k` is uninstalling the `cancelEventListener` installed by `j`, and because we advance `@time`, the `j` stops scrolling and removes the `cancelEventListener` installed for `k`. So we end up with no `cancelEventListener` installed. The fix is to make the `cancelEventListener` specific to the scroller instance. The more fundamental problem here is that we're mixing dynamic and static state. A better approach would be to have `CoreScroller` as a class, with a new instance created for each scroll instance.
2016-12-26Merge pull request #2385 from smblott-github/tagName-not-a-stringStephen Blott
Guard against element.tagName not being a string.
2016-12-26Guard against element.tagName not being a string.Stephen Blott
Example page: http://codeforces.com/contest/752/problem/B. There, `element.tagName` is an element with `name` `tagName` (not a string). Here, we guard against that case. Fixes #2305.
2016-12-21Don't focus non-focusable node.Stephen Blott
Try the following.... - load page - `/` - type some junk which matches nothing - `Escape` We expect to leave find mode. Instead, we have to hit escape again to get out of find mode. Here, `focusNode.focus()` is not a function.
2016-12-21Note passNextKey normal in README.md.Stephen Blott
2016-12-21Tweak #2327.Stephen Blott
2016-12-21Merge pull request #2308 from achew22/cakeStephen Blott
Don't set the update_url by default.
2016-12-21Merge pull request #2379 from smblott-github/match-about-blankStephen Blott
Add match-about-blank permission.
2016-12-21Merge pull request #2311 from smblott-github/enterNormalModeStephen Blott
New command option to enter normal mode
2016-12-21Merge pull request #2327 from sco-tt/capitalized-link-hints-options-2Stephen Blott
Makes sure all custom link hint characters defined in settings are lowercase
2016-12-21Add match-about-blank permission.Stephen Blott
This allows Vimium to run in iframes with `about:blank` URLs. Fixes #2360.
2016-12-14Forces user defined link hints to when options are saved on options pageScott Pinkelman
2016-12-12Remove unused parameter.Stephen Blott
2016-12-12Remove references to enterNormalMode command.Stephen Blott
2016-12-12Merge pull request #2370 from smblott-github/float-find-mode-matches-rightStephen Blott
Float find-mode matches to the right.
2016-12-12Float find-mode matches to the right.Stephen Blott
This floats the "5 Matches" text in the find-mode HUD to the right. This looks nicer, because the "5 Matches" text doesn't move as you type. As it happens, it also fixes an issue which arose a few months ago (for unknown reasons) with the positioning of the cursor in find mode. The cursor position was becoming "jammed" after the first character as you type.
2016-12-11Tweak custom-search-engine help HTML.Stephen Blott
2016-12-11Better wording fo command description.Stephen Blott
2016-12-11Documentation for updates.Stephen Blott
2016-12-11Use registryEntry.optionList.Stephen Blott
This means that we get the new tabs in the same order as they are specified in the key mapping.
2016-12-11Extend createTab to open specific pages.Stephen Blott
Example: map a createTab http://edition.cnn.com/ http://www.bbc.co.uk/news which creates two new tabs, but preloaded with these specific URLs. `2a` creates four new tabs, two copies of each. Limitation: - We cannot control the order of the tabs, so we might get CNN then BBC, or BBC then CNN. This happens because command options are stored in an object, and we cannot control the order of the keys. Also, with: map a createTab http://www.bbc.co.uk/news http://www.bbc.co.uk/news we only get one new tab (same reason as above).
2016-12-11Add the raw option list to the command registry.Stephen Blott
Keep the option list (in addition to the parsed command options) because some commands may depend upon the command option order. One currect example is #2318.
2016-12-11Merge pull request #2368 from smblott-github/rework-key-mapping-parsingStephen Blott
Rework key-mapping parsing and help-dialog HTML
2016-12-11Ensure that we get the last for a key.Stephen Blott
(Because we're scanning backwards throught the mappings, we shouldn't overwrite an existing mapping.)
2016-12-11Remove Utils.nextTick() to fix tests.Stephen Blott
2016-12-11Rework help-dialog HTML.Stephen Blott
Previously, the dynamic HTML for the help dialog was generated on the background page. The HTML itself was tangled in with program logic. Here, we move all of the HTML to HTML5 templates; also, we build the help-dialog contents in the help dialog itself, not on the background page. Note: #2368 is included here too. (Background: I'm trying to clean up some of the command and help-dialog logic in preparation for addressing the issue of how to document command options, see #2319.)
2016-12-11Rework key-mapping parsing.Stephen Blott
There are two changes here: 1. Treat built-in key mappings and custom key mappings in the same way; that is, we prepend the built-in mappings to the custom mappings and then parse them all together. This results in a number of simplifications due to previous duplication of logic and the elimination of special cases. 2. Parse key mappings in reverse order, so we can just ignore key mappings after first encountering a key sequence. So, `map`, `unmap` and `unmapAll` are all treated in more or less the same way. This is preparatory to reworking some aspects of the help page. In particular, regardless of the order of maps, unmaps, etc., this approach makes it easier to find the mapping in effect for a key sequence (and be able to recreate the order of those mappings).
2016-12-10Merge pull request #2326 from smblott-github/move-search-engines-to-bg-utilsStephen Blott
Move SearchEngines to bg-utils.coffee.
2016-12-10Use 'map X passNextKey normal'.Stephen Blott
2016-12-10Tweak #2338.Stephen Blott
2016-11-09update creditsRamiro Araujo