make leftpane overlay closer to android

pull/1306/head
Audric Ackermann 5 years ago
parent 08433aa676
commit eb3ee8f6b0
No known key found for this signature in database
GPG Key ID: 999F434D76324AD4

@ -169,6 +169,10 @@
"message": "Choose folder", "message": "Choose folder",
"description": "Button to allow the user to find a folder on disk" "description": "Button to allow the user to find a folder on disk"
}, },
"done": {
"message": "Done",
"description": "Button when a specific action is to be done."
},
"loadDataHeader": { "loadDataHeader": {
"message": "Load your data", "message": "Load your data",
"description": "Header shown on the first screen in the data import process" "description": "Header shown on the first screen in the data import process"
@ -1558,23 +1562,15 @@
} }
}, },
"blockUser": { "blockUser": {
"message": "Block User" "message": "Block contact"
}, },
"unblockUser": { "unblockUser": {
"message": "Unblock User" "message": "Unblock contact"
}, },
"blockedSettingsTitle": { "blockedSettingsTitle": {
"message": "Blocked Users", "message": "Blocked contacts",
"description": "Shown in the settings page as the heading for the blocked user settings" "description": "Shown in the settings page as the heading for the blocked user settings"
}, },
"editProfileTitle": {
"message": "Change your own display name",
"description": "The title shown when user edits their own profile"
},
"editProfileDisplayNameWarning": {
"message": "Note: Your display name will be visible to your contacts",
"description": "Shown to the user as a warning about setting display name"
},
"copyPublicKey": { "copyPublicKey": {
"message": "Copy Public Key", "message": "Copy Public Key",
"description": "Button action that the user can click to copy their public keys" "description": "Button action that the user can click to copy their public keys"
@ -1713,8 +1709,8 @@
"message": "This is <strong>your unique public QR Code.</strong><br/>Other users may scan this in order to begin a conversation with you.", "message": "This is <strong>your unique public QR Code.</strong><br/>Other users may scan this in order to begin a conversation with you.",
"description": "Description given to QRCode modal" "description": "Description given to QRCode modal"
}, },
"noServerURL": { "invalidOpenGroupUrl": {
"message": "Please enter a server URL", "message": "Please enter an open group URL",
"description": "Error message when no server url entered" "description": "Error message when no server url entered"
}, },
"copiedMnemonic": { "copiedMnemonic": {
@ -1797,7 +1793,7 @@
"message": "You are already connected to this open group" "message": "You are already connected to this open group"
}, },
"connectToServerFail": { "connectToServerFail": {
"message": "Failed to connect to server. Check URL" "message": "Couldn't join group"
}, },
"connectingToServer": { "connectingToServer": {
"message": "Connecting to server..." "message": "Connecting to server..."
@ -2047,11 +2043,8 @@
"newClosedGroup": { "newClosedGroup": {
"message": "New Closed Group" "message": "New Closed Group"
}, },
"createClosedGroup": { "newClosedGroupDescription": {
"message": "Create Closed Group" "message": "Closed groups support up to 10 members and provide the same privacy protections as one-on-one sessions."
},
"createClosedGroupDescription": {
"message": "Closed groups are end-to-end encrypted group chats for up to 10 members. They provide the same privacy protections as one-on-one sessions."
}, },
"createClosedGroupNamePrompt": { "createClosedGroupNamePrompt": {
"message": "Group Name" "message": "Group Name"
@ -2065,14 +2058,11 @@
"enterOpenGroupURL": { "enterOpenGroupURL": {
"message": "Enter Open Group URL" "message": "Enter Open Group URL"
}, },
"channelUrlPlaceholder": { "openGroupURL": {
"message": "chat.getsession.org" "message": "Open Group URL"
},
"addChannelDescription": {
"message": "Enter an open group URL."
}, },
"joinChannel": { "enterAnOpenGroupURL": {
"message": "Join Open Group" "message": "Enter an open group URL"
}, },
"next": { "next": {
"message": "Next" "message": "Next"
@ -2089,25 +2079,17 @@
"devicePairedSuccessfully": { "devicePairedSuccessfully": {
"message": "Device linked successfully" "message": "Device linked successfully"
}, },
"invalidGroupName": { "invalidGroupNameTooShort": {
"message": "Group Name length must be between 1 to $maxSize$", "message": "Please enter a group name"
"description": "Error message displayed on invalid group name",
"placeholders": {
"maxSize": {
"content": "$1",
"example": "125"
}
}
}, },
"invalidGroupSize": { "invalidGroupNameTooLong": {
"message": "Closed Group size must be between 1 to $maxSize$", "message": "Please enter a shorter group name"
"description": "Error message displayed on invalid closed group size", },
"placeholders": { "pickClosedGroupMember": {
"maxSize": { "message": "Please pick at least 2 group members"
"content": "$1", },
"example": "10" "closedGroupMaxSize": {
} "message": "A closed group cannot have more than 10 members"
}
}, },
"maxGroupMembersError": { "maxGroupMembersError": {
"message": "Max number of members for small group chats is $maxSize$", "message": "Max number of members for small group chats is $maxSize$",
@ -2117,8 +2099,5 @@
"example": "10" "example": "10"
} }
} }
},
"useSenderKeys": {
"message": "Use Sender Keys"
} }
} }

