Commit graph

116 commits

Author SHA1 Message Date
schlagmichdoch
f4a947527d Move service worker digestion into separate class and add static function to check if it is supported by the browser. Change ram-exceed-ios waring accordingly. 2024-02-17 12:26:21 +01:00
schlagmichdoch
90f10910aa Fix _fileReceived getting called twice 2024-02-15 18:02:23 +01:00
schlagmichdoch
aacf24c31f Fix reconnecting by always accepting new ice candidates 2024-02-15 18:02:23 +01:00
schlagmichdoch
42bd71a3dc Add error status and check if too many bytes are received 2024-02-15 18:02:23 +01:00
schlagmichdoch
a98499ea5a Move header comparison to _onTransferHeader function as there is no benefit in doing it after file is received 2024-02-15 18:02:23 +01:00
schlagmichdoch
7c471910ef Tidy up Peer classes 2024-02-15 18:02:15 +01:00
schlagmichdoch
da558ddceb Move beforeunload event to Peer class to include it to the WSPeer; Add reset method to Peer class to prevent returning the "unfinished-transfers" warning when closing the page after a peer has left during transfer 2024-02-15 15:18:25 +01:00
schlagmichdoch
65936a4d7d Truncate file used by the sw-file-digester.js after processing 2024-02-15 15:18:25 +01:00
schlagmichdoch
902b5c6b8f Refactor file transfer 2024-02-09 04:11:36 +01:00
schlagmichdoch
d8908e01ea Add alert for iOS when receiving big files using a private tab 2024-02-09 04:11:36 +01:00
schlagmichdoch
2d2cfec5f0 Add missing checks for transfer states 2024-02-09 04:11:36 +01:00
schlagmichdoch
40a12b5501 Fix progress animation 2024-02-09 04:11:36 +01:00
schlagmichdoch
5ee8bb871e Move file creation to serviceworker to prevent loading everything into RAM 2024-02-09 04:11:36 +01:00
schlagmichdoch
1d62a9ff49 Add state management to network peers 2024-02-09 01:55:37 +01:00
schlagmichdoch
7af51bbd5f Tidy up chunker code 2024-02-09 01:55:37 +01:00
schlagmichdoch
88739107e4 Remove limit for sending to iOS devices (fixes #211) 2024-02-09 01:55:37 +01:00
schlagmichdoch
6de97e7ff1 Put all log prompts into new Logger class; Only log debugging logs to console if PairDrop is in debug mode; Implement activation of debug mode via URL argument (?debug=true) 2024-02-09 01:55:37 +01:00
schlagmichdoch
b61de4eb87 send transfer abortion in some cases; Clarify variable names 2024-02-09 01:55:37 +01:00
schlagmichdoch
cfe5b4afda Prevent full datachannel buffer on file end 2024-02-09 01:55:37 +01:00
schlagmichdoch
91fc2b7bf5 Add speed log to browser console 2024-02-09 01:55:37 +01:00
schlagmichdoch
a5dc8b6da2 Split transfer into message and data transfer and rewrite FileChunkerLogic completely. Condense all Relaying of the Websocket Fallback into one message type 'ws-relay' 2024-02-05 21:08:06 +01:00
schlagmichdoch
d81c03a560 Prefill room secrets entry with displayName given by server to prevent displayName undefined in EditPairedDevices Dialog (fixes #221) 2024-02-05 02:16:25 +01:00
schlagmichdoch
f22abca783 Implement new status 'connecting', automatic reconnect on disconnect and auto resume of transfer + sending of queued messages. (fixes #260 and #247) 2024-02-05 02:16:17 +01:00
schlagmichdoch
86d1aa3560 Implement thumbnail creation for heic images 2023-12-11 19:00:14 +01:00
schlagmichdoch
da8178d72e !fixup this if working 2023-12-08 13:57:12 +01:00
schlagmichdoch
0c2da78ed2 Refactor "paste mode" to "share mode"; Introduce a small clipboard panel instead of changing the xNoPeer instructions. This also enables the use of the header btns while sharing; Add possibility to change shared text before sending via a dialog; Add a setting that specifies whether that dialog should always be opened when sharing text 2023-12-08 03:48:43 +01:00
schlagmichdoch
99332037bf Defer loading of all render-blocking resources until the UI has loaded 2023-11-09 04:45:46 +01:00
schlagmichdoch
778d49e84b prevent config from being cached but preserve offline capability 2023-11-09 01:02:54 +01:00
schlagmichdoch
cf55117a61 tidy up code and conform use of setAttribute/removeAttribute 2023-11-09 01:02:14 +01:00
schlagmichdoch
3439e7f6d4 Decrease redundancy by changing the way the websocket fallback is included; Adding new env var SIGNALING_SERVER to host client files but use another server for signaling. 2023-11-09 01:02:03 +01:00
schlagmichdoch
d9270a5560 Try to beautify code by adding line breaks 2023-11-09 00:59:55 +01:00
schlagmichdoch
d388f7e3cd Partly replace _ => with () => globally to conform with Googles JavaScript style guide if no parameters are expected in arrow functions 2023-11-02 02:57:20 +01:00
schlagmichdoch
d84c7d1f84 Tidy up Javascript files 2023-11-01 21:56:25 +01:00
schlagmichdoch
cb8d6448f5 Delay loading of saved displayName until after the websocket is open to display "Loading…" until then 2023-11-01 21:56:25 +01:00
schlagmichdoch
2131307fc6 Fix offline capability: Cache first -> fetch from network second. From now on, updates are only possible by increasing cacheVersion 2023-10-13 18:46:22 +02:00
schlagmichdoch
684fe7142d Make "Connecting..." toast persistent until connection is established 2023-10-12 03:42:48 +02:00
schlagmichdoch
3c1ef57740 prevent Cumulative Layout Shift by fading in elements after initial translation is loaded 2023-10-06 02:57:46 +02:00
schlagmichdoch
8d2584fa69 implement temporary public rooms, tidy up index.js, rework UI dialogs and change colors slightly 2023-09-14 15:44:28 +02:00
schlagmichdoch
f50d7438b6 implement localization 2023-07-06 21:34:21 +02:00
fm-sys
58b7f6bb7c
Add 'files-sent' event 2023-05-26 09:52:17 +02:00
schlagmichdoch
347f9b87c0 fix check whether peer is same browser 2023-05-12 01:16:37 +02:00
schlagmichdoch
2a837eb195 add 'visbilitychange' event support for older browsers 2023-05-10 21:59:45 +02:00
schlagmichdoch
8d640be3a2 increase roomSecret length to 264 chars and implement roomSecret regeneration functionality 2023-05-10 21:59:45 +02:00
schlagmichdoch
241ea4f988 implement auto_accept (#91) and manual unpairing via new Edit Paired Devices Dialog and a BrowserTabsConnector 2023-05-10 21:59:43 +02:00
schlagmichdoch
17abc91c86 rename function and add event to achieve compatibility with snapdrop-android app 2023-03-14 15:12:23 +01:00
schlagmichdoch
4e0fb89720 replace javascript operators ?? and ?. to support older browsers (see #79) 2023-03-13 14:21:26 +01:00
schlagmichdoch
1093f4d246 log error onicecandidateerror 2023-03-10 22:21:19 +01:00
schlagmichdoch
660e523263 prevent sending of displayName if RTCPeer is not connected 2023-03-06 15:33:22 +01:00
schlagmichdoch
954e9c7c3a
Merge pull request #65 from schlagmichdoch/pairdrop_cli_add_firefox_fallback
pairdrop-cli: add fallback if navigator.clipboard.readText() is not available
2023-03-06 12:25:54 +01:00
schlagmichdoch
36e152dc7c add { once: true } to deactivate-paste-mode event listener 2023-03-06 11:59:56 +01:00