schlagmichdoch
fdf20cfdd9
save roomSecret and notify user that the pairing is successful only after the corresponding pairPeer has joined.
2023-05-10 21:59:45 +02:00
schlagmichdoch
7606fb398b
Fix: notify user that "Selected peer left." only if dialog is shown.
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
b42c8a0b1a
remove background animation in favor of speed and efficiency
2023-04-20 22:02:00 +02:00
schlagmichdoch
3f72fa1160
remove fade-in from description (LCP) on page load
2023-04-20 21:57:24 +02:00
schlagmichdoch
7827a47d29
increase seo with recommendations from PageSpeed Insights
2023-04-17 15:19:54 +02:00
schlagmichdoch
d50480b2f8
Merge pull request #94 from schlagmichdoch/add_theme_menu
...
Add theme menu to toggle between auto, light and dark mode.
2023-03-29 16:22:42 +02:00
schlagmichdoch
ac1e88b6a0
Add possibility to reset theme to auto
2023-03-29 01:39:45 +02:00
schlagmichdoch
d0b2c81582
Tidy up code
2023-03-28 19:07:33 +02:00
schlagmichdoch
251df2fbff
try to fix share target api
2023-03-28 19:00:05 +02:00
schlagmichdoch
dcc4e8b747
Optimize background animation drastically by using offscreen canvases to reuse frames. Rewrite animate function to prevent it from being called multiple times
2023-03-27 02:17:36 +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
028752a809
fixes #76 . 'File received' dialog not showing on iOS when big videos are sent.
2023-03-13 00:04:48 +01:00
schlagmichdoch
1093f4d246
log error onicecandidateerror
2023-03-10 22:21:19 +01:00
schlagmichdoch
5eeaae01fe
add connection hash to title of display-name of receive dialogs
2023-03-06 15:39:24 +01:00
schlagmichdoch
660e523263
prevent sending of displayName if RTCPeer is not connected
2023-03-06 15:33:22 +01:00
schlagmichdoch
c9dca7e083
fix download notification and add request notification
2023-03-06 15:32:42 +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
c0d504f6a8
remove base64 event listeners manually on hide instead of once: true
2023-03-06 12:20:30 +01:00
schlagmichdoch
36e152dc7c
add { once: true } to deactivate-paste-mode event listener
2023-03-06 11:59:56 +01:00
schlagmichdoch
fdf024f378
pairdrop-cli: add fallback if navigator.clipboard.readText() is not available
2023-03-06 11:56:17 +01:00
schlagmichdoch
9f2e4c5f8f
fix displayName sometimes not exchanged on reload
2023-03-06 11:24:19 +01:00
schlagmichdoch
edf2ab5eb3
revert some changes to regain stability
2023-03-06 03:47:24 +01:00
schlagmichdoch
cc78b34d2e
Revert making peerId ephemeral to prevent duplication of shown peers on reconnect. Implement peerIdHash to prevent rogue users from overtaking peerIds
2023-03-06 00:07:21 +01:00
schlagmichdoch
f34f5bd4b2
tidy up code, add tooltip to device name and change color and bg-color of device-name
2023-03-06 00:07:21 +01:00
schlagmichdoch
b7e7fd1b68
Merge branch 'master' into enable_renaming
2023-03-04 20:52:10 +01:00
schlagmichdoch
77b76a3b8d
reduce reconnect timers to 1s
2023-03-04 15:46:26 +01:00
schlagmichdoch
c0a4224a59
merge master into branch
2023-03-03 18:01:24 +01:00
schlagmichdoch
002b31a113
merge master into branch
2023-03-03 17:40:10 +01:00
schlagmichdoch
bb0493d071
Make user notifications and document titles more concise.
2023-03-03 17:03:10 +01:00
schlagmichdoch
bfb5aa8546
fix overwrite method _onMessage of class RTCPeer
2023-03-03 16:36:55 +01:00
schlagmichdoch
39ca5b2d21
ws-fallback: remove all WSPeers when server connection disconnects + fix onPeerLeft
2023-03-03 13:10:14 +01:00
schlagmichdoch
d6ef5887dd
move logging of rtc message from class Peer class to overwritten method in class RTCPeer
2023-03-03 12:38:34 +01:00
schlagmichdoch
f9f1abef7a
Replace all urls in received messages with links. Center the message if it does not include any whitespace.
2023-03-03 12:28:50 +01:00
schlagmichdoch
d244f5fa47
fix circles position on ios safari are shifted by url bar
2023-03-03 12:03:20 +01:00
schlagmichdoch
3a2d8c75f7
- restructure and unify dialogs to use less space on mobile and be clearer
...
- give user option both options "share" and "download" on mobile
- add fallback if zipper fails that downloads files individually
- fix dequeuing of message queue not possible if sending peer has left
2023-03-03 12:01:43 +01:00
schlagmichdoch
545cdc2459
Fix browser reloading when first message is sent by preventing event default on submit
2023-03-02 16:30:47 +01:00
schlagmichdoch
7220e85422
document/tab title: Show number of received messages and move '- PairDrop' to the end
2023-03-02 15:31:06 +01:00
schlagmichdoch
1eb53498b1
add localStorage fallback to fix renaming on private tabs and fix Firefox inserting linebreaks into edited divs
2023-03-02 15:06:22 +01:00
schlagmichdoch
de76da52fe
merge master into branch
2023-03-01 21:55:50 +01:00
schlagmichdoch
d56ee87437
- Enable renaming of own display name permanently via UI
...
- Make peerId completely ephemeral
- Stabilize RTCConnection by closing connections cleanly
2023-03-01 21:38:36 +01:00
schlagmichdoch
a3b348d9b6
refactor all missing html ids to kebap-case
2023-03-01 21:38:13 +01:00
schlagmichdoch
4566528179
- restructure UI to use flexbox everywhere
...
- structure peers on desktop responsively
- make peer box scrollable when peers are overflowing + shadow
- add highlight badge to differentiate local peers into paired and not paired
- change websocket fallback warning and move to the bottom
2023-03-01 21:38:13 +01:00
schlagmichdoch
7b08973cef
remove safari audio blop "hack" as it should not completely stop music that is playing in the background
2023-03-01 21:38:12 +01:00
schlagmichdoch
66359da2ca
get rtcConfig dynamically from the server
2023-02-24 18:08:48 +01:00
schlagmichdoch
0eb13d9d1b
increase QR-Code size as requested in #43 and fix overflow issues on iOS
2023-02-24 16:08:36 +01:00
schlagmichdoch
40c0735c90
touched UX to make receive dialogs more intuitive. closes #40
2023-02-22 03:01:06 +01:00
schlagmichdoch
8f0e465b8e
pairdrop-cli: change domain via flag, move bash file to separate folder and add console logs to ui.js
2023-02-21 23:44:41 +01:00
schlagmichdoch
0f9bbf9bbb
enable sending from cli by adding bash script
2023-02-20 17:42:02 +01:00
schlagmichdoch
c5d0eaa034
[security] Add security number to PeerUI to make verification of peer-to-peer encryption possible.
2023-02-16 02:19:14 +01:00
schlagmichdoch
16f5711c98
fix beforeunload warning if peer on transfer
2023-02-11 11:49:32 +01:00
schlagmichdoch
b933ef151a
if devices are paired a second time, the old roomSecret is deleted upon saving the new one.
2023-02-11 00:52:37 +01:00
schlagmichdoch
414cc9aa57
if user actively disconnects from PairDrop server, disconnect all peer to peer connections immediately and do not wait for channels to close
2023-02-10 23:47:39 +01:00
schlagmichdoch
1eba7359d1
rolled back some changes to stabilize WebRTC connections
2023-02-10 23:41:04 +01:00
schlagmichdoch
616f6a6799
implement complete WSPeer as fallback if WebRTC is deactivated. Only ever use on self-hosted instances as clients need to trust the server!
2023-02-10 20:22:36 +01:00
schlagmichdoch
b8c78bccfa
try to stabilize connection and prevent remove reconnecting fallback on error
2023-02-10 18:56:13 +01:00
schlagmichdoch
b0e798b3cd
allow multiple message transfers by multiple peers simultaneously by putting them in a queue
2023-02-10 03:26:08 +01:00
schlagmichdoch
671dfa1c87
fix: process stops if image preview or thumbnail creation fails
2023-02-08 14:18:59 +01:00
schlagmichdoch
a0ba46caf4
cope with CAPITALIZED file suffix
2023-02-08 14:18:59 +01:00
schlagmichdoch
d111bbf067
allow multiple file transfer requests by multiple peers simultaneously by putting them in a queue
2023-02-08 14:18:08 +01:00
schlagmichdoch
81d36774b5
prevent word break between "on this network" and "and by paired devices" and fix circle center offset
2023-02-08 05:14:34 +01:00
schlagmichdoch
89d5ae3a02
indicate peer color meaning via underlines
2023-02-08 04:18:53 +01:00
schlagmichdoch
9f182eced3
remove unused method _onRoomSecretDelete
2023-02-08 04:18:47 +01:00
schlagmichdoch
1c3a8bfe1d
remove unnecessary double signaling onPeerJoined and prevent second RTCPeer instance for same peerId
2023-02-08 04:18:39 +01:00
schlagmichdoch
c674e2c8d2
remove WSPeer completely as the implementation has never been finished and routing all traffic through the server is not desirable for public PairDrop. ([see this issue for reasons]( https://github.com/schlagmichdoch/PairDrop/issues/18#issuecomment-1416788548 )
2023-02-04 17:04:05 +01:00
schlagmichdoch
8488ce1402
fix socket is null if PWA is offline
2023-02-04 16:22:57 +01:00
schlagmichdoch
c0c51c38b3
only activate paste-mode the first time a file is opened with PairDrop by looking for the url parameter on start and removing it afterwords.
2023-02-02 15:19:28 +01:00
schlagmichdoch
ca37331830
remove warning for removed crypto.subtle dependency
2023-01-31 21:57:00 +01:00
schlagmichdoch
a2d6832d12
prevent user from accidentally closing the window if files are transferred.
2023-01-27 01:29:35 +01:00
schlagmichdoch
d35c27aa91
revert zipping and unzipping files on transfer to minimize needed browser memory. Use fileQueue instead.
2023-01-27 01:28:10 +01:00
schlagmichdoch
ea9613f2cf
add btn shortcut as title tooltip
2023-01-25 10:01:45 +01:00
schlagmichdoch
4756a52278
fix filesize calculation for small files
2023-01-25 09:59:38 +01:00
schlagmichdoch
437aa5976e
fix base64text: special characters decoded incorrectly
2023-01-25 09:43:32 +01:00
schlagmichdoch
1f7a43292b
fix PWA offline capability
2023-01-23 20:40:08 +01:00
schlagmichdoch
689d2bd44c
correct conversion of file sizes, differentiate between files and images on file receive dialog and update progress indicator while zip processing + small fixes
2023-01-23 20:09:35 +01:00
schlagmichdoch
ec6bee05fd
fix error `Cannot set remote answer in state stable`
2023-01-23 19:53:14 +01:00
schlagmichdoch
19d7e6fecd
prevent channel from opening if connection is closed
2023-01-23 05:28:08 +01:00
schlagmichdoch
d4dcfbc1b7
After successfully creating peer to peer connection, transferring files/messages now work completely independent of the PairDrop server. Transfers are not aborted and dialogs are not closed when the client has only lost connection to the PairDrop server or when 'peer-left' but only when the corresponding peer is disconnected.
2023-01-23 04:51:22 +01:00
schlagmichdoch
d424a0294a
fix persistent peerId -> displayName if PWA
2023-01-23 00:03:26 +01:00
schlagmichdoch
c9f57c6fa0
Notify user if paired devices are not persistent.
2023-01-22 17:43:03 +01:00
schlagmichdoch
88e31407cb
fix persistent peerId if PWA
2023-01-22 17:36:15 +01:00
schlagmichdoch
bf79f72741
use console.log instead of console.error if indexeddb is not available as this behaviour is expected
2023-01-22 17:34:33 +01:00
schlagmichdoch
35aac22fae
fix drop files when no peer is connected yet
2023-01-22 17:33:19 +01:00
schlagmichdoch
87aa958c60
add functionality to drop files to the background to select recipient
2023-01-22 16:14:27 +01:00
schlagmichdoch
7b860d5473
add base64text functionality for sending multi line text from iOS share menu
2023-01-22 16:12:00 +01:00
schlagmichdoch
0a3ab18e80
clarify UI on File Transfer Request
2023-01-21 18:21:58 +01:00
schlagmichdoch
fb306b6c94
fix video + audio preview
2023-01-21 18:20:42 +01:00
schlagmichdoch
8c0d7bae49
include all favicons in favicon change
2023-01-20 15:56:20 +01:00
schlagmichdoch
a0f46475dd
fix restart animation when last peer left
2023-01-20 01:58:49 +01:00
schlagmichdoch
f97bd6df9e
Implement tab title and favicon change if a file transfer has been requested or a file or a message has been received ( #7 )
...
Co-authored-by: schlagmichdoch <schlagmichdoch@users.noreply.github.com>
2023-01-20 01:36:15 +01:00
schlagmichdoch
469d3f6ec8
prevent base64ZipDialog from closing when ws disconnects
2023-01-19 15:07:58 +01:00
schlagmichdoch
6bc1bcf743
put files into innodb instead of to cache
2023-01-19 14:54:32 +01:00
schlagmichdoch
766b5d3dd7
add user notification if clipboard.readText() is undefined
2023-01-19 14:48:43 +01:00
schlagmichdoch
62c02aaed3
change position of button to close paste mode
2023-01-19 06:43:24 +01:00
schlagmichdoch
d9c3d5172a
FIX add mime types to files if missing -> needed for correct sharing via share-menu on ios
2023-01-19 06:01:23 +01:00
schlagmichdoch
c53221ba01
Add Base64ZipDialog to PairDrop via share-menu on iOS
2023-01-19 04:40:28 +01:00
schlagmichdoch
7e7463de90
delete cached files after query; consistency updates
2023-01-18 22:42:47 +01:00
schlagmichdoch
be6813d714
implemented WebShareTarget in manifest and serviceworker for testing
2023-01-18 21:01:29 +01:00
schlagmichdoch
7936f123c2
implement File Handler API
2023-01-18 15:46:09 +01:00
schlagmichdoch
6748cc0cb4
fix bugs
2023-01-18 15:44:20 +01:00
schlagmichdoch
29735ff617
add alert if corruption of files can not be checked and add optional nginx config for http to https redirect; always show preview of first file if image;
2023-01-18 15:37:36 +01:00
schlagmichdoch
bdb9cb42d9
rewrite pasteMode activation/deactivation in PeerUI and PeersUI and add clear up PasteUI
2023-01-18 15:28:57 +01:00
schlagmichdoch
168d10a898
implemented NoSleep.js as suggested in this issue: https://github.com/RobinLinus/snapdrop/issues/412
2023-01-17 14:19:51 +01:00
schlagmichdoch
474eb9290f
small fixes and style changes
2023-01-17 14:00:01 +01:00
schlagmichdoch
c7ee067ef2
remove title and text from navigator.share() to prevent iOS from generating additional image from text
2023-01-17 11:44:52 +01:00
schlagmichdoch
24fdff8a8a
adding a second stun server provided by the openrelayproject to the RTCPeer.config
2023-01-17 11:27:07 +01:00
schlagmichdoch
785db26882
refactor "Pairdrop" to "PairDrop"
2023-01-17 10:51:19 +01:00
schlagmichdoch
665aa857d7
revert div to input conversion to be able to insert linebreaks to messages
2023-01-17 10:47:44 +01:00
schlagmichdoch
5525caa766
implement file receive request with image-thumbnail-preview, share-menu on click additional to download and multiple file support by zipping file(s) to prepare for sending; add status "waiting.." and "preparing..." to UX; lock pointer-input when peer-node busy; tidy-up paste-mode deactivation
2023-01-17 10:45:29 +01:00
schlagmichdoch
2671aa128f
disable pair dialog chars when hidden to prevent autofocus
2023-01-17 10:11:17 +01:00
schlagmichdoch
5c5fb2db0d
send message: prevent insertion of formatted text; send text on CTRL+Enter / CMD+Enter
2023-01-14 01:57:33 +01:00
schlagmichdoch
efb3857bd2
tidy up clearPeers method
2023-01-11 00:40:53 +01:00
schlagmichdoch
fed9d17dc8
replace "snapdrop" with "pairdrop" and change links accordingly + add changes to faq and readme
2023-01-10 17:22:36 +01:00
schlagmichdoch
bef7459019
do not hide ReceiveDialogs on disconnect
2023-01-10 16:10:46 +01:00
schlagmichdoch
8d2bbc795d
Video and Audio preview
2023-01-10 16:03:52 +01:00
schlagmichdoch
7deeba161b
disconnect on navigator.connection.change
2023-01-10 14:52:39 +01:00
schlagmichdoch
516e1ddf59
fix background animation speeding up uncontrollably
2023-01-10 14:52:03 +01:00
schlagmichdoch
3c07a4199b
implement device pairing via 6-digit code and qr-code
2023-01-10 05:07:57 +01:00
schlagmichdoch
e559aecde7
merge implement_paste_mode into branch
2023-01-07 03:34:01 +01:00
schlagmichdoch
206860c838
use openrelay server instead
2023-01-07 02:38:45 +01:00
schlagmichdoch
cce8db7f84
stop background animation on disconnect
2023-01-07 01:54:36 +01:00
schlagmichdoch
fe2422264a
add notification on connect
2023-01-07 01:47:47 +01:00
schlagmichdoch
62b9e4e9e4
fix peer._channel is undefined
2023-01-06 19:51:35 +01:00
schlagmichdoch
ee3d400de1
Merge branch 'fix_typo_repeat_partition' into add_device_pairing_render_node
2023-01-06 16:34:04 +01:00
schlagmichdoch
6c4b7b893a
fix reconnection _onChannelClosed()
2023-01-06 16:19:45 +01:00
schlagmichdoch
6268ac7132
only reopen connection if it exists
2023-01-06 15:46:51 +01:00
schlagmichdoch
98a6f63799
remove notification for new displayName as peerId and display name is persistent again
2023-01-06 15:09:01 +01:00
schlagmichdoch
621c525d11
readd persistent peerId via sessionStorage
2022-12-31 18:52:18 +01:00
schlagmichdoch
8dc0f1cb0c
stabilize connection
2022-12-31 18:52:18 +01:00
schlagmichdoch
6feeb6d4d9
potential fix for reconnect function
2022-12-31 18:52:17 +01:00
schlagmichdoch
0b45bdfd84
potential fix for reconnect function
2022-12-31 18:52:17 +01:00
schlagmichdoch
0436a2185a
fix animation function if called multiple times
2022-12-31 18:52:17 +01:00
schlagmichdoch
651047cfa8
clear peers on page hide
2022-12-31 18:52:16 +01:00
schlagmichdoch
59671a751b
remove reconnect function
2022-12-31 18:52:16 +01:00
schlagmichdoch
1b7aced340
remove forceDisconnect() and add change name notification
2022-12-30 22:55:48 +01:00
schlagmichdoch
cb86e96ffc
copy on CMD + C / CTRL + C
2022-12-30 20:34:54 +01:00
schlagmichdoch
009fcd7745
close About Snapdrop page on Escape Keydown
2022-12-30 17:09:15 +01:00
schlagmichdoch
a7a91df558
fix force disconnect function
2022-12-24 04:29:47 +01:00
schlagmichdoch
800cf1712c
restart animation when last peer leaves
2022-12-24 04:29:16 +01:00
schlagmichdoch
947e088aeb
move files for node only implementation
2022-12-23 05:32:34 +01:00