Commit Graph
487 Commits
Author SHA1 Message Date
Christopher Serr e1144a8ea4 Store the splits as a byte array
From now on we never serialize the splits to a string and instead
directly slice the WebAssembly memory and directly export, upload, and
save the splits from there.

Additionally this does another optimization where livesplit-core now
provides a way to directly query the length of the returned buffer
instead of having to manually search of the nul-terminator.
2020-03-12 21:39:50 -05:00
wooferzfg a0b7b40033 Save and load with localforage 2020-03-12 21:38:57 -05:00
wooferzfg de0e5425bd Install localforage 2020-03-12 21:38:57 -05:00
Christopher Serr 991cfb3f7c Merge pull request #284 from CryZe/gamepad
Implement Gamepad Support
2020-03-09 19:35:33 +01:00
Christopher Serr 5be90dbf38 Merge pull request #283 from wooferzfg/fix-sidebar-spacing
Fix sidebar spacing
2020-03-09 19:28:57 +01:00
wooferzfg fdd65e926a Fix sidebar spacing 2020-03-08 17:21:47 -05:00
Christopher Serr cba0c27374 Resize based on length instead 2020-03-08 03:36:16 +01:00
Christopher Serr 5949aeaa9c Implement Gamepad Support
This implements gamepad support for the hotkeys. This allows controlling
LiveSplit One without having to focus the browser tab. There seem to be
some unfortunate limitations though. Chrome for example acquires
exclusive access to the gamepads (at least on Windows with DirectInput).
Firefox however doesn't, so you likely would want to use Firefox if
Chrome is causing problems with your controller.
2020-03-08 03:15:08 +01:00
wooferzfg 3f03d715f7 Revert "Treat test failures as warnings"
This reverts commit b433ade359.
2020-03-02 21:49:31 -06:00
wooferzfg 9f15bda7e2 Fix rendering test hashes 2020-03-02 21:41:34 -06:00
wooferzfg a641703f5d Merge pull request #273 from CryZe/abbreviations
Implement Support for Abbreviations
2020-03-02 21:26:39 -06:00
wooferzfg 53f2f765e6 Wait for the server to start before trying to load the page 2020-03-02 21:17:40 -06:00
wooferzfg 3abb897eec Reduce rendering test timeouts 2020-03-02 21:17:40 -06:00
Christopher Serr 0e2a5a29f0 Use .abbreviated instead of div in SCSS
It's just a slight cosmetic fix that makes it more accurate.
2020-03-02 22:22:27 +01:00
Christopher Serr 5bb9f2490b Don't set game or category for default run
We show `Untitled` now for untitled runs, so we don't need to set
anything anymore for it to look decent. And those default values would
need to be deleted by the user in the run editor anyway, so it's better
not to set anything.
2020-03-02 22:22:27 +01:00
Christopher Serr 772639f4b7 Implement Abbreviations for the Title Component
This requires some additional support in livesplit-core.
2020-03-02 22:22:15 +01:00
Christopher Serr 833de34510 Use the Browser's ResizeObserver if it exists
Instead of always using the ResizeObserver of the library, we instead
polyfill the browser's one if it doesn't exist and use that then. On an
up to date browser this removes the unnecessary polling that happens in
the library's implementation.
2020-03-02 00:31:33 +01:00
Christopher Serr a87921ee2b Merge pull request #278 from wooferzfg/fix-markdown-format
Fix header line height in markdown
2020-03-01 23:20:21 +01:00
wooferzfg ef057a3c5b Fix header line height in markdown 2020-03-01 16:11:13 -06:00
Christopher Serr e77c298007 Implement Support for Abbreviations
This implements abbreviations. For the longest time we thought it's not
possible to implement them in the web, but it turns out that it can
work.

