commit
						857d7be700
					
				
					 5 changed files with 2731 additions and 335 deletions
				
			
		
							
								
								
									
										16
									
								
								QA.md
									
										
									
									
									
								
							
							
						
						
									
										16
									
								
								QA.md
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -12,6 +12,9 @@ Test operations with default key maps.
 | 
			
		|||
- [ ] <kbd>Ctrl</kbd>+<kbd>B</kbd>, <kbd>Ctrl</kbd>+<kbd>F</kbd>: scroll up and down by a screen
 | 
			
		||||
- [ ] <kbd>0</kbd>, <kbd>$</kbd>: scroll to leftmost and rightmost
 | 
			
		||||
- [ ] <kbd>g</kbd><kbd>g</kbd>, <kbd>G</kbd>: scroll to top and bottom
 | 
			
		||||
- [ ] Smooth scroll by `:set smoothscroll`
 | 
			
		||||
- [ ] Non-smooth scroll by `:set nosmoothscroll`
 | 
			
		||||
- [ ] Configure custom hint character by settings `"smoothscroll": true`, `"smoothscroll": false`
 | 
			
		||||
 | 
			
		||||
#### Console
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -24,7 +27,8 @@ The behaviors of the console are tested in [Console section](#consoles).
 | 
			
		|||
 | 
			
		||||
#### Tabs
 | 
			
		||||
 | 
			
		||||
- [ ] <kbd>d</kbd>: delete current tab
 | 
			
		||||
- [ ] <kbd>d</kbd>: delete current tab, unable to remove pinnned tab
 | 
			
		||||
- [ ] <kbd>!d</kbd>: delete current tab and pinned tab
 | 
			
		||||
- [ ] <kbd>u</kbd>: reopen close tab
 | 
			
		||||
- [ ] <kbd>K</kbd>, <kbd>J</kbd>: select prev and next tab
 | 
			
		||||
- [ ] <kbd>g0</kbd>, <kbd>g$</kbd>: select first and last tab
 | 
			
		||||
| 
						 | 
				
			
			@ -32,6 +36,7 @@ The behaviors of the console are tested in [Console section](#consoles).
 | 
			
		|||
- [ ] <kbd>R</kbd>: reload current tab without cache
 | 
			
		||||
- [ ] <kbd>zd</kbd>: duplicate current tab
 | 
			
		||||
- [ ] <kbd>zp</kbd>: toggle pin/unpin state on current tab
 | 
			
		||||
- [ ] <kbd>Ctrl</kbd>+<kbd>6</kbd>: select previous selected tab
 | 
			
		||||
 | 
			
		||||
#### Navigation
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -62,6 +67,8 @@ The behaviors of the console are tested in [Console section](#consoles).
 | 
			
		|||
- [ ] Select link and open it in the frame in `<iframe>`/`<frame`> on following by <kbd>f</kbd>
 | 
			
		||||
- [ ] Select link and open it in new tab in `<iframe>`/`<frame`> on following by <kbd>F</kbd>
 | 
			
		||||
- [ ] Select link and open it in `<area>` tags, for <kbd>f</kbd> and <kbd>F</kbd>
 | 
			
		||||
- [ ] Configure custom hint character by `:set hintchars=012345678`
 | 
			
		||||
- [ ] Configure custom hint character by settings `"hintchars": "012345678"`
 | 
			
		||||
 | 
			
		||||
### Consoles
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -117,7 +124,7 @@ The behaviors of the console are tested in [Console section](#consoles).
 | 
			
		|||
##### Validations
 | 
			
		||||
 | 
			
		||||
- [ ] show error on invalid json
 | 
			
		||||
- [ ] show error when top-level keys has keys other than `keymaps`, `search`, and `blacklist`
 | 
			
		||||
- [ ] show error when top-level keys has keys other than `keymaps`, `search`, `blacklist`, and `properties`
 | 
			
		||||
 | 
			
		||||
###### `"keymaps"` section
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -142,6 +149,11 @@ The behaviors of the console are tested in [Console section](#consoles).
 | 
			
		|||
- [ ] keymap settings are applied to open tabs without reload
 | 
			
		||||
- [ ] search settings are applied to open tabs without reload
 | 
			
		||||
 | 
			
		||||
##### Properties
 | 
			
		||||
 | 
			
		||||
- [ ] show errors when invalid property name
 | 
			
		||||
- [ ] show errors when invalid property type
 | 
			
		||||
 | 
			
		||||
#### Form Settings
 | 
			
		||||
 | 
			
		||||
<!-- validation on form settings does not implement in 0.7 -->
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										23
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										23
									
								
								README.md
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -34,6 +34,7 @@ The default mappings are as follows:
 | 
			
		|||
 | 
			
		||||
#### Tabs
 | 
			
		||||
- <kbd>d</kbd>: delete current tab
 | 
			
		||||
- <kbd>!</kbd><kbd>d</kbd>: delete pinned tab
 | 
			
		||||
- <kbd>u</kbd>: reopen close tab
 | 
			
		||||
- <kbd>K</kbd>, <kbd>J</kbd>: select prev or next tab
 | 
			
		||||
- <kbd>g0</kbd>, <kbd>g$</kbd>: select first or last tab
 | 
			
		||||
| 
						 | 
				
			
			@ -50,7 +51,7 @@ The default mappings are as follows:
 | 
			
		|||
- <kbd>[</kbd><kbd>[</kbd>, <kbd>]</kbd><kbd>]</kbd>: find  prev or next links and open it
 | 
			
		||||
- <kbd>g</kbd><kbd>u</kbd>: go to parent directory
 | 
			
		||||
- <kbd>g</kbd><kbd>U</kbd>: go to root directory
 | 
			
		||||
- <kbd>g</kbd><kbd>i</kbd>, <kbd>G</kbd>: focus first input
 | 
			
		||||
- <kbd>g</kbd><kbd>i</kbd>: focus first input
 | 
			
		||||
 | 
			
		||||
#### Misc
 | 
			
		||||
- <kbd>z</kbd><kbd>i</kbd>, <kbd>z</kbd><kbd>o</kbd>: zoom-in/zoom-out
 | 
			
		||||
| 
						 | 
				
			
			@ -102,6 +103,26 @@ Open a URL or search keywords by search engine in new window.
 | 
			
		|||
 | 
			
		||||
Select tabs by URL or title matched by keywords.
 | 
			
		||||
 | 
			
		||||
#### `:set` command
 | 
			
		||||
 | 
			
		||||
`:set` command can set properties on console.
 | 
			
		||||
 | 
			
		||||
##### `smoothscroll` property
 | 
			
		||||
 | 
			
		||||
Enable/disable smooth scroll.
 | 
			
		||||
```
 | 
			
		||||
:set smoothscroll   " enable smooth scroll
 | 
			
		||||
:set nosmoothscroll " disable smooth scroll
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
##### `hintchars` property
 | 
			
		||||
 | 
			
		||||
Set hint characters
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
:set hintchars=0123456789
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### Search engines
 | 
			
		||||
 | 
			
		||||
Vim Vixen supports search by search engines like Google and Yahoo.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										3019
									
								
								package-lock.json
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										3019
									
								
								package-lock.json
									
										
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
				
			
			@ -31,14 +31,14 @@
 | 
			
		|||
    "eslint": "^4.7.0",
 | 
			
		||||
    "eslint-plugin-react": "^7.4.0",
 | 
			
		||||
    "html-webpack-plugin": "^2.30.1",
 | 
			
		||||
    "karma": "^1.7.0",
 | 
			
		||||
    "karma": "^2.0.0",
 | 
			
		||||
    "karma-firefox-launcher": "^1.0.1",
 | 
			
		||||
    "karma-html2js-preprocessor": "^1.1.0",
 | 
			
		||||
    "karma-mocha": "^1.3.0",
 | 
			
		||||
    "karma-mocha-reporter": "^2.2.3",
 | 
			
		||||
    "karma-sourcemap-loader": "^0.3.7",
 | 
			
		||||
    "karma-webpack": "^2.0.4",
 | 
			
		||||
    "mocha": "^4.0.1",
 | 
			
		||||
    "mocha": "^5.0.0",
 | 
			
		||||
    "node-sass": "^4.5.3",
 | 
			
		||||
    "preact": "^8.2.6",
 | 
			
		||||
    "sass-loader": "^6.0.6",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -83,7 +83,9 @@ const viewportRect = (e) => {
 | 
			
		|||
 | 
			
		||||
const isVisible = (element) => {
 | 
			
		||||
  let rect = element.getBoundingClientRect();
 | 
			
		||||
  if (rect.width === 0 || rect.height === 0) {
 | 
			
		||||
  let style = window.getComputedStyle(element);
 | 
			
		||||
 | 
			
		||||
  if (style.overflow !== 'visible' && (rect.width === 0 || rect.height === 0)) {
 | 
			
		||||
    return false;
 | 
			
		||||
  }
 | 
			
		||||
  if (rect.right < 0 && rect.bottom < 0) {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue