Skip to content
This repository has been archived by the owner on Dec 11, 2019. It is now read-only.

Commit

Permalink
Fix multiple channels desktop name
Browse files Browse the repository at this point in the history
also fix #1336
requires brave/muon#309

Auditors: @bsclifton, @bbondy

Test Plan:
  • Loading branch information
darkdh committed Sep 14, 2017
1 parent 105b667 commit 5ec53ab
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 6 deletions.
21 changes: 21 additions & 0 deletions app/channel.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,24 @@ exports.formattedChannel = () => {
}
return Object.keys(channelMapping).includes(channel) ? channelMapping[channel] : channel
}

exports.getLinuxDesktopName = () => {
let desktopName
switch (channel) {
case 'dev':
desktopName = 'brave.desktop'
break
case 'beta':
desktopName = 'brave-beta.desktop'
break
case 'developer':
desktopName = 'brave-developer.desktop'
break
case 'nightly':
desktopName = 'brave-nightly.desktop'
break
default:
desktopName = 'brave.desktop'
}
return desktopName
}
13 changes: 11 additions & 2 deletions app/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -202,8 +202,17 @@ app.on('ready', () => {
}
} else {
// Default browser checking
let isDefaultBrowser = ['development', 'test'].includes(process.env.NODE_ENV)
? true : defaultProtocols.every(p => app.isDefaultProtocolClient(p))
let isDefaultBrowser
if (['development', 'test'].includes(process.env.NODE_ENV)) {
isDefaultBrowser = true
} else if (process.platform === 'linux') {
const Channel = require('./channel')
const desktopName = Channel.getLinuxDesktopName()
isDefaultBrowser = defaultProtocols.every(p => app.isDefaultProtocolClient(p, desktopName)) &&
app.isDefaultProtocolClient('', desktopName)
} else {
isDefaultBrowser = defaultProtocols.every(p => app.isDefaultProtocolClient(p))
}
appActions.changeSetting(settings.IS_DEFAULT_BROWSER, isDefaultBrowser)
}

Expand Down
21 changes: 17 additions & 4 deletions js/stores/appStore.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ const assert = require('assert')
const profiles = require('../../app/browser/profiles')
const {zoomLevel} = require('../../app/common/constants/toolbarUserInterfaceScale')
const {HrtimeLogger} = require('../../app/common/lib/logUtil')
const platformUtil = require('../../app/common/lib/platformUtil')

// state helpers
const {makeImmutable} = require('../../app/common/state/immutableUtil')
Expand Down Expand Up @@ -552,12 +553,24 @@ const handleAppAction = (action) => {
}
case appConstants.APP_DEFAULT_BROWSER_UPDATED:
if (action.useBrave) {
for (const p of defaultProtocols) {
app.setAsDefaultProtocolClient(p)
let isDefaultBrowser
if (platformUtil.isLinux()) {
const Channel = require('../../app/channel')
const desktopName = Channel.getLinuxDesktopName()
for (const p of defaultProtocols) {
app.setAsDefaultProtocolClient(p, desktopName)
app.setAsDefaultProtocolClient('', desktopName)
}
isDefaultBrowser = defaultProtocols.every(p => app.isDefaultProtocolClient(p, desktopName)) &&
app.isDefaultProtocolClient('', desktopName)
} else {
for (const p of defaultProtocols) {
app.setAsDefaultProtocolClient(p)
}
isDefaultBrowser = defaultProtocols.every(p => app.isDefaultProtocolClient(p))
}
appState = appState.setIn(['settings', settings.IS_DEFAULT_BROWSER], isDefaultBrowser)
}
let isDefaultBrowser = defaultProtocols.every(p => app.isDefaultProtocolClient(p))
appState = appState.setIn(['settings', settings.IS_DEFAULT_BROWSER], isDefaultBrowser)
break
case appConstants.APP_DEFAULT_BROWSER_CHECK_COMPLETE:
appState = appState.set('defaultBrowserCheckComplete', {})
Expand Down

0 comments on commit 5ec53ab

Please sign in to comment.