Commit graph

1937 commits

Author SHA1 Message Date
lilia
c4ccf7c8e3
Inline setUnreadCount
// FREEBIE
2017-09-14 16:53:44 -07:00
lilia
29b07950a3
Fix scroll reset after clicking on a notification 2017-09-14 16:53:43 -07:00
lilia
2528acc717
Remove platform-specific links from install flow
Mostly to satisfy the mac app store.

// FREEBIE
2017-09-14 16:53:43 -07:00
lilia
e65007e297
Tweak default notification content
Change the placeholder content for when notifications are configured for
count-only or sender-only. Remove some options that are no longer
supported.

// FREEBIE
2017-09-14 16:53:43 -07:00
lilia
79872be9f5
Unfurl notifications
Since we no longer have support for list-style notifications, stop
coalescing notifications into batches and just show contents of the last
message received. Also open the window when clicking on a notification
if it has previously been closed.

// FREEBIE
2017-09-14 16:53:43 -07:00
lilia
4d981c439a
Remove number validation from install view
Allows our special cased test numbers to link desktop clients.

// FREEBIE
2017-09-14 16:53:42 -07:00
lilia
76cd650577
Restore missing contactsync listeners
Fix installer getting stuck on "Generating Keys"

// FREEBIE
2017-09-14 16:53:42 -07:00
lilia
d2179b2c3f
Conversation view handles drag n drop events
By forwarding them to its file input.

// FREEBIE
2017-09-14 16:53:41 -07:00
Scott Nonnenberg
601081c1b8
More refactoring to reduce global event dependencies
All Whisper.events listeners are now defined and bound in background.js,
and we no longer need global methods for opening the inbox and
conversation views, as those are handled by AppView or internally by
InboxView.

// FREEBIE
2017-09-14 16:53:41 -07:00
lilia
8d32a3bebd
Remove dead code
This view doesn't contain any elements with class openInbox.

// FREEBIE
2017-09-14 16:53:41 -07:00
lilia
4b96722d52
Hide initially empty error in standalone view
// FREEBIE
2017-09-14 16:53:41 -07:00
lilia
008e978b8a
Make standalone registration more accessible
Add buttons for switching between the linking flow and the standalone
registration flow. The button and standalone registration are only
availble in a development environment.

// FREEBIE
2017-09-14 16:53:41 -07:00
lilia
a2e0fa59c1
Collect references to Whisper.events
Fixup

// FREEBIE
2017-09-14 16:53:41 -07:00
lilia
f7c7e2251d
Remove unused method
This is now handled in AppView

// FREEBIE
2017-09-14 16:53:41 -07:00
lilia
0c9cca08ba
Draw attention to the window on new messages
// FREEBIE
2017-09-14 16:53:41 -07:00
lilia
ea930d53ae
Set badge count
This is displayed on the launcher icon on linux/mac

// FREEBIE
2017-09-14 16:53:41 -07:00
lilia
d025b57656
Remove unused method 2017-09-14 16:53:41 -07:00
lilia
6b70aecf29
Fix opening a conversation from notification 2017-09-14 16:53:40 -07:00
lilia
b6e5439860
Fix saving attachments
// FREEBIE
2017-09-14 16:53:39 -07:00
lilia
878b15c288
Add node version to debug log
The chrome, electron, and signal versions are already included in the
user agent string.

// FREEBIE
2017-09-14 16:53:39 -07:00
lilia
112f5a00ca
Delete unused files
// FREEBIE
2017-09-14 16:53:39 -07:00
lilia
de3816b094
Get standalone registration working in development
Whisper.events.trigger('openStandalone') to open the standalone
registration view.

// FREEBIE
2017-09-14 16:53:39 -07:00
lilia
3a9f4f0df3
Flatten database migrations
We can compress or toss out most of these one-off data migrations since
everyone starts from scratch with electron.

// FREEBIE
2017-09-14 16:53:39 -07:00
lilia
a55c61a3ba
Use local var environment rather than NODE_ENV
Traditionally, NODE_ENV refers to an environment variable. For clarity,
let's keep it that way and don't reuse it in the renderer. Also, add a
note about explicitly overriding env vars for node-config.

// FREEBIE
2017-09-14 16:53:38 -07:00
lilia
e7e030a5e2
Build expiration date
Add the buildExpiration config and add it to the renderer's config
object. Use grunt to write the build expiration to
config/local-production.json which will override the default value (no
expiration) in production. Finally, run this grunt task as part of the
build process.

// FREEBIE
2017-09-14 16:53:38 -07:00
lilia
c83dbc1bf0
Rename window.env to window.config
Also normalize to camelCase for configs.

// FREEBIE
2017-09-14 16:53:38 -07:00
lilia
6574958087
Remove check for open windows
We now live in a single-window world.

