Cable-Desktop/index.html
lilia 1023ea1732 Refactor textsecure.protos -> textsecure.protobuf
DRY up protobuf declarations and move to a slightly briefer naming
convention.

Also dropped some ArrayBuffer -> string conversions as
ProtoBuf.js handles ArrayBuffers just fine, and in fact, more
efficiently than strings.

Finally, dropped the btoa() wrappers, because that incurs an extra
string -> string conversion before the protobuf's internal string ->
array buffer conversion. In lieu of btoa, we can simply pass in the
optional string encoding argument to the protobuf's decode method,
which in these cases should be 'binary'.

Related: #17
2014-10-20 15:11:16 -07:00

156 lines
7.8 KiB
HTML

<!DOCTYPE html>
<html class='no-js' lang='en'>
<head>
<meta charset='utf-8'>
<meta content='width=device-width, user-scalable=no, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0' name='viewport'>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>
Signal for Chrome
</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href='/favicon.ico' rel='shortcut icon'>
<link href="/stylesheets/normalize.css" rel="stylesheet" type="text/css" />
<link href="/stylesheets/manifest.css" rel="stylesheet" type="text/css" />
<link href="/stylesheets/index.css" rel="stylesheet" type="text/css" />
<link href="/stylesheets/bootstrap-tagsinput.css" rel="stylesheet" type="text/css" />
</head>
<body class='signal index' data-name="curve25519" data-tools="pnacl" data-configs="Debug Release" data-path="nacl/pnacl/{config}">
<div class='title-bar' id='header'>
<a href id='new-message'>New message</a>
<a href id='new-group'>New group</a>
</div>
<div class='notifications'>
<div class='notification info'>
</div>
</div>
<div id='gutter' class='gutter'>
<div class='search'>
<form>
<input name='contact_search' placeholder='Search' type='search'>
</form>
</div>
<div id='contacts'></div>
</div>
<script type='text/x-tmpl-mustache' id='conversation'>
<div class='discussion-container'></div>
<div class='send-message-area'>
<div class='message-composer'>
<form class='send'>
<input class='send-message' rows='6' type='textarea'>
<div class='attachments'> Add Files </div>
</form>
</div>
<div class='extension-details'>
<ul>
<li>Signal for Chrome</li>
<li><a href="https://github.com/whispersystems">Version 0.1</a></li>
<li>by <a href="http://whispersystems.org">Open Whisper Systems</a></li>
<li><a href="http://support.whispersystems.org/">Need Help?</a></li>
</ul>
</div>
</div>
</script>
<script type='text/x-tmpl-mustache' id='message'>
<div class='bubble bubble_context {{ bubble_class }}'>
<ul class='volley'>
<li class='message'>
{{ message }}
</li>
</ul>
</div>
</script>
<script type='text/x-tmpl-mustache' id='contact'>
<img class='avatar' src='{{ contact_avatar }}'>
<div class='contact-details'>
<h3>
{{ contact_name }}
</h3>
<p class='last-message'>
{{ last_message }}
</p>
<span class='last-timestamp'>
{{ last_message_timestamp }}
</span>
</div>
</script>
<script type='text/x-tmpl-mustache' id='new-message-form'>
<form class='send message'>
<input type='text' name='number' class='number'>
<div class='send-message-area'>
<div class='message-composer'>
<input name='message' class='send-message' rows='6' type='textarea'>
<div class='attachments'> Add Files </div>
<input type='submit'>
</div>
<div class='extension-details'>
<ul>
<li>Signal for Chrome</li>
<li><a href="https://github.com/whispersystems">Version 0.1</a></li>
<li>by <a href="http://whispersystems.org">Open Whisper Systems</a></li>
<li><a href="http://support.whispersystems.org/">Need Help?</a></li>
</ul>
</div>
</div>
</form>
</script>
<script type='text/x-tmpl-mustache' id='new-group-form'>
<form class='send group'>
<input name='name' class='name' placeholder='New Group'>
<input name='numbers' class='numbers' data-role=tagsinput placeholder='Add Recipient'>
<div class='send-message-area'>
<div class='message-composer'>
<input class='send-message' rows='6' type='textarea'>
<div class='attachments'> Add Files </div>
<input type='submit'>
</div>
<div class='extension-details'>
<ul>
<li>Signal for Chrome</li>
<li><a href="https://github.com/whispersystems">Version 0.1</a></li>
<li>by <a href="http://whispersystems.org">Open Whisper Systems</a></li>
<li><a href="http://support.whispersystems.org/">Need Help?</a></li>
</ul>
</div>
</div>
</form>
</script>
<script type="text/javascript" src="js-deps/nacl-common.js"></script>
<script type="text/javascript" src="js-deps/jquery.js"></script>
<script type="text/javascript" src="js-deps/bootstrap-tagsinput.js"></script>
<script type="text/javascript" src="js-deps/CryptoJS.js"></script>
<script type="text/javascript" src="js-deps/curve255.js"></script>
<script type="text/javascript" src="js-deps/Long.min.js"></script>
<script type="text/javascript" src="js-deps/ByteBuffer.min.js"></script>
<script type="text/javascript" src="js-deps/ProtoBuf.min.js"></script>
<script type="text/javascript" src="js-deps/underscore.js"></script>
<script type="text/javascript" src="js-deps/backbone.js"></script>
<script type="text/javascript" src="js-deps/backbone.localStorage.js"></script>
<script type="text/javascript" src="js-deps/mustache.js"></script>
<script type="text/javascript" src="js-deps/libphonenumber_api-compiled.js"></script>
<script type="text/javascript" src="js/protobufs.js"></script>
<script type="text/javascript" src="js/helpers.js"></script>
<script type="text/javascript" src="js/libphonenumber-util.js"></script>
<script type="text/javascript" src="js/webcrypto.js"></script>
<script type="text/javascript" src="js/crypto.js"></script>
<script type="text/javascript" src="js/models/messages.js"></script>
<script type="text/javascript" src="js/models/threads.js"></script>
<script type="text/javascript" src="js/api.js"></script>
<script type="text/javascript" src="js/sendmessage.js"></script>
<script type="text/javascript" src="js/chromium.js"></script>
<script type="text/javascript" src="js/views/notifications.js"></script>
<script type="text/javascript" src="js/views/list_view.js"></script>
<script type="text/javascript" src="js/views/message_view.js"></script>
<script type="text/javascript" src="js/views/message_list_view.js"></script>
<script type="text/javascript" src="js/views/conversation_list_item_view.js"></script>
<script type="text/javascript" src="js/views/conversation_list_view.js"></script>
<script type="text/javascript" src="js/views/conversation_view.js"></script>
<script type="text/javascript" src="js/views/new_conversation_view.js"></script>
<script type="text/javascript" src="js/views/new_group_view.js"></script>
<script type="text/javascript" src="js/popup.js"></script>
<div id="listener"></div>
<div id="log"></div>
</body>
</html>