Matthew Hodgson
c3477a30a7
oops, rebuild modernizr to pull in new tests
2017-05-15 01:22:32 +01:00
Matthew Hodgson
8e2e6cee35
require indexeddb & webworkers in modernizr
2017-05-15 01:07:25 +01:00
Michael Telatynski
bbda658b7f
make Electron tray icon mimic the Favico.js one
...
DRY: moved Favicon stuff into the base platform
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-13 12:37:13 +01:00
Luke Barnard
0e0918d07c
Merge pull request #3888 from vector-im/pr/3799
...
move manifest.json outward so it is scoped properly
2017-05-11 13:20:33 +01:00
Michael Telatynski
3c5594e034
move manifest.json outward so it is scoped properly
...
this will matter more when we add a service worker
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-11 13:12:26 +01:00
David Baker
6013a3e71d
Merge pull request #3683 from t3chguy/t3chguy/electron_version_inconsistency
...
Remove leading v in /version file, for SemVer and to match Electron ver
2017-05-05 18:28:16 +01:00
Richard van der Hoff
45efdbdd43
Include MXID and device id in rageshakes
...
- to make for easier triage
2017-05-04 17:21:16 +01:00
Michael Telatynski
6367344181
tidy and fix flow notation
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-05-02 21:32:34 +01:00
Michael Telatynski
b3c9229aee
DRY code and change double quotes to single
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-23 09:59:00 +01:00
Michael Telatynski
2139fb74bb
change show logic to same as that of the tray icon
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-23 09:56:43 +01:00
Matthew Hodgson
4864716abb
Merge pull request #3564 from t3chguy/t3chguy/malformed-notifications-gnome-kde
...
Escape HTML Tags from Linux Notifications (electron)
2017-04-22 16:45:04 +01:00
Michael Telatynski
0da6ca8aea
add more comment to explain this weirdness
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-22 16:05:08 +01:00
Matthew Hodgson
38fa9f78f1
prefix localstorage key as per the convention
2017-04-22 02:17:22 +01:00
turt2live
e877ad2e63
Remember acceptance for unsupported browsers.
...
Addresses #3624 .
This stores the flag in localStorage, after checking if localStorage is available. If localStorage is not available, the user will be prompted just like before this commit.
Signed-off-by: Travis Ralston <travpc@gmail.com>
2017-04-21 16:08:49 -06:00
Richard van der Hoff
ccc33db9dd
Compress uploaded rageshakes. ( #3647 )
2017-04-18 17:23:34 +01:00
Richard van der Hoff
d8bf57edc5
Add progress reporting to rageshake submission
2017-04-18 16:51:35 +01:00
Richard van der Hoff
a34b5abc82
Use multipart-form encoding for rageshake uploads ( #3646 )
...
This is a more sensible encoding for uploading logfiles, and will allow us to
compress the logfiles in future.
browser-request doesn't give us enough flexibility to do this properly, so we
use XMLHttpRequest directly.
2017-04-18 16:47:50 +01:00
Richard van der Hoff
062cf47290
Merge pull request #3645 from vector-im/rav/refactor_rageshake
...
Factor out rageshake upload to a separate file
2017-04-18 15:54:07 +01:00
Richard van der Hoff
6fd6ea9b8e
rageshake: fix race when collecting logs
...
*apparently* it's possible for your indexeddb transaction to complete in the
background, so that the `oncomplete` handler is never called. Make sure that
the oncomplete handler is set *before* doing the work.
2017-04-18 12:37:26 +01:00
Richard van der Hoff
3f291aae5b
Use an opts arg for submit-rageshake
2017-04-12 11:26:53 +01:00
Richard van der Hoff
6423f7ce03
rageshake: factor out submission to a separate file
...
This will mean we can load it asyncronously in future, if we want.
2017-04-11 18:59:22 +01:00
Richard van der Hoff
4efb2b6750
Rageshake: Factor out `getLogsForReport`
...
... in preparation for factoring out sending the report
2017-04-11 18:47:55 +01:00
Richard van der Hoff
cbfa4dd1ab
Get rageshake endpoint from SdkConfig instead of storing in rageshake
...
- in preparation for factoring out the sending of the rageshake
2017-04-11 18:46:48 +01:00
David Baker
7f6d9a625d
Make the clear cache button work on desktop
...
Implement reload in Platforms to support
https://github.com/matrix-org/matrix-react-sdk/pull/798
Fixes https://github.com/vector-im/riot-web/issues/3597
2017-04-10 17:40:09 +01:00
Richard van der Hoff
b8b74402c1
Add 'app' parameter to rageshake report
2017-04-10 15:07:43 +01:00
David Baker
ec870039bf
Don't use endsWith as it'll break on old node
...
It's a lodash template though, so use lodash
2017-04-07 14:57:02 +01:00
David Baker
b65466bc4f
Use dedicated indexeddb worker import
2017-04-07 14:41:41 +01:00
David Baker
515b57ba12
Update for rename of worker
2017-04-07 11:23:14 +01:00
David Baker
f187a359e6
Add support for indexeddb sync in webworker
2017-04-06 11:15:14 +01:00
Michael Telatynski
99923b7b8f
Escape HTML tags in Notifications (Linux)
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2017-04-03 20:30:05 +01:00
David Baker
a3040e22d3
Rename ReactPerf to Perf
...
As this makes it work out of the box with react-perf chrome
extension (which doesn't do a whole lot other than save you having
to remember the commands, but is still quite nice).
2017-03-29 10:38:46 +01:00
David Baker
4e6541b404
Merge pull request #3385 from vector-im/luke/fix-screen-after-login
...
Refactor screen set after login
2017-03-14 13:47:55 +00:00
Luke Barnard
7ff2871ad5
const
2017-03-09 10:04:15 +00:00
Luke Barnard
cbc31a6c41
Remove redundant thing
2017-03-09 10:03:23 +00:00
Luke Barnard
eddf33a689
Refactor screen set after login
2017-03-08 14:57:13 +00:00
David Baker
a8e99109b1
Support InteractiveAuth based registration
...
Passes in a function to make a register URL rather than just
passing in the URL base
2017-02-24 11:45:28 +00:00
Richard van der Hoff
038f5767f2
Add a comment
2017-02-23 14:37:46 +00:00
Richard van der Hoff
e2cec7b69c
More aggressive rageshake log culling
...
Also bump the client-side timeout on the upload from 3 mins to 5 mins, to see
if it helps people on slower connections.
2017-02-23 14:22:03 +00:00
Matthew Hodgson
6a7daaf6c4
remove GA, given it's increasingly useless given Riot/Desktop doesn't use it, plus it obviously has privacy implications. It may get re-added as opt-in in future, so we're not sailing entirely blind on how folks use the app, or we may switch to Piwik etc instead.
2017-02-10 17:21:02 +00:00
David Baker
7850f7e505
Fix badge spam: attempt 2 ( #3073 )
2017-01-26 12:58:29 +00:00
Richard van der Hoff
f29e0bfe6d
Revert "Merge pull request #3067 from vector-im/matthew/fix-badge-spam"
...
This reverts commit f9db7f017d
, reversing
changes made to 71b149de76
.
This caused `number is not defined`
2017-01-26 12:16:44 +00:00
Matthew Hodgson
9797c2fb4b
fix electron too
2017-01-26 00:31:52 +01:00
Matthew Hodgson
972a391296
only recalculate favicon if it changes
2017-01-26 00:28:22 +01:00
Kegan Dougal
0a9f02abcc
Glue the dialog to rageshake: honour sendLogs flag.
2017-01-25 16:51:26 +00:00
Kegsay
80c1ec0502
Merge pull request #3000 from vector-im/kegan/rageshake
...
Implement bug reporting logic
2017-01-25 10:34:05 +00:00
Kegan Dougal
eaff0abfb0
Add link to Chrome issue status for fixing line numbers
2017-01-25 10:28:13 +00:00
Kegan Dougal
e225d3e370
Preserve ordering of flush()es by not letting subsequent flush()es race
2017-01-24 17:05:01 +00:00
Kegan Dougal
6f3b70dbb0
Use Q promises and isPending to make logic simpler
2017-01-24 12:43:18 +00:00
Kegan Dougal
f3df86872b
Fix tightlooping when flush()ing without any logs
...
The promise would resolve immediately, nulling out `flushPromise`. This would
then immediately be set from `new Promise((resolve, reject) => {...})` turning
it back into non-null `flushPromise`. The resolve handler was called so the
next `flush()` would see "oh yes, there is a non-null `flushPromise`" then
promptly try to set `flushAgainPromise` which chains off the resolved
`flushPromise` which relied on `flushPromise` being `null`ed out after
`resolve()`, causing the chained `flush()` to see "oh yes, there is a non-null
`flushPromise`" which... ad infinitum.
This PR fixes it by making the nulling out asynchronous but the fact it took
me this long to debug this issue indicates to me that this is a terrible piece
of code. Will re-write.
2017-01-23 17:37:57 +00:00
Kegan Dougal
2ecf65f057
Keep the logs if no store exists
2017-01-23 09:28:48 +00:00
Kegan Dougal
ea063ab8b0
Address race conditions when flushing logs
2017-01-20 14:46:19 +00:00
Kegan Dougal
378126e746
Add another store to keep last modified times
...
This makes it easier to get a list of all the log IDs. It also makes it possible
to order the logs by the *LAST* log line and not the first as was the case
previously, which is important in the case of long-running tabs.
2017-01-20 14:00:30 +00:00
Kegan Dougal
41c6294be2
Remove clearAll from consume(): we want duplicate logs on multiple reports
2017-01-20 13:02:57 +00:00
Kegan Dougal
ba1e166ac8
Line length 80 like we're still in the 80s
2017-01-20 12:02:48 +00:00
Kegan Dougal
ea860807c4
Add a monkeyPatch function rather than monkey-patching in the constructor
2017-01-20 11:56:11 +00:00
Kegan Dougal
53a16158c7
Remove logs when submitting bug reports
2017-01-19 17:41:08 +00:00
Kegan Dougal
beba4d2ae3
Add version and user agent to bug report
2017-01-19 17:40:21 +00:00
Kegan Dougal
3996d23b19
Inject bug report endpoint URL from config.json
2017-01-19 16:49:25 +00:00
Kegan Dougal
bf887e82fe
Swap to async/await rather than promise chains
...
Since we do in fact support coroutines!
2017-01-19 16:40:54 +00:00
Kegan Dougal
81d437ac1e
POST reports to localhost for now. Also send live console logs
2017-01-19 15:47:55 +00:00
Richard van der Hoff
61c5253dbf
Give the 'Light' theme link a title too
...
... mostly to make it appear on the Firefox style menu.
2017-01-19 15:41:58 +00:00
Kegan Dougal
608c1b0208
Finish implementing consume()
...
- Fetches all logs in order and concatenates correctly.
- Purges old logs correctly.
2017-01-19 15:03:47 +00:00
David Baker
bee4ca2b28
Fixes to electron desktop notifs
...
Merge the notification part of https://github.com/vector-im/riot-web/pull/2960
* Show and focus the window when the notification is clicked,
rather than just restoring it.
* Implement requestNotificationPermission and return a resolved
promise (although in practice it should never be called)
2017-01-19 13:25:56 +00:00
Kegan Dougal
89d514a532
Query IndexedDB for all results with index=0
2017-01-19 12:02:19 +00:00
Kegan Dougal
811086ac8e
Comment how we should consume logs
2017-01-18 17:18:02 +00:00
Kegan Dougal
5828ab1077
Generate unique IDs for each JS runtime to accomodate multiple tabs
2017-01-18 16:27:11 +00:00
Matthew Hodgson
acb85b7b72
f1x0r CSS comment
2017-01-18 16:06:02 +00:00
Kegan Dougal
e9884768f6
Persist console logs to an IndexedDB instance
2017-01-18 16:00:13 +00:00
Matthew Hodgson
708fd640f7
unbreak switching after vdh's webpack changes
2017-01-18 14:06:20 +00:00
Matthew Hodgson
6c88201e23
use ye olde rel='alternate stylesheets' for theming
2017-01-17 19:14:16 +00:00
Matthew Hodgson
8b38a326cb
merge package.json
2017-01-16 00:20:18 +00:00
David Baker
c5459a2f19
Enable screen sharing easter-egg in desktop app
2017-01-10 18:39:21 +00:00
Matthew Hodgson
691fe611d6
experimental postcss
2017-01-10 11:06:09 +00:00
Matthew Hodgson
c6beaa1631
initial stab at an official dark theme via the magic of SASS.
...
SVGs are all broken, and some of the more exotic colours haven't been updated. There's been no attempt to use SASS to remove duplication from the CSS yet.
no attempt to switch it at runtime yet.
2016-12-28 04:06:10 +00:00
Matthew Hodgson
bacb284415
basic jig for SASS-based themed CSS (one bundle per theme)
2016-12-28 02:01:28 +00:00
Matthew Hodgson
9a861f46d0
make electron send email validation URLs with a nextlink of riot.im rather than file:///
2016-12-24 03:18:12 +00:00
Richard van der Hoff
8be72e6c27
Configure olm memory size
...
16M is somewhat excessive: configure olm to use a bit less.
Requires changes to the olm library to do anything useful, but will be harmless
without them.
Partial fix to vector-im/riot-web#2726 .
2016-12-14 11:59:37 +00:00
Hubert Chathi
ad79f67ab6
Add missing brackets to call to toUpperCase
2016-12-06 22:36:42 -05:00
David Baker
5fa0f62ccc
Fix clicking on notifications
...
* Dismiss the notification when it's clicked
* Accept the room object: we need it to view_room
* Desktop app: Un-minimise when notification clicked
* Desktop App: Set App User Model ID so notifications work on
Windows 8!
2016-12-06 13:28:59 +00:00
David Baker
c786980454
Move getDefaultDeviceName into the Platforms
...
So we can have a sensible device name on Electron
2016-11-24 16:46:15 +00:00
Richard van der Hoff
8b0390f354
Fix a race which took us to the directory on load sometimes ( #2602 )
...
Sometimes window.onload would run before loadApp had finished (specifically, if
the browser had to wait for config.json to load). Avoid the race by moving all
of the onload logic into loadApp.
2016-11-18 17:32:01 +00:00
Richard van der Hoff
646608bf8b
Add a cachebuster to /version
2016-11-17 17:31:31 +00:00
David Baker
8d46077ac2
Support for get_app_version
2016-11-08 10:47:01 +00:00
David Baker
9a00ec128c
many semicolons
2016-11-04 10:46:51 +00:00
David Baker
ed9c29d365
Use require so we can import conditionally
2016-11-03 15:45:12 +00:00
David Baker
6869c679ef
Merge remote-tracking branch 'origin/develop' into dbkr/electron_3
2016-11-03 14:58:12 +00:00
David Baker
cfe63fa274
Better support no-config when loading from file
...
We should still error if given a 5xx with an empty body.
2016-11-03 14:43:10 +00:00
David Baker
3601b44429
Fix loading with no config from HTTP
2016-11-03 14:17:23 +00:00
David Baker
fb3ca441ba
Merge remote-tracking branch 'origin/develop' into dbkr/electron_3
2016-11-03 13:32:01 +00:00
David Baker
f1b72dfa09
Fix copyright
2016-11-03 11:51:41 +00:00
David Baker
4d0b492ba0
Merge remote-tracking branch 'origin/develop' into dbkr/platform_version
2016-11-03 11:51:23 +00:00
David Baker
3bcb447e03
Fix copyright
2016-11-03 11:48:49 +00:00
David Baker
275a55266b
Merge remote-tracking branch 'origin/develop' into dbkr/electron_3
2016-11-02 19:46:02 +00:00
David Baker
18504ca14e
Merge pull request #2533 from vector-im/dbkr/platform_notification
...
Add Notification support to the Web Platform
2016-11-02 19:43:17 +00:00
David Baker
6aba9f8eda
Don't always claim we have notif support
...
Only if the browser has the Notification API
2016-11-02 19:26:07 +00:00
David Baker
caa3cb7d89
Electron support
...
From https://github.com/vector-im/vector-web/pull/2511 but with
just the actual electron changes
2016-11-02 18:49:28 +00:00
David Baker
19238b9326
Use the defaults if given a blank config file
...
This allows Vector to load from file:// URIs without breaking if
there is no config file (because we explicitly look for 404s, and
file:// URIs don't return 404s).
2016-11-02 17:57:27 +00:00
David Baker
17bb47676e
Make VectorBasePlatform
...
For template methods that are only used from within vector (ie. new version
support)
2016-11-02 17:45:35 +00:00
David Baker
757604fd60
Add Notification support to the Web Platform
...
Except display notification which was already accidentally included in a
previous PR
2016-11-02 17:36:48 +00:00
David Baker
64fdb290eb
Move 'new version' support into Platform
2016-11-02 16:02:55 +00:00