@ -48,15 +48,17 @@ async function createClosedGroup(
onSuccess: any onSuccess: any
) { ) {
// Validate groupName and groupMembers length // Validate groupName and groupMembers length
if ( if (groupName.length === 0) {
groupName.length === 0 ||
groupName.length > window.CONSTANTS.MAX_GROUP_NAME_LENGTH
) {
window.pushToast({ window.pushToast({
title: window.i18n( title: window.i18n('invalidGroupNameTooShort'),
'invalidGroupName', type: 'error',
window.CONSTANTS.MAX_GROUP_NAME_LENGTH id: 'invalidGroupName',
), });
return;
} else if (groupName.length > window.CONSTANTS.MAX_GROUP_NAME_LENGTH) {
window.pushToast({
title: window.i18n('invalidGroupNameTooLong'),
type: 'error', type: 'error',
id: 'invalidGroupName', id: 'invalidGroupName',
}); });
@ -64,18 +66,22 @@ async function createClosedGroup(
return; return;
} }
// >= because we add ourself as a member after this. so a 10 group is already invalid as it will be 11 with ourself // >= because we add ourself as a member AFTER this. so a 10 group is already invalid as it will be 11 with ourself
if ( // the same is valid with groups count <= 1
groupMembers.length === 0 ||
groupMembers.length >= window.CONSTANTS.SMALL_GROUP_SIZE_LIMIT if (groupMembers.length <= 1) {
) { window.pushToast({
title: window.i18n('pickClosedGroupMember'),
type: 'error',
id: 'pickClosedGroupMember',
});
return;
} else if (groupMembers.length >= window.CONSTANTS.SMALL_GROUP_SIZE_LIMIT) {
window.pushToast({ window.pushToast({
title: window.i18n( title: window.i18n('closedGroupMaxSize'),
'invalidGroupSize',
window.CONSTANTS.SMALL_GROUP_SIZE_LIMIT
),
type: 'error', type: 'error',
id: 'invalidGroupSize', id: 'closedGroupMaxSize',
}); });
return; return;

@ -364,7 +364,7 @@ export class LeftPaneMessageSection extends React.Component<Props, State> {
private renderBottomButtons(): JSX.Element { private renderBottomButtons(): JSX.Element {
const edit = window.i18n('edit'); const edit = window.i18n('edit');
const joinOpenGroup = window.i18n('joinOpenGroup'); const joinOpenGroup = window.i18n('joinOpenGroup');
const createClosedGroup = window.i18n('createClosedGroup'); const newClosedGroup = window.i18n('newClosedGroup');
const showEditButton = false; const showEditButton = false;
return ( return (
@ -386,7 +386,7 @@ export class LeftPaneMessageSection extends React.Component<Props, State> {
}} }}
/> />
<SessionButton <SessionButton
text={createClosedGroup} text={newClosedGroup}
buttonType={SessionButtonType.SquareOutline} buttonType={SessionButtonType.SquareOutline}
buttonColor={SessionButtonColor.White} buttonColor={SessionButtonColor.White}
onClick={() => { onClick={() => {
@ -447,15 +447,10 @@ export class LeftPaneMessageSection extends React.Component<Props, State> {
return; return;
} }
// Server URL entered?
if (serverUrl.length === 0) {
return;
}
// Server URL valid? // Server URL valid?
if (!OpenGroup.validate(serverUrl)) { if (serverUrl.length === 0 || !OpenGroup.validate(serverUrl)) {
window.pushToast({ window.pushToast({
title: window.i18n('noServerURL'), title: window.i18n('invalidOpenGroupUrl'),
id: 'connectToServer', id: 'connectToServer',
type: 'error', type: 'error',
}); });

@ -145,15 +145,15 @@ export class SessionClosableOverlay extends React.Component<Props, State> {
break; break;
case 'open-group': case 'open-group':
title = window.i18n('joinOpenGroup'); title = window.i18n('joinOpenGroup');
buttonText = window.i18n('joinOpenGroup'); buttonText = window.i18n('next');
descriptionLong = window.i18n('addChannelDescription'); // descriptionLong = '';
subtitle = window.i18n('enterOpenGroupURL'); subtitle = window.i18n('openGroupURL');
placeholder = window.i18n('channelUrlPlaceholder'); placeholder = window.i18n('enterAnOpenGroupURL');
break; break;
case 'closed-group': case 'closed-group':
title = window.i18n('newClosedGroup'); title = window.i18n('newClosedGroup');
buttonText = window.i18n('createClosedGroup'); buttonText = window.i18n('done');
descriptionLong = window.i18n('createClosedGroupDescription'); descriptionLong = window.i18n('newClosedGroupDescription');
subtitle = window.i18n('createClosedGroupNamePrompt'); subtitle = window.i18n('createClosedGroupNamePrompt');
placeholder = window.i18n('createClosedGroupPlaceholder'); placeholder = window.i18n('createClosedGroupPlaceholder');
break; break;
@ -232,7 +232,9 @@ export class SessionClosableOverlay extends React.Component<Props, State> {
</> </>
)} )}
<div className="session-description-long">{descriptionLong}</div> {descriptionLong && (
<div className="session-description-long">{descriptionLong}</div>
)}
{isMessageView && <h4>{window.i18n('or')}</h4>} {isMessageView && <h4>{window.i18n('or')}</h4>}
{isMessageView && ( {isMessageView && (
@ -272,7 +274,7 @@ export class SessionClosableOverlay extends React.Component<Props, State> {
'sender-keys-description' 'sender-keys-description'
)} )}
> >
{window.i18n('useSenderKeys')} Use Sender Keys
</span> </span>
</div> </div>
)} )}

@ -103,7 +103,7 @@ export class SettingsView extends React.Component<SettingsViewProps, State> {
if (category === SessionSettingCategory.Devices) { if (category === SessionSettingCategory.Devices) {
// special case for linked devices // special case for linked devices
settings = this.getLinkedDeviceSettings(); settings = this.getLinkedDeviceSettings();
} else if(category === SessionSettingCategory.Blocked) { } else if (category === SessionSettingCategory.Blocked) {
// special case for blocked user // special case for blocked user
settings = this.getBlockedUserSettings(); settings = this.getBlockedUserSettings();
} else { } else {
@ -600,16 +600,15 @@ export class SettingsView extends React.Component<SettingsViewProps, State> {
const blockedNumbers = BlockedNumberController.getBlockedNumbers(); const blockedNumbers = BlockedNumberController.getBlockedNumbers();
for (const blockedNumber of blockedNumbers) { for (const blockedNumber of blockedNumbers) {
let displayName = `User (...${blockedNumber.substr(-6)})`; let displayName = `User (...${blockedNumber.substr(-6)})`;
const currentModel = window.ConversationController.get(blockedNumber); const currentModel = window.ConversationController.get(blockedNumber);
if ( if (
currentModel && currentModel &&
currentModel.attributes.profile && currentModel.attributes.profile &&
currentModel.attributes.profile.displayName currentModel.attributes.profile.displayName
) { ) {
displayName = currentModel.attributes.profile.displayName displayName = currentModel.attributes.profile.displayName;
} }
results.push({ results.push({
@ -624,7 +623,7 @@ export class SettingsView extends React.Component<SettingsViewProps, State> {
}, },
comparisonValue: undefined, comparisonValue: undefined,
setFn: async () => { setFn: async () => {
await BlockedNumberController.unblock(blockedNumber) await BlockedNumberController.unblock(blockedNumber);
}, },
hidden: false, hidden: false,
onClick: undefined, onClick: undefined,

Loading…
Cancel
Save