Unverified Commit 2feda567 authored by yann300's avatar yann300 Committed by GitHub

Merge pull request #1987 from ethereum/master_l

listen to PersonalMode changed event for Add Account ui updates
parents 4a4852f4 fc8e43e2
......@@ -24,9 +24,12 @@ class SettingsUI {
this._components.registry = globalRegistry
this._deps = {
networkModule: this._components.registry.get('network').api
networkModule: this._components.registry.get('network').api,
config: this._components.registry.get('config').api
}
this._deps.config.events.on('settings/personal-mode_changed', this.onPersonalChange.bind(this))
setInterval(() => {
this.updateAccountBalances()
}, 10 * 1000)
......@@ -87,7 +90,7 @@ class SettingsUI {
<div class="${css.crow}">
<div class="${css.col1_1}">
Account
<span id="remixRunPlusWraper" title="Create a new account">
<span id="remixRunPlusWraper" title="Create a new account" onload=${this.updatePlusButton.bind(this)}>
<i id="remixRunPlus" class="fas fa-plus-circle ${css.icon}" aria-hidden="true" onclick=${this.newAccount.bind(this)}"></i>
</span>
</div>
......@@ -215,19 +218,25 @@ class SettingsUI {
}
break
case 'web3': {
if (!this._components.registry.get('config').api.get('settings/personal-mode')) {
plusBtn.classList.add(css.disableMouseEvents)
plusTitle.title = 'Creating an account is possible only in Personal mode. Please go to Settings to enable it.'
} else {
plusBtn.classList.remove(css.disableMouseEvents)
plusTitle.title = 'Create a new account'
}
this.onPersonalChange()
}
break
default:
}
}
onPersonalChange () {
let plusBtn = document.getElementById('remixRunPlus')
let plusTitle = document.getElementById('remixRunPlusWraper')
if (!this._deps.config.get('settings/personal-mode')) {
plusBtn.classList.add(css.disableMouseEvents)
plusTitle.title = 'Creating an account is possible only in Personal mode. Please go to Settings to enable it.'
} else {
plusBtn.classList.remove(css.disableMouseEvents)
plusTitle.title = 'Create a new account'
}
}
newAccount () {
this.settings.newAccount(
(cb) => {
......
'use strict'
var CONFIG_FILE = '.remix.config'
const EventEmitter = require('events')
function Config (storage) {
this.items = {}
this.unpersistedItems = {}
this.events = new EventEmitter()
// load on instantiation
try {
......@@ -28,6 +30,7 @@ function Config (storage) {
this.items[key] = content
try {
storage.set(CONFIG_FILE, JSON.stringify(this.items))
this.events.emit(key + '_changed', content)
} catch (exception) {
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment