Update style and copy on key changes

// FREEBIE
This commit is contained in:
lilia 2016-03-24 12:33:41 -07:00
parent 3d34cdcc0c
commit 76652c2622
8 changed files with 70 additions and 30 deletions

View file

@ -33,7 +33,7 @@
"description": "Header for a key change dialog" "description": "Header for a key change dialog"
}, },
"identityChanged": { "identityChanged": {
"message": "This contact is using a new Signal identity. This could either mean that someone is trying to intercept your communication, or this contact simply re-installed Signal. You may wish to verify their new identity." "message": "This contact is using a new Signal identity. This could either mean that someone is trying to intercept your communication, or this contact simply re-installed Signal. You may wish to verify their new identity key below."
}, },
"outgoingKeyConflict": { "outgoingKeyConflict": {
"message": "This contact's identity key has changed. Click to process and display." "message": "This contact's identity key has changed. Click to process and display."
@ -118,11 +118,12 @@
"message": "Verify Identity" "message": "Verify Identity"
}, },
"theirIdentity": { "theirIdentity": {
"message": "Their identity (they read):", "message": "Their identity",
"description": "They is used here as a gender-neutral third-person singular" "description": "Label for someone else's identity key. They is used here as a gender-neutral third-person singular."
}, },
"yourIdentity": { "yourIdentity": {
"message": "Your identity (you read):" "message": "Your identity",
"description": "Label for the user's own identity key."
}, },
"theirIdentityUnknown": { "theirIdentityUnknown": {
"message": "You haven't exchanged any messages with this contact yet. Their identity will be available after the first message." "message": "You haven't exchanged any messages with this contact yet. Their identity will be available after the first message."
@ -252,5 +253,9 @@
"showLess": { "showLess": {
"message": "Hide details", "message": "Hide details",
"description": "Hides the details of a key change" "description": "Hides the details of a key change"
},
"learnMore": {
"message": "Learn more about verifying keys.",
"description": "Text that links to a support article on verifying identity keys"
} }
} }

View file

@ -238,10 +238,11 @@
<script type='text/x-tmpl-mustache' id='key_verification_panel'> <script type='text/x-tmpl-mustache' id='key_verification_panel'>
<div class='container'> <div class='container'>
{{> key_verification }} {{> key_verification }}
<p> {{> link_to_support }} </p>
</div> </div>
</script> </script>
<script type='text/x-tmpl-mustache' id='key_verification'> <script type='text/x-tmpl-mustache' id='key_verification'>
<p> {{theirIdentity}} </p> <label> {{theirIdentity}} </label>
{{ ^their_key }} {{ ^their_key }}
<div class='placeholder'>{{ their_key_unknown }}</div> <div class='placeholder'>{{ their_key_unknown }}</div>
{{ /their_key }} {{ /their_key }}
@ -250,7 +251,7 @@
{{ #their_key }} <span>{{ . }}</span> {{ /their_key }} {{ #their_key }} <span>{{ . }}</span> {{ /their_key }}
</div> </div>
{{ /has_their_key }} {{ /has_their_key }}
<p> {{yourIdentity}} </p> <label> {{yourIdentity}} </label>
<div class='key'> <div class='key'>
{{ #your_key }} <span>{{ . }}</span> {{ /your_key }} {{ #your_key }} <span>{{ . }}</span> {{ /your_key }}
</div> </div>
@ -304,17 +305,25 @@
</span> </span>
</div> </div>
</script> </script>
<script type='text/x-tmpl-mustache' id='link_to_support'>
<a href='http://support.whispersystems.org/hc/articles/213134107' target='_blank'>
{{ learnMore }}
</a>
</script>
<script type='text/x-tmpl-mustache' id='key-conflict-dialogue'> <script type='text/x-tmpl-mustache' id='key-conflict-dialogue'>
<div class='clearfix'> <h3 class='header'>{{ newIdentity }}</h3>
<h3>{{ newIdentity }}</h3> <div class='content clearfix'>
{{> avatar }} {{> avatar }}
<span class='name'>{{ name }}</span> <span class='name'>{{ name }}</span>
<button class='resolve'>{{ resolve }}</button> <button class='resolve'>{{ resolve }}</button>
<span class='hideKeys hide'> {{ hideKeys }} </span> <a href='#' class='hideKeys hide'> {{ hideKeys }} </a>
<span class='showKeys'> {{ showKeys }} </span> <a href='#' class='showKeys'> {{ showKeys }} </a>
</div> <div class='keys hide'>
<div class='keys hide'> <p>
<p> {{ message }} </p> {{ message }}
{{> link_to_support }}
</p>
</div>
</div> </div>
</script> </script>
<script type='text/x-tmpl-mustache' id='window-controls'> <script type='text/x-tmpl-mustache' id='window-controls'>

View file

@ -52,7 +52,8 @@
message : i18n('identityChanged'), message : i18n('identityChanged'),
resolve : i18n('acceptNewKey'), resolve : i18n('acceptNewKey'),
showKeys : i18n('showMore'), showKeys : i18n('showMore'),
hideKeys : i18n('showLess') hideKeys : i18n('showLess'),
learnMore : i18n('learnMore')
}; };
} }
}); });

View file

@ -20,6 +20,7 @@
}, },
render_attributes: function() { render_attributes: function() {
return { return {
learnMore : i18n('learnMore'),
verifyIdentity: i18n('verifyIdentity'), verifyIdentity: i18n('verifyIdentity'),
yourIdentity: i18n('yourIdentity'), yourIdentity: i18n('yourIdentity'),
theirIdentity: i18n('theirIdentity'), theirIdentity: i18n('theirIdentity'),

View file

@ -25,7 +25,7 @@
.container { .container {
padding-top: 20px; padding-top: 20px;
max-width: 910px; max-width: 950px;
margin: 0 auto; margin: 0 auto;
padding: 20px; padding: 20px;
} }
@ -59,6 +59,11 @@
} }
.key-verification { .key-verification {
label {
display: block;
margin-bottom: 10px;
font-size: small;
}
.key, .placeholder { .key, .placeholder {
padding: 0 1em; padding: 0 1em;
@ -68,7 +73,7 @@
display: inline-block; display: inline-block;
font-family: monospace; font-family: monospace;
padding: 10px; padding: 10px;
margin: 10px; margin-bottom: 20px;
background: $grey_l; background: $grey_l;
border: solid 1px $grey_l2; border: solid 1px $grey_l2;
border-radius: 5px; border-radius: 5px;
@ -80,10 +85,19 @@
.message-detail { .message-detail {
.key-conflict-dialogue { .key-conflict-dialogue {
background: #F3F3A7;
border-radius: 5px; border-radius: 5px;
padding: 20px; margin: 20px 0;
margin: 20px;
.header {
border-radius: 5px 5px 0 0;
background: #F3F3A7;
margin: 0;
padding: 10px 20px
}
.content {
padding: 20px;
border: 2px solid #F3F3A7;
}
button.resolve { button.resolve {
outline: none; outline: none;
@ -99,9 +113,6 @@
} }
.hideKeys, .showKeys { .hideKeys, .showKeys {
color: $blue;
text-decoration: underline;
cursor: pointer;
float: right; float: right;
line-height: 36px; line-height: 36px;
} }

View file

@ -58,6 +58,7 @@ body {
} }
button { cursor: pointer; } button { cursor: pointer; }
a { color: $blue; }
.inactive button.back { .inactive button.back {
background: url('/images/back.png') no-repeat center center; background: url('/images/back.png') no-repeat center center;

View file

@ -86,6 +86,7 @@ input.search {
outline: 0; outline: 0;
&::-webkit-search-cancel-button { &::-webkit-search-cancel-button {
-webkit-appearance: none; -webkit-appearance: none;
display: block;
width: 16px; width: 16px;
height: 16px; height: 16px;
background: url('/images/x.png') no-repeat center; background: url('/images/x.png') no-repeat center;

View file

@ -63,6 +63,9 @@ body {
button { button {
cursor: pointer; } cursor: pointer; }
a {
color: #2090ea; }
.inactive button.back { .inactive button.back {
background: url("/images/back.png") no-repeat center center; } background: url("/images/back.png") no-repeat center center; }
@ -497,6 +500,7 @@ input.search {
outline: 0; } outline: 0; }
input.search::-webkit-search-cancel-button { input.search::-webkit-search-cancel-button {
-webkit-appearance: none; -webkit-appearance: none;
display: block;
width: 16px; width: 16px;
height: 16px; height: 16px;
background: url("/images/x.png") no-repeat center; background: url("/images/x.png") no-repeat center;
@ -645,7 +649,7 @@ input.search {
overflow-y: scroll; } overflow-y: scroll; }
.conversation .panel .container { .conversation .panel .container {
padding-top: 20px; padding-top: 20px;
max-width: 910px; max-width: 950px;
margin: 0 auto; margin: 0 auto;
padding: 20px; } padding: 20px; }
.conversation .main.panel { .conversation .main.panel {
@ -668,6 +672,10 @@ input.search {
padding: 2em 20px 0; padding: 2em 20px 0;
overflow-y: auto; } overflow-y: auto; }
.key-verification label {
display: block;
margin-bottom: 10px;
font-size: small; }
.key-verification .key, .key-verification .placeholder { .key-verification .key, .key-verification .placeholder {
padding: 0 1em; padding: 0 1em;
-webkit-user-select: text; } -webkit-user-select: text; }
@ -675,7 +683,7 @@ input.search {
display: inline-block; display: inline-block;
font-family: monospace; font-family: monospace;
padding: 10px; padding: 10px;
margin: 10px; margin-bottom: 20px;
background: #f3f3f3; background: #f3f3f3;
border: solid 1px #d9d9d9; border: solid 1px #d9d9d9;
border-radius: 5px; } border-radius: 5px; }
@ -683,10 +691,16 @@ input.search {
font-weight: bold; } font-weight: bold; }
.message-detail .key-conflict-dialogue { .message-detail .key-conflict-dialogue {
background: #F3F3A7;
border-radius: 5px; border-radius: 5px;
padding: 20px; margin: 20px 0; }
margin: 20px; } .message-detail .key-conflict-dialogue .header {
border-radius: 5px 5px 0 0;
background: #F3F3A7;
margin: 0;
padding: 10px 20px; }
.message-detail .key-conflict-dialogue .content {
padding: 20px;
border: 2px solid #F3F3A7; }
.message-detail .key-conflict-dialogue button.resolve { .message-detail .key-conflict-dialogue button.resolve {
outline: none; outline: none;
border: none; border: none;
@ -699,9 +713,6 @@ input.search {
background: #2090ea; background: #2090ea;
margin-left: 20px; } margin-left: 20px; }
.message-detail .key-conflict-dialogue .hideKeys, .message-detail .key-conflict-dialogue .showKeys { .message-detail .key-conflict-dialogue .hideKeys, .message-detail .key-conflict-dialogue .showKeys {
color: #2090ea;
text-decoration: underline;
cursor: pointer;
float: right; float: right;
line-height: 36px; } line-height: 36px; }
.message-detail .message-container { .message-detail .message-container {