Commit Graph
100 Commits
Author SHA1 Message Date
Max Goodhart 8315ab9bf0 Forcibly disconnect on ping timeout 2026-01-31 18:04:50 -08:00
Max Goodhart a01ed7c6b4 Upgrade tsx
Seems to fix ERR_INTERNAL_ASSERTION in my dev docker.
2026-01-31 17:52:29 -08:00
Max Goodhart a881634b85 Control: disconnect streamwall socket on ping timeout
This can hopefully address a hung websocket preventing Streamwall from
reconnecting.
2026-01-31 17:37:03 -08:00
Max Goodhart 16f37cb5c2 Force document visibility state (seems to help Twitch) 2026-01-31 00:02:08 -08:00
Max Goodhart 029d80002c Wait indefinitely for media reacquire 2026-01-26 22:07:49 -08:00
Max Goodhart 1978bda59f Desaturate videos when loading 2026-01-26 00:35:35 -08:00
Max Goodhart d2636f756a Smoother loading spinner show/hide, fix pause when shown during stalls 2026-01-26 00:29:44 -08:00
Max Goodhart c2aa59ef00 Display spinner when media re-acquiring 2026-01-26 00:29:30 -08:00
Max Goodhart 3759273a16 Prevent grid info from blocking drag 2026-01-25 23:57:34 -08:00
Max Goodhart ef3cd886ef Periodically snapshot video to hold frame if video lost 2026-01-25 23:57:32 -08:00
Max Goodhart ce1d8e6713 Wait longer for media reacquire 2026-01-25 23:57:08 -08:00
Max Goodhart 9a2a7c45e7 Improve readability of main stream info when grid hovered 2026-01-25 21:52:39 -08:00
Max Goodhart a48ede7e9c Orientation icons in grid labels 2026-01-25 21:39:07 -08:00
Max Goodhart 3729a522fe Only remove old media if a different media element appears 2026-01-24 18:32:32 -08:00
Max Goodhart 74de18aa28 Re-acquire video element when current one empties 2026-01-24 18:24:22 -08:00
Max Goodhart e6467bdd54 Add smaller location labels to overlay 2026-01-24 16:29:45 -08:00
Max Goodhart 6bca751f54 Add city/state to control grid blocks 2026-01-24 15:43:59 -08:00
Max Goodhart baef3eefbe Sort by added date in descending order 2026-01-24 15:29:15 -08:00
Max Goodhart 66c0c0406b Sort streams by added date 2026-01-24 15:20:50 -08:00
Max Goodhart 8fd9ca1c1d Show stream orientation in control list 2026-01-24 15:20:50 -08:00
Max Goodhart 92499848cd Fix overlay under content view when existing view repositioned 2026-01-24 15:20:50 -08:00
Max Goodhart c0f9936d6b Reimplement offscreen window for more reliable WebContentsView visibility on load 2026-01-24 15:20:50 -08:00
Max Goodhart b9a97114a5 Display city and state in stream list 2026-01-24 14:40:28 -08:00
Max Goodhart f22f04b3d6 Fix x/y (in screen space) being used for view bounds (in window space) 2025-07-04 18:11:00 -07:00
Max Goodhart cc8baead06 Fix desyncs when multiple clients connected 2025-06-23 01:31:06 -07:00
Max Goodhart 1031f6f8f8 Allow creating admin invites 2025-06-23 00:11:43 -07:00
Max Goodhart 53a9804365 Split gridCount into independent rows and cols configs 2025-06-22 23:57:56 -07:00
Max Goodhart 2dddb8f8e8 Fix argument parsing not finding args 2025-06-22 23:56:56 -07:00
Max Goodhart 4049e1bf78 Switch scripts to more idiomatic names 2025-06-19 16:45:30 -07:00
Max Goodhart 3e17e13740 Only consider connected once state received 2025-06-17 01:24:42 +00:00
Max Goodhart e46b23f59b Reset state on connection lost 2025-06-17 01:24:07 +00:00
Max Goodhart 6e50df1972 Add version footer 2025-06-17 01:21:29 +00:00
Max Goodhart a36a07d177 Persist local stream data 2025-06-17 01:21:22 +00:00
Max Goodhart fc42a69b62 Add version overlay 2025-06-17 00:07:59 +00:00
Max Goodhart 2d93cc6f09 Prevent scrollbars in background/overlay iframes 2025-06-17 00:07:51 +00:00
Max Goodhart 373d3fba59 Add stream list filter 2025-06-15 04:26:36 +00:00
Max Goodhart 9eb315c53c Add separate viewing section to stream list 2025-06-15 04:16:06 +00:00
Max Goodhart a0083ae093 Share token link generation 2025-06-15 03:56:10 +00:00
Max Goodhart d8fe12ceb9 Add Kick and X icons 2025-06-15 03:29:44 +00:00
Max Goodhart a1d1052054 Explicitly close webContents on removal 2025-06-14 23:09:42 -04:00
Max Goodhart 8dcc1f55ac Add reload button to dev button set 2025-06-15 02:19:41 +00:00
Max Goodhart 860bcc8d6a Simplify view loading (hopefully more consistent page visibility) 2025-06-15 01:47:16 +00:00
Max Goodhart 7100451f49 Remove spammy log 2025-06-14 23:16:15 +00:00
Max Goodhart 213325c543 Add error handling to page visibility hack
Seems to sometimes be failing with "Current display surface not
available for capture".
2025-06-14 23:02:09 +00:00
Max Goodhart c0afcf1de3 Fix invite links in frontend 2025-06-14 21:26:39 +00:00
Max Goodhart 44932d0226 Include auth state in initial state 2025-06-14 20:44:57 +00:00
Max Goodhart 53c96742c0 Include auth state 2025-06-14 20:43:48 +00:00
Max Goodhart 42a5360654 Add classnames 2025-06-14 20:14:24 +00:00
Max Goodhart 601aa734db Move stream list to sidebar 2025-06-14 20:12:41 +00:00
Max Goodhart a617074c2e Fix city/state labels not showing 2025-06-14 20:08:07 +00:00
Max Goodhart ca4f14d21c Add missing file 2025-06-14 19:55:25 +00:00
Max Goodhart 592f547607 Add missing space in stream list 2025-06-14 19:33:48 +00:00
Max Goodhart 3db3716101 Persist wall assignments across restarts 2025-06-14 19:14:36 +00:00
Max Goodhart 1cea41bded Force stream webContents to be visible 2025-06-14 18:41:41 +00:00
Max Goodhart fa3ed4c4e8 Fix crash on opening browse when devtools open 2025-06-14 17:54:51 +00:00
Max Goodhart d63a5089de Add back TwitchBot 2025-06-14 16:06:25 +00:00
Max Goodhart af3a61f8e5 Add host/port override to control server 2025-06-14 15:27:38 +00:00
Max Goodhart 9ded048667 Implement standalone control server 2025-06-14 02:48:46 -04:00
Max Goodhart ec6b7bd360 Fix module file loading on Windows
This was causing output files to have the extension .es, which was
breaking loading in Windows (loading off the filesystem gave mime type
text/plain, which is forbidden by the renderer for script type=module)
2025-02-22 17:41:46 -08:00
Max Goodhart a979cb926a Update package-lock.json version 2025-02-22 17:03:06 -08:00
Max Goodhart b89326be6b Disable asar integrity checks 2025-02-22 16:50:43 -08:00
Max Goodhart d19f8a3f5e Update version to 2.0.0-pre1 2025-02-22 16:50:42 -08:00
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