mirror of
https://github.com/schlagmichdoch/PairDrop.git
synced 2025-04-20 15:06:15 -04:00
fix check whether peer is same browser
This commit is contained in:
parent
ae9909f596
commit
347f9b87c0
5 changed files with 213 additions and 167 deletions
|
@ -169,8 +169,12 @@ class PeersUI {
|
|||
return;
|
||||
}
|
||||
peer.sameBrowser = _ => BrowserTabsConnector.peerIsSameBrowser(peer.id);
|
||||
peer.roomTypes = [roomType];
|
||||
peer.roomSecret = roomSecret;
|
||||
|
||||
if (!(roomType === "secret" && peer.sameBrowser())) {
|
||||
peer.roomTypes = [roomType];
|
||||
peer.roomSecret = roomSecret;
|
||||
}
|
||||
|
||||
this.peers[peer.id] = peer;
|
||||
}
|
||||
|
||||
|
@ -1026,10 +1030,7 @@ class PairDeviceDialog extends Dialog {
|
|||
|
||||
_onWsConnected() {
|
||||
this.$pairDeviceBtn.removeAttribute('hidden');
|
||||
PersistentStorage.getAllRoomSecrets().then(roomSecrets => {
|
||||
Events.fire('room-secrets', roomSecrets);
|
||||
this._evaluateNumberRoomSecrets();
|
||||
});
|
||||
this._evaluateNumberRoomSecrets();
|
||||
}
|
||||
|
||||
_pairDeviceInitiate() {
|
||||
|
@ -1972,13 +1973,18 @@ class PersistentStorage {
|
|||
}
|
||||
|
||||
static async getAllRoomSecrets() {
|
||||
const roomSecrets = await this.getAllRoomSecretEntries();
|
||||
let secrets = [];
|
||||
for (let i=0; i<roomSecrets.length; i++) {
|
||||
secrets.push(roomSecrets[i].secret);
|
||||
try {
|
||||
const roomSecrets = await this.getAllRoomSecretEntries();
|
||||
let secrets = [];
|
||||
for (let i = 0; i < roomSecrets.length; i++) {
|
||||
secrets.push(roomSecrets[i].secret);
|
||||
}
|
||||
console.log(`Request successful. Retrieved ${secrets.length} room_secrets`);
|
||||
return(secrets);
|
||||
} catch (e) {
|
||||
this.logBrowserNotCapable();
|
||||
return false;
|
||||
}
|
||||
console.log(`Request successful. Retrieved ${secrets.length} room_secrets`);
|
||||
return(secrets);
|
||||
}
|
||||
|
||||
static getAllRoomSecretEntries() {
|
||||
|
@ -2167,11 +2173,13 @@ class BrowserTabsConnector {
|
|||
|
||||
let peerIdsBrowser = [];
|
||||
let peerIdsBrowserOld = JSON.parse(localStorage.getItem("peerIdsBrowser"));
|
||||
|
||||
if (peerIdsBrowserOld) peerIdsBrowser.push(...peerIdsBrowserOld);
|
||||
peerIdsBrowser.push(peerId);
|
||||
peerIdsBrowser = peerIdsBrowser.filter(onlyUnique);
|
||||
localStorage.setItem("peerIdsBrowser", JSON.stringify(peerIdsBrowser));
|
||||
return peerId;
|
||||
|
||||
return peerIdsBrowser;
|
||||
}
|
||||
|
||||
static async removePeerIdFromLocalStorage(peerId) {
|
||||
|
@ -2182,8 +2190,14 @@ class BrowserTabsConnector {
|
|||
return peerId;
|
||||
}
|
||||
|
||||
static removePeerIdsFromLocalStorage() {
|
||||
localStorage.removeItem("peerIdsBrowser");
|
||||
|
||||
static async removeOtherPeerIdsFromLocalStorage() {
|
||||
const peerId = sessionStorage.getItem("peerId");
|
||||
if (!peerId) return false;
|
||||
|
||||
let peerIdsBrowser = [peerId];
|
||||
localStorage.setItem("peerIdsBrowser", JSON.stringify(peerIdsBrowser));
|
||||
return peerIdsBrowser;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue