parent
fe3ecc83cf
commit
5a082b4ea5
5 changed files with 79 additions and 0 deletions
@ -0,0 +1,29 @@ |
||||
.vimvixen-footerline { |
||||
border-top: 1px solid gray; |
||||
bottom: 0; |
||||
box-sizing: border-box; |
||||
font-family: monospace; |
||||
font-size: 12px; |
||||
left: 0; |
||||
margin: 0; |
||||
padding: 0; |
||||
position: fixed; |
||||
right: 0; |
||||
z-index: 10000; |
||||
} |
||||
|
||||
.vimvixen-footerline-title { |
||||
background-color: lightgray; |
||||
font-weight: bold; |
||||
margin: 0; |
||||
padding: 0; |
||||
} |
||||
|
||||
.vimvixen-footerline-input{ |
||||
background-color: white; |
||||
bottom: 0; |
||||
margin: 0; |
||||
padding: 0; |
||||
width: 100%; |
||||
border: none; |
||||
} |
@ -0,0 +1,39 @@ |
||||
import './footer-line.css'; |
||||
|
||||
export default class FooterLine { |
||||
constructor(doc) { |
||||
this.title = doc.createElement('p'); |
||||
this.title.className = 'vimvixen-footerline-title'; |
||||
|
||||
this.input = doc.createElement('input'); |
||||
this.input.className = 'vimvixen-footerline-input'; |
||||
|
||||
this.wrapper = doc.createElement('div'); |
||||
this.wrapper.className = 'vimvixen-footerline'; |
||||
|
||||
this.wrapper.append(this.title); |
||||
this.wrapper.append(this.input); |
||||
doc.body.append(this.wrapper) |
||||
|
||||
this.input.addEventListener('blur', this.handleBlur.bind(this)); |
||||
this.input.addEventListener('keydown', this.handleKeydown.bind(this)); |
||||
} |
||||
|
||||
focus() { |
||||
this.input.focus(); |
||||
} |
||||
|
||||
remove() { |
||||
this.wrapper.remove(); |
||||
} |
||||
|
||||
handleBlur() { |
||||
this.remove(); |
||||
} |
||||
|
||||
handleKeydown(e) { |
||||
if (e.keyCode === KeyboardEvent.DOM_VK_ESCAPE) { |
||||
this.remove(); |
||||
} |
||||
} |
||||
} |
Reference in new issue