diff options
author | Corey Hulen <corey@hulen.com> | 2016-01-26 15:10:08 -0500 |
---|---|---|
committer | Corey Hulen <corey@hulen.com> | 2016-01-26 15:10:08 -0500 |
commit | f6540c4b5e349b3f6d4b807d698ac2c548b4fdb1 (patch) | |
tree | feb1ac4f79d2987d2b3e933afa03e930685d11e6 /web/react | |
parent | 163bab98b5662b34515c70ecb86ea625742b9fea (diff) | |
parent | c889d9bee107c61513f037fa2f66bf3a0d3fcb42 (diff) | |
download | chat-f6540c4b5e349b3f6d4b807d698ac2c548b4fdb1.tar.gz chat-f6540c4b5e349b3f6d4b807d698ac2c548b4fdb1.tar.bz2 chat-f6540c4b5e349b3f6d4b807d698ac2c548b4fdb1.zip |
Merge pull request #1978 from hmhealey/plt1484
PLT-1484 Changed first preference load to be done synchronously
Diffstat (limited to 'web/react')
-rw-r--r-- | web/react/pages/channel.jsx | 17 | ||||
-rw-r--r-- | web/react/stores/preference_store.jsx | 21 |
2 files changed, 13 insertions, 25 deletions
diff --git a/web/react/pages/channel.jsx b/web/react/pages/channel.jsx index 1e28dab8b..bfb95e1fc 100644 --- a/web/react/pages/channel.jsx +++ b/web/react/pages/channel.jsx @@ -18,14 +18,8 @@ import RegisterAppModal from '../components/register_app_modal.jsx'; import ImportThemeModal from '../components/user_settings/import_theme_modal.jsx'; import InviteMemberModal from '../components/invite_member_modal.jsx'; -import PreferenceStore from '../stores/preference_store.jsx'; - -import * as Utils from '../utils/utils.jsx'; -import * as AsyncClient from '../utils/async_client.jsx'; import * as EventHelpers from '../dispatcher/event_helpers.jsx'; -import Constants from '../utils/constants.jsx'; - var IntlProvider = ReactIntl.IntlProvider; class Root extends React.Component { @@ -92,12 +86,6 @@ class Root extends React.Component { } } -function onPreferenceChange() { - const selectedFont = PreferenceStore.get(Constants.Preferences.CATEGORY_DISPLAY_SETTINGS, 'selected_font', Constants.DEFAULT_FONT); - Utils.applyFont(selectedFont); - PreferenceStore.removeChangeListener(onPreferenceChange); -} - global.window.setup_channel_page = function setup(props, team, channel) { if (props.PostId === '') { EventHelpers.emitChannelClickEvent(channel); @@ -105,11 +93,8 @@ global.window.setup_channel_page = function setup(props, team, channel) { EventHelpers.emitPostFocusEvent(props.PostId); } - PreferenceStore.addChangeListener(onPreferenceChange); - AsyncClient.getAllPreferences(); - ReactDOM.render( <Root map={props} />, document.getElementById('channel_view') ); -};
\ No newline at end of file +}; diff --git a/web/react/stores/preference_store.jsx b/web/react/stores/preference_store.jsx index 79eab4fe1..7ecaf0a95 100644 --- a/web/react/stores/preference_store.jsx +++ b/web/react/stores/preference_store.jsx @@ -133,6 +133,16 @@ class PreferenceStoreClass extends EventEmitter { return preference; } + setPreferences(newPreferences) { + const preferences = this.getAllPreferences(); + + for (const preference of newPreferences) { + preferences.set(getPreferenceKeyForModel(preference), preference); + } + + this.setAllPreferences(preferences); + } + emitChange() { this.emit(CHANGE_EVENT); } @@ -155,18 +165,11 @@ class PreferenceStoreClass extends EventEmitter { this.emitChange(); break; } - case ActionTypes.RECIEVED_PREFERENCES: { - const preferences = this.getAllPreferences(); - - for (const preference of action.preferences) { - preferences.set(getPreferenceKeyForModel(preference), preference); - } - - this.setAllPreferences(preferences); + case ActionTypes.RECIEVED_PREFERENCES: + this.setPreferences(action.preferences); this.emitChange(); break; } - } } } |