Skip to content

Commit

Permalink
Removed default highlight from context menu
Browse files Browse the repository at this point in the history
Resolves brave#6867

Auditors:
@bsclifton @bbondy

Test Plan:
-specified in brave#6867
  • Loading branch information
NejcZdovc committed Jan 27, 2017
1 parent 43f2a78 commit 061ad16
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 17 deletions.
44 changes: 30 additions & 14 deletions js/components/contextMenu.js
Original file line number Diff line number Diff line change
Expand Up @@ -253,18 +253,27 @@ class ContextMenu extends ImmutableComponent {
}

onKeyDown (e) {
const selectedIndex = (this.props.selectedIndex === null) ? [0] : this.props.selectedIndex
const currentIndex = selectedIndex[selectedIndex.length - 1]
const selectedTemplate = this.getMenuByIndex(selectedIndex, this.props.contextMenuDetail.get('template'))
const selectedMenuItem = selectedTemplate.get(currentIndex)
let selectedIndex = null
let currentIndex = null
let selectedTemplate = null
let selectedMenuItem = null

if (this.props.selectedIndex !== null) {
selectedIndex = this.props.selectedIndex
currentIndex = selectedIndex[selectedIndex.length - 1]
selectedTemplate = this.getMenuByIndex(selectedIndex, this.props.contextMenuDetail.get('template'))
selectedMenuItem = selectedTemplate.get(currentIndex)
}

switch (e.keyCode) {
case keyCodes.ENTER:
e.preventDefault()
e.stopPropagation()
const action = selectedTemplate.getIn([currentIndex, 'click'])
if (action) {
action(e)
if (currentIndex !== null) {
const action = selectedTemplate.getIn([currentIndex, 'click'])
if (action) {
action(e)
}
}
windowActions.resetMenuState()
break
Expand Down Expand Up @@ -321,13 +330,20 @@ class ContextMenu extends ImmutableComponent {
case keyCodes.UP:
case keyCodes.DOWN:
if (this.props.contextMenuDetail) {
const nextIndex = wrappingClamp(
currentIndex + (e.which === keyCodes.UP ? -1 : 1),
0,
this.maxIndex(selectedTemplate))
let newIndices

if (selectedIndex === null) {
newIndices = [0]
} else {
const nextIndex = wrappingClamp(
currentIndex + (e.which === keyCodes.UP ? -1 : 1),
0,
this.maxIndex(selectedTemplate))

newIndices = selectedIndex.slice()
newIndices[selectedIndex.length - 1] = nextIndex
}

const newIndices = selectedIndex.slice()
newIndices[selectedIndex.length - 1] = nextIndex
windowActions.setContextMenuSelectedIndex(newIndices)
}
break
Expand Down Expand Up @@ -427,7 +443,7 @@ class ContextMenu extends ImmutableComponent {
submenuIndex={0}
lastZoomPercentage={this.props.lastZoomPercentage}
template={this.props.contextMenuDetail.get('template')}
selectedIndex={selectedIndex[0]} />
selectedIndex={this.props.selectedIndex ? this.props.selectedIndex[0] : null} />
{
this.openedSubmenuDetails.map((openedSubmenuDetail, i) =>
<ContextMenuSingle contextMenuDetail={this.props.contextMenuDetail}
Expand Down
8 changes: 5 additions & 3 deletions test/components/contextMenuTest.js
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ describe('ContextMenu', function () {
.pause(10)
.tabByUrl(this.formfill)
.getValue('[name="02frstname"]').should.eventually.be.equal('Test value')
.getValue(this.input).should.eventually.be.equal(this.values[2])
.getValue(this.input).should.eventually.be.equal(this.values[1])
})

it('click on item', function *() {
Expand Down Expand Up @@ -97,7 +97,7 @@ describe('ContextMenu', function () {
.keys('\uE007')
.pause(10)
.tabByUrl(this.formfill)
.getValue(this.input).should.eventually.be.equal(this.values[2])
.getValue(this.input).should.eventually.be.equal(this.values[1])
})

it('select item via keys only', function *() {
Expand All @@ -122,7 +122,7 @@ describe('ContextMenu', function () {
.keys('\uE007')
.pause(10)
.tabByUrl(this.formfill)
.getValue(this.input).should.eventually.be.equal(this.values[3])
.getValue(this.input).should.eventually.be.equal(this.values[2])
})

it('check left/right on non sub menu item', function *() {
Expand All @@ -146,6 +146,8 @@ describe('ContextMenu', function () {
.pause(10)
.keys('\uE015')
.pause(10)
.keys('\uE015')
.pause(10)
.keys('\uE007')
.pause(10)
.tabByUrl(this.formfill)
Expand Down

0 comments on commit 061ad16

Please sign in to comment.