diff --git a/js/background.js b/js/background.js index b4296c50f..62fc44ddc 100644 --- a/js/background.js +++ b/js/background.js @@ -384,15 +384,8 @@ }; window.showNicknameDialog = params => { - const options = { - title: params.title || undefined, - message: params.message, - placeholder: params.placeholder, - convoId: params.convoId || undefined, - }; - if (appView) { - appView.showNicknameDialog(options); + appView.showNicknameDialog(params); } }; diff --git a/ts/components/session/SessionNicknameDialog.tsx b/ts/components/session/SessionNicknameDialog.tsx index d41d824dd..aaf1882e3 100644 --- a/ts/components/session/SessionNicknameDialog.tsx +++ b/ts/components/session/SessionNicknameDialog.tsx @@ -1,26 +1,20 @@ import React, { useState } from 'react'; import { ConversationController } from '../../session/conversations/ConversationController'; import { SessionModal } from './SessionModal'; -import { SessionButton, SessionButtonColor } from './SessionButton'; +import { SessionButton } from './SessionButton'; import { DefaultTheme, withTheme } from 'styled-components'; +import _ from 'lodash'; + type Props = { - message: string; - title: string; - placeholder?: string; - onOk?: any; - onClose?: any; onClickOk: any; onClickClose: any; - hideCancel: boolean; - okTheme: SessionButtonColor; theme: DefaultTheme; - convoId?: string; + convoId: string; }; const SessionNicknameInner = (props: Props) => { - const { title = '', message, onClickOk, onClickClose, convoId, placeholder } = props; - const showHeader = true; + const { onClickOk, onClickClose, convoId, theme } = props; const [nickname, setNickname] = useState(''); /** @@ -30,9 +24,10 @@ const SessionNicknameInner = (props: Props) => { const onNicknameInput = async (event: any) => { if (event.key === 'Enter') { await saveNickname(); + } else { + const currentNicknameEntered = event.target.value; + setNickname(currentNicknameEntered); } - const currentNicknameEntered = event.target.value; - setNickname(currentNicknameEntered); }; /** @@ -49,24 +44,24 @@ const SessionNicknameInner = (props: Props) => { return ( - {!showHeader &&
} -
- {message} + {window.i18n('changeNicknameMessage')}
{ + void onNicknameInput(_.cloneDeep(e)); + }} />
diff --git a/ts/models/conversation.ts b/ts/models/conversation.ts index 49900c782..aa92d145a 100644 --- a/ts/models/conversation.ts +++ b/ts/models/conversation.ts @@ -1313,9 +1313,6 @@ export class ConversationModel extends Backbone.Model { ); } window.showNicknameDialog({ - title: window.i18n('changeNickname') || 'Change Nickname', - message: window.i18n('changeNicknameMessage') || '', - placeholder: window.i18n('nicknamePlaceholder') || '', convoId: this.id, }); } diff --git a/ts/window.d.ts b/ts/window.d.ts index 26b33771f..7ca723f2c 100644 --- a/ts/window.d.ts +++ b/ts/window.d.ts @@ -68,7 +68,7 @@ declare global { setPassword: any; setSettingValue: any; showEditProfileDialog: any; - showNicknameDialog: any; + showNicknameDialog: (options: { convoId: string }) => void; showResetSessionIdDialog: any; storage: any; textsecure: LibTextsecure;