Commit Graph
100 Commits
Author SHA1 Message Date
Max Goodhart 3485ad2df8 Fix built HTML paths 2025-02-22 16:19:35 -08:00
Max Goodhart 39ccdb3e20 Fix CI token secret name 2025-02-22 16:07:21 -08:00
Max Goodhart 771384cfc5 Add executableName to packager config 2025-02-22 16:04:37 -08:00
Max Goodhart 76d12f363b Fix rollup HTML paths 2025-02-22 16:00:55 -08:00
Max Goodhart bfda127019 Add repository field to package.json 2025-02-22 16:00:53 -08:00
Max Goodhart 73f57d22e0 Fix publish action npm workspace 2025-02-22 15:54:33 -08:00
Max Goodhart a76abc39ee Initial v2 overhaul 2025-02-22 15:49:36 -08:00
Max Goodhart d9688a7bff Update node version used for tests 2023-04-14 22:29:37 -07:00
Max Goodhart a581ba2c6f Quick and dirty mass dependency update 2023-04-14 22:22:37 -07:00
Max Goodhart 5c10e7fc82 Add TikTok icon 2022-06-24 23:22:34 -07:00
Max Goodhart 9de3ffd1e2 Add playHLS files 2022-06-05 15:35:23 -07:00
Max Goodhart fd75dba562 Add support for playing HLS m3u8/m3u URLs 2022-06-05 14:19:53 -07:00
Max Goodhart bd1dc48574 Display streamdelay stream duration 2022-06-05 14:19:25 -07:00
Max Goodhart e7bd4a674c Update electron to fix Let's Encrypt cert validation 2021-11-19 12:35:11 -08:00
Max Goodhart 13fe2a0dac Fix start-local settings to match README 2021-05-04 22:08:27 -07:00
Max Goodhart e961bc21b7 Add handling for insta's tap to play interstitial 2021-03-06 21:32:44 -08:00
Max Goodhart 441897ad3e Remove default stream list endpoint 2020-12-19 22:54:25 -08:00
Max Goodhart dbe63c6aef Fix streams starting out with audio muted 2020-11-13 18:48:00 -08:00
Max Goodhart 68c16f3d50 Fix overlay crash on undefined stream data 2020-11-13 18:45:16 -08:00
Max Goodhart 524bcb5ed1 Fix overflow of overlay labels 2020-11-13 01:38:45 -08:00
Max Goodhart cc74cf6518 Add labelPosition parameter to control overlay label corner 2020-11-13 00:19:06 -08:00
Max Goodhart db00bb2fe6 Update role names in control page checks 2020-11-12 01:24:45 -08:00
Max Goodhart ff4be9080b Fix action names for operator role 2020-11-12 01:19:47 -08:00
Max Goodhart e10507780e Don't remove view from onscreen window when reloading
I'm observing that when a BrowserView is removed from the main window
and added to the offscreenView, it loses visibility state and RAFs no
longer execute. This prevents the subsequent video load from succeeding
on some sites like Twitch. As a workaround, we'll no longer offscreen the
view when reloading. This means the view may linger onscreen for a
moment, and potentially if there are issues loading there might be
glitches onscreen. I'd like to find a better solution for moving the
view offscreen in the future and keeping it rendering.

If this causes disruptive glitches, we could either:

- Remove and recreate the view on reload (wasteful, ensures clean
starts)

- Size the view down to 1x1 pixels so it is barely visible (could this
interfere with responsive designs?)
2020-11-12 01:05:14 -08:00
Max Goodhart a25d2211cd Update view cleanup code (destroy method was removed from electron) 2020-11-12 00:24:24 -08:00
Max Goodhart d890c6750e Bump to Electron 11 beta
Electron 10 (and 9?) had glitchy behavior where some BrowserViews would
stop painting when the overlay view was removed and re-added.
2020-11-12 00:23:19 -08:00
Max Goodhart 17f2d80282 Time out videos taking too long to start 2020-11-12 00:13:33 -08:00
Max Goodhart 6312081477 Ensure offscreen window sized to full stream dimensions 2020-11-12 00:06:55 -08:00
Max Goodhart 356d84dfc6 Add media preload logging 2020-11-12 00:06:27 -08:00
Max Goodhart 9ba7dc564b Set bounds after adding BrowserView
Otherwise apparently the view won't display.
2020-11-11 23:54:50 -08:00
Max Goodhart c1b9d46fa7 Skip unnecessary view re-positions 2020-11-11 23:39:52 -08:00
Max Goodhart 7f2868e0ae Fix incorrect display options lookup 2020-11-11 23:27:44 -08:00
Max Goodhart a8f01fa3b2 Apply rotation on initial load 2020-11-11 23:12:25 -08:00
Max Goodhart d30fc8e4d7 Clarify comment 2020-11-11 22:58:58 -08:00
Max Goodhart 4648a07e15 Update bounds before adding BrowserView to window 2020-11-11 22:30:52 -08:00
Max Goodhart 6ea529c26f Remove redundant render in offscreen win when positioning 2020-11-11 22:30:05 -08:00
Max Goodhart 8df7dab144 Fix Periscope autoplay by waiting for button to exist 2020-11-11 22:23:57 -08:00
Max Goodhart 07619eaee7 Bump babel electron target ver 2020-11-11 21:54:10 -08:00
Max Goodhart 62ad3a5cbf Resolve FIXME 2020-11-11 21:47:25 -08:00
Max Goodhart 18bdae3b16 Force BrowserView visibility to start visible
This fixes Twitch videos not loading on the offscreen window.
2020-11-11 21:45:40 -08:00
Max Goodhart 531bfa1756 Size offscreen window to match main window
This should hopefully help preload videos with appropriate quality.
2020-11-11 21:44:54 -08:00
Max Goodhart 8dde079bd0 Preload videos with full viewport size
Hopefully this will cause them to load with higher quality settings.
2020-11-11 11:54:48 -08:00
Max Goodhart 1d2d961982 Remove unused / noop offscreen rendering
At one point I think this might have helped make pages treated as
"visible" when added to the window, but it doesn't seem to have any
effect.
2020-11-11 00:00:56 -08:00
Max Goodhart 0a235e7e64 Fix NaN rotation warning 2020-11-10 23:43:42 -08:00
Max Goodhart 222e9bc36f Satisfy worldSafeExecuteJavaScript warning 2020-11-10 23:39:05 -08:00
Max Goodhart 45385608b9 Persist custom stream ids by URL like other streams
This makes it possible to edit a custom stream label in place without
changing the id and causing it to be removed from the wall.
2020-11-10 23:33:24 -08:00
Max Goodhart bfebd88e4c Further simplify custom streams UI to prevent jank
Editing URLs and stream kind after the fact doesn't update properly, and
can lead to janky behavior when the URL duplicates another stream,
because the stream datas get merged together and the row disappears.
Moving to larger more atomic editing operations removes these corner
cases.
2020-11-10 23:22:29 -08:00
Max Goodhart 76329cafdb Bump electron to v10 2020-11-10 23:03:00 -08:00
Max Goodhart 3a85009b46 Whitespace 2020-11-10 23:02:59 -08:00
Max Goodhart c31f25cd6c Fix jankiness when editing custom streams
Switching to a "save on blur/enter" model sidesteps a lot of janky
timing bugs due to delayed server-confirmed updates without requiring
optimistic updates.
2020-11-10 22:21:32 -08:00
Max Goodhart 4f493c6906 Work around bug waiting for Twitch playback start 2020-11-09 17:00:36 -08:00
Max Goodhart f49e52f09d Fix options update for multiple views with same URL 2020-11-09 14:30:43 -08:00
Max Goodhart c219656564 Implement stream rotation, overhaul local data, add preload script
This moves a bunch of the architectural improvements from the 'iframe'
branch in to main in the pursuit of implementing stream rotation driven
by a stream data field.
2020-11-09 12:12:05 -08:00
Max Goodhart f591685a36 Fix exception when clicking grid controls 2020-11-09 01:48:52 -08:00
Max Goodhart 022519d928 Cleanup 2020-11-09 01:48:52 -08:00
Max Goodhart 0ca8c62863 Hide empty stream titles 2020-11-09 01:48:51 -08:00
Max Goodhart 6a539f8384 Make listening view easier to see in control page 2020-11-06 23:24:03 -08:00
Max Goodman d36343a1d7 Make it possible to drag starting on a grid control button 2020-11-06 23:24:03 -08:00
Max Goodhart 978c986862 Improve control page UX for high grid counts
Thanks to mashed_potatoes for originally proposing this design.
2020-11-06 01:24:19 -08:00
Max Goodhart d32e8a0f41 Add experimental Twitch plays functionality 2020-11-05 22:12:54 -08:00
Max Goodhart e77ac9ba3a Remove unused event 2020-11-05 22:12:54 -08:00
Max Goodhart 2cf3e49ef6 Fix name mismatch 2020-11-05 22:12:53 -08:00
Max Goodhart b1a5a3d27b Disable text diffing when calculating state deltas 2020-11-05 00:58:15 -08:00
Max Goodhart 1c2c13dd3f Change default username/password 2020-11-04 23:07:42 -08:00
Max Goodhart eeadb061bb Add (opt-outable) Sentry error tracking telemetry 2020-10-10 16:28:10 -07:00
Max Goodhart 4ee2f3ad2a Stop filtering out offline/unknown streams from list 2020-10-08 23:40:33 -07:00
Max Goodhart 1e25b0622c Sandbox all browser contexts 2020-10-08 22:55:20 -07:00
Max Goodhart 4726954cb2 Remove spurious console.log 2020-09-09 23:33:31 -07:00
Max Goodhart 84e97b9310 Make active highlight color configurable 2020-09-09 23:03:55 -07:00
Max Goodhart e2c5414608 Add UI for streamdelay start/stop functionality 2020-09-06 21:08:49 -07:00
Max Goodhart cc842247a7 Technology is not neutral 2020-09-06 19:50:22 -07:00
Max Goodhart 066dea3112 Prevent views from navigating away from the current page 2020-08-29 22:50:45 -07:00
Max Goodhart 59b002f243 Remove video re-play (likely cause of Fb looping) 2020-08-28 22:24:59 -07:00
Max Goodhart a1878b9f5b Improve display for lower screen heights 2020-08-28 22:16:54 -07:00
Max Goodhart 78a8bed396 Fix appearance of blur button when active 2020-08-28 22:10:20 -07:00
Max Goodhart 4b5e2931eb Add hacky support for playing audio-based pages 2020-08-26 23:52:30 -07:00
Max Goodhart d8e51776e9 Add ability to set stream audio playing in background 2020-08-26 23:52:29 -07:00
Max Goodhart 93a29ecfac Add test GitHub action 2020-08-26 11:29:31 -07:00
Max Goodhart 21bfacd84b Add tests for auth system, refactors for testing 2020-08-26 11:22:20 -07:00
Max Goodhart 6e2db3e1c8 Disable remote module in stream views 2020-08-26 11:22:19 -07:00
Max Goodhart 31516b4a22 Add babel plugin for nullish coalescing operator 2020-08-26 11:22:19 -07:00
Max Goodhart a7b5bb3d1b Persist auth data across restarts 2020-08-26 11:22:19 -07:00
Max Goodhart 5063a95ab7 Add invite links with role based access control 2020-08-26 11:22:18 -07:00
Max Goodhart 6c64d2b417 Merge pull request #43 from chromakode/dependabot/npm_and_yarn/lodash-4.17.19
Bump lodash from 4.17.15 to 4.17.19
2020-08-12 00:17:36 -07:00
Max Goodhart c0a25f77d1 Merge pull request #65 from chromakode/dependabot/npm_and_yarn/elliptic-6.5.3
Bump elliptic from 6.5.2 to 6.5.3
2020-08-12 00:17:09 -07:00
Max Goodhart 0beded8593 Add view swap functionality 2020-08-11 11:02:16 -07:00
Max Goodhart 0d9ebd247c Combine Button/ToggleButton components 2020-08-11 11:02:16 -07:00
Max Goodhart a9585fd7c8 Remove unused parameter 2020-08-11 11:02:16 -07:00
Max Goodhart df3972dfe8 Apply mouseup handler faster in hopes of reducing drag glitches 2020-08-11 11:02:16 -07:00
Max Goodhart 2c0f586eb5 Add crossorigin attribute to script to work around Safari issue
See: https://stackoverflow.com/a/56755581
2020-08-09 22:17:46 -07:00
Max Goodhart 9a35d568c2 Allow overlay/background iframes to make XHRs 2020-07-28 14:20:24 -07:00
Max Goodhart 8a62977758 Allow autoplay in iframes 2020-07-28 13:39:46 -07:00
Max Goodhart afb9d025c4 Filter offline streams when stream kind prop unset 2020-07-27 15:57:33 -07:00
Max Goodhart b70de7eebc Only filter offline videos from stream data 2020-07-27 15:49:16 -07:00
Max Goodhart d20fe7c5d7 Allow any domain to be framed from overlay and background pages 2020-07-27 15:42:48 -07:00
Max Goodhart c9bf2ca2a6 Make stream list scrollable 2020-07-27 14:33:33 -07:00
Max Goodhart cea7210485 Add toggle to display stream debug tools 2020-07-27 14:22:13 -07:00
Max Goodhart bc700abfae Move listening indicator into stream name 2020-07-27 14:11:14 -07:00
Max Goodhart 397d41e26d Display Periscope icon for twitter videos 2020-07-27 14:01:12 -07:00
Max Goodhart 03ab768407 Generalize internal page titles 2020-07-27 11:52:19 -07:00