This implements support for the key value pair components so far.
Abbreviations are still missing for the Title component. This will need
some additional support from livesplit-core.
2020-02-29 13:20:12 +01:00
Christopher Serr 5a5df3a1a6 Merge pull request #274 from wooferzfg/about
Create an About dialog
2020-02-29 11:32:54 +01:00
wooferzfg 577b111971 Add an About page 2020-02-28 19:18:37 -06:00
wooferzfg 291d63c574 Inject contributors list commit hash, and date at compile time 2020-02-27 23:16:40 -06:00
Christopher Serr 207c3ef5b7 Merge pull request #269 from wooferzfg/mobile-layout
Improve UI consistency and mobile layout
2020-02-25 19:39:17 +01:00
wooferzfg 4b2f0dffc2 Introduce different margins for separation vs. grouping 2020-02-24 19:34:03 -06:00
Christopher Serr e9254fe291 Reduce the main content margin to 25px 2020-02-25 00:50:51 +01:00
Christopher Serr cd6e525c7d Increase the size of the control buttons 2020-02-25 00:50:30 +01:00
wooferzfg 74df322364 Add mobile support to the Splits Editor 2020-02-23 23:53:24 -06:00
wooferzfg a888082037 Add mobile support to the Layout Editor 2020-02-23 23:28:37 -06:00
wooferzfg d06ffc23c1 Add mobile support to the Settings Editor 2020-02-23 23:28:37 -06:00
wooferzfg 97e2abcabc Consolidate margins and mobile logic 2020-02-23 23:28:34 -06:00
wooferzfg 5e7d7e3a63 Fix requestAnimationFrame not being cleaned up 2020-02-23 15:35:32 -06:00
Christopher Serr e78f4a5b5a Merge pull request #271 from wooferzfg/fix-title-alignment
Fix size of game icon to match the two row split icon size
2020-02-23 22:32:30 +01:00
wooferzfg 2194f4b603 Fix size of game icon to match the two row split icon size 2020-02-23 15:24:46 -06:00
wooferzfg eb5dfd71da Fix DragAutoRefreshLayout class name 2020-02-23 14:08:03 -06:00
Christopher Serr 01bc7d58d8 Merge pull request #169 from DarkRTA/patch-2
Prefer requestAnimationFrame over setInterval
2020-02-23 20:52:21 +01:00
wooferzfg ef56d5b65d Lock fps to 30 2020-02-23 12:33:12 -06:00
wooferzfg 3f31b50ca9 Extract shared logic for auto refreshing 2020-02-23 12:32:27 -06:00
Dark 7edcc735ee Prefer requestAnimationFrame over setInterval
`requestAnimationFrame` is preferred over `setInterval` for drawing
frames as it allows the browser itself to make decisions on when to draw
the layout. Unfortunately, we are no longer capped at 30fps which will
result in higher CPU usage, but I feel the tradeoff is acceptable here
as the browser will throttle itself if needed.

On the plus side however, input latency will be lower overall and
frametimes will be more consistent.
2020-02-23 11:44:30 -06:00
Christopher Serr c0e9b61578 Merge pull request #268 from wooferzfg/improve-regression-testing
Improve regression testing
2020-02-22 21:18:44 +01:00
wooferzfg b433ade359 Treat test failures as warnings 2020-02-22 13:41:25 -06:00
wooferzfg 7257be67e7 Add a matcher for test failures 2020-02-22 13:23:19 -06:00
wooferzfg 8e8528cfb3 Increase the size of the hash to 24 2020-02-22 13:13:10 -06:00
Christopher Serr b2b404ff96 Merge pull request #267 from wooferzfg/fix-audit
Fix issues with the Chrome Dev Tools Audit
2020-02-22 19:22:03 +01:00
Christopher Serr d6e4d16d21 Merge pull request #266 from wooferzfg/remove-roboto
Remove the Roboto font
2020-02-22 19:20:37 +01:00
wooferzfg 27f6924d1f Remove the Roboto font 2020-02-22 11:30:42 -06:00
wooferzfg 368dafd91c Fix issues with the Chrome Dev Tools Audit 2020-02-22 11:25:50 -06:00
Christopher Serr 62f52cb248 Merge pull request #255 from wooferzfg/regression-testing
Implement visual regression testing
2020-02-22 14:04:29 +01:00
wooferzfg 3ad9d7d76a Fix timer styling 2020-02-21 23:09:08 -06:00
wooferzfg 4231cb59c2 Update actions to run tests 2020-02-21 23:09:08 -06:00