// FREEBIE
2017-09-14 16:53:38 -07:00
lilia
e4e41140c4
Refactor app view
Introduce a top level view for navigating between the inbox and the
installer, enabling an in-window relink flow. Navigation is driven
through the openInbox and openInstaller global events.

// FREEBIE
2017-09-14 16:53:37 -07:00
lilia
3f5505907f
Fix setUnreadCount 2017-09-14 16:53:37 -07:00
lilia
75dbc27cfa
Fix i18n of timer options
It is important to return something falsey in the case where there is
no translation.

// FREEBIE
2017-09-14 16:53:37 -07:00
lilia
72c3dc286c
Remove onLaunched handler
This is now handled outside the renderer.

// FREEBIE
2017-09-14 16:53:37 -07:00
lilia
83a020cc5e
Move focus listeners to their own file
// FREEBIE
2017-09-14 16:53:37 -07:00
lilia
7e1bee1082
Configure app/build using node config
Add environment-specific configs under `./config` and integrate with the
build system. Also changes package.json `files` from blacklist to
whitelist.

// FREEBIE
2017-09-14 16:53:36 -07:00
lilia
34042415e9
Database logging cancels persistent debug log storage
Database logging is helpful as a debugging tool, but it creates an
infinite loop with the debug log, which wants to write to the database,
which wants to write to the log, which wants to write to the database,
which wants to write to the log, which wants to write to the database,
which wants to write to the log, which wants to write to the database...

// FREEBIE
2017-09-14 16:53:36 -07:00
lilia
a381d9c975
Fix focus detection 2017-09-14 16:53:36 -07:00
lilia
5650748961
Fix pre-populated device name 2017-09-14 16:53:36 -07:00
lilia
25b0fbd949
Fix exceptions on window close
The stopListening function was being passed the close event as an
argument, which caused it to throw.

// FREEBIE
2017-09-14 16:53:36 -07:00
lilia
49cdc98386
Fix lightbox 2017-09-14 16:53:35 -07:00
lilia
acd19fd759
Fix inbox styles 2017-09-14 16:53:35 -07:00
lilia
86d703bc87
Fix debug log 2017-09-14 16:53:35 -07:00
lilia
63657db3be
Quick fix for i18n
Just use the english locale for now. Load locale data from the
filesystem in the main process and pass it to the renderer preload
script via ipc. Note that we need the locale data to be available by the
time view scripts are loaded.

// FREEBIE
2017-09-14 16:53:35 -07:00
lilia
88893079d2
Fix restart 2017-09-14 16:53:35 -07:00
lilia
2bbd0d58c6
Separate development and production environments
Set NODE_ENV at run time or build time to switch the app between dev and
production modes.

At build time, the current NODE_ENV will be included in the packaged
app's package.json file. At runtime we read NODE_ENV from package.json,
but also allow the local environment variable to override. A query
string parsed by a preload script exposes the value to the renderer,
which then determines whether we use the staging or production server.
Additionally, different environments have different user data
directories.

// FREEBIE
2017-09-14 16:53:35 -07:00
lilia
285b5ce062
Get install flow working in main window
// FREEBIE
2017-09-14 16:53:35 -07:00
lilia
6686621b0b
Fix file dialog 2017-09-14 16:53:34 -07:00
lilia
5a6e65d11b
Merge index.html into background.html
Nothing stops us from rendering the inbox in the background page, since
it is no longer a background page at all. TODO: intercept window close
events to hide this window instead of closing it unless the app is quit
explicitly.

// FREEBIE
2017-09-14 16:53:34 -07:00
lilia
859d49b3f4
Use relative paths
// FREEBIE
2017-09-14 16:53:34 -07:00
lilia
95e809636a
Quick fix for undefined references to chrome.* 2017-09-14 16:53:34 -07:00
Scott Nonnenberg
ff6dc786f9 Force full contact/group import on next launch if not first run (#1476)
* Force full contact/group import on next launch (if not first run)

FREEBIE

* Don't update contact sync key in storage on every reconnect

FREEBIE
2017-09-14 12:08:10 -07:00
Scott Nonnenberg
00e1a6a36a Export: Improve usability - timing expectations, install button (#1474)
Because export might take a couple minutes, we now set expectations
that it might take 'several minutes' instead of just 'please wait.'

We also promote 'Install new Signal Desktop' from a text link in the
instructions to a button. This is important on the 'Completed' screen
because it is bigger and to the left of the 'Export Again' button, which
previously drew primary focus on that screen.

Lastly, we also remove the title-specific element of the support link,
so we're resilient to title changes in the future.

FREEBIE
2017-09-13 13:33:40 -07:00