mirror of
https://github.com/schlagmichdoch/PairDrop.git
synced 2025-04-21 07:16:18 -04:00
Fix public room badge not translating correctly when switching languages
This commit is contained in:
parent
a314b2c275
commit
3f1477f24a
6 changed files with 38 additions and 14 deletions
|
@ -134,7 +134,7 @@
|
||||||
<div class="row center">
|
<div class="row center">
|
||||||
<span class="badge badge-room-ip" data-i18n-key="footer.on-this-network" data-i18n-attrs="text title">on this network</span>
|
<span class="badge badge-room-ip" data-i18n-key="footer.on-this-network" data-i18n-attrs="text title">on this network</span>
|
||||||
<span class="badge badge-room-secret pointer" data-i18n-key="footer.paired-devices" data-i18n-attrs="text title" hidden>paired devices</span>
|
<span class="badge badge-room-secret pointer" data-i18n-key="footer.paired-devices" data-i18n-attrs="text title" hidden>paired devices</span>
|
||||||
<span class="badge badge-room-public-id pointer" data-i18n-key="footer.public-room-devices" data-i18n-attrs="text title" hidden>in room IAIAI</span>
|
<span class="badge badge-room-public-id pointer" data-i18n-key="footer.public-room-devices" data-i18n-attrs="title" hidden>in room IAIAI</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -16,7 +16,7 @@ class Localization {
|
||||||
Localization.setTranslation(Localization.initialLocale)
|
Localization.setTranslation(Localization.initialLocale)
|
||||||
.then(_ => {
|
.then(_ => {
|
||||||
console.log("Initial translation successful.");
|
console.log("Initial translation successful.");
|
||||||
Events.fire("translation-loaded");
|
Events.fire("initial-translation-loaded");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,6 +38,8 @@ class Localization {
|
||||||
`System language: ${Localization.systemLocale}`,
|
`System language: ${Localization.systemLocale}`,
|
||||||
`Selected language: ${locale}`
|
`Selected language: ${locale}`
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Events.fire("translation-loaded");
|
||||||
}
|
}
|
||||||
|
|
||||||
static async setLocale(newLocale) {
|
static async setLocale(newLocale) {
|
||||||
|
|
|
@ -1517,6 +1517,7 @@ class PublicRoomDialog extends Dialog {
|
||||||
this.evaluateUrlAttributes();
|
this.evaluateUrlAttributes();
|
||||||
|
|
||||||
Events.on('ws-connected', _ => this._onWsConnected());
|
Events.on('ws-connected', _ => this._onWsConnected());
|
||||||
|
Events.on('translation-loaded', _ => this.setFooterBadge());
|
||||||
}
|
}
|
||||||
|
|
||||||
_onKeyDown(e) {
|
_onKeyDown(e) {
|
||||||
|
@ -1554,6 +1555,8 @@ class PublicRoomDialog extends Dialog {
|
||||||
}
|
}
|
||||||
|
|
||||||
setIdAndQrCode() {
|
setIdAndQrCode() {
|
||||||
|
if (!this.roomId) return;
|
||||||
|
|
||||||
this.$key.innerText = this.roomId.toUpperCase();
|
this.$key.innerText = this.roomId.toUpperCase();
|
||||||
|
|
||||||
// Display the QR code for the url
|
// Display the QR code for the url
|
||||||
|
@ -1569,10 +1572,17 @@ class PublicRoomDialog extends Dialog {
|
||||||
});
|
});
|
||||||
this.$qrCode.innerHTML = qr.svg();
|
this.$qrCode.innerHTML = qr.svg();
|
||||||
|
|
||||||
|
this.setFooterBadge();
|
||||||
|
}
|
||||||
|
|
||||||
|
setFooterBadge() {
|
||||||
|
if (!this.roomId) return;
|
||||||
|
|
||||||
this.$footerInstructionsPublicRoomDevices.innerText = Localization.getTranslation("footer.public-room-devices", null, {
|
this.$footerInstructionsPublicRoomDevices.innerText = Localization.getTranslation("footer.public-room-devices", null, {
|
||||||
roomId: this.roomId.toUpperCase()
|
roomId: this.roomId.toUpperCase()
|
||||||
});
|
});
|
||||||
this.$footerInstructionsPublicRoomDevices.removeAttribute('hidden');
|
this.$footerInstructionsPublicRoomDevices.removeAttribute('hidden');
|
||||||
|
|
||||||
super.evaluateFooterBadges();
|
super.evaluateFooterBadges();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1597,7 +1607,7 @@ class PublicRoomDialog extends Dialog {
|
||||||
if (!roomId) return;
|
if (!roomId) return;
|
||||||
|
|
||||||
this.roomId = roomId;
|
this.roomId = roomId;
|
||||||
this.setIdAndQrCode(roomId);
|
this.setIdAndQrCode();
|
||||||
|
|
||||||
this._joinPublicRoom(roomId, true);
|
this._joinPublicRoom(roomId, true);
|
||||||
}
|
}
|
||||||
|
@ -1649,7 +1659,7 @@ class PublicRoomDialog extends Dialog {
|
||||||
if (isJoinedRoomId) {
|
if (isJoinedRoomId) {
|
||||||
this.roomId = roomId;
|
this.roomId = roomId;
|
||||||
this.roomIdJoin = false;
|
this.roomIdJoin = false;
|
||||||
this.setIdAndQrCode(roomId);
|
this.setIdAndQrCode();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1700,7 +1710,7 @@ class SendTextDialog extends Dialog {
|
||||||
this.$submit = this.$el.querySelector('button[type="submit"]');
|
this.$submit = this.$el.querySelector('button[type="submit"]');
|
||||||
this.$form.addEventListener('submit', e => this._onSubmit(e));
|
this.$form.addEventListener('submit', e => this._onSubmit(e));
|
||||||
this.$text.addEventListener('input', e => this._onChange(e));
|
this.$text.addEventListener('input', e => this._onChange(e));
|
||||||
Events.on("keydown", e => this._onKeyDown(e));
|
Events.on('keydown', e => this._onKeyDown(e));
|
||||||
}
|
}
|
||||||
|
|
||||||
async _onKeyDown(e) {
|
async _onKeyDown(e) {
|
||||||
|
@ -1769,7 +1779,7 @@ class ReceiveTextDialog extends Dialog {
|
||||||
this.$copy.addEventListener('click', _ => this._onCopy());
|
this.$copy.addEventListener('click', _ => this._onCopy());
|
||||||
this.$close.addEventListener('click', _ => this.hide());
|
this.$close.addEventListener('click', _ => this.hide());
|
||||||
|
|
||||||
Events.on("keydown", e => this._onKeyDown(e));
|
Events.on('keydown', e => this._onKeyDown(e));
|
||||||
|
|
||||||
this.$displayName = this.$el.querySelector('.display-name');
|
this.$displayName = this.$el.querySelector('.display-name');
|
||||||
this._receiveTextQueue = [];
|
this._receiveTextQueue = [];
|
||||||
|
@ -2643,7 +2653,7 @@ class BrowserTabsConnector {
|
||||||
|
|
||||||
class PairDrop {
|
class PairDrop {
|
||||||
constructor() {
|
constructor() {
|
||||||
Events.on('translation-loaded', _ => {
|
Events.on('initial-translation-loaded', _ => {
|
||||||
const server = new ServerConnection();
|
const server = new ServerConnection();
|
||||||
const peers = new PeersManager(server);
|
const peers = new PeersManager(server);
|
||||||
const peersUI = new PeersUI();
|
const peersUI = new PeersUI();
|
||||||
|
|
|
@ -139,7 +139,7 @@
|
||||||
<div class="row center">
|
<div class="row center">
|
||||||
<span class="badge badge-room-ip" data-i18n-key="footer.on-this-network" data-i18n-attrs="text title">on this network</span>
|
<span class="badge badge-room-ip" data-i18n-key="footer.on-this-network" data-i18n-attrs="text title">on this network</span>
|
||||||
<span class="badge badge-room-secret pointer" data-i18n-key="footer.paired-devices" data-i18n-attrs="text title" hidden>paired devices</span>
|
<span class="badge badge-room-secret pointer" data-i18n-key="footer.paired-devices" data-i18n-attrs="text title" hidden>paired devices</span>
|
||||||
<span class="badge badge-room-public-id pointer" data-i18n-key="footer.public-room-devices" data-i18n-attrs="text title" hidden>in room IAIAI</span>
|
<span class="badge badge-room-public-id pointer" data-i18n-key="footer.public-room-devices" data-i18n-attrs="title" hidden>in room IAIAI</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -16,7 +16,7 @@ class Localization {
|
||||||
Localization.setTranslation(Localization.initialLocale)
|
Localization.setTranslation(Localization.initialLocale)
|
||||||
.then(_ => {
|
.then(_ => {
|
||||||
console.log("Initial translation successful.");
|
console.log("Initial translation successful.");
|
||||||
Events.fire("translation-loaded");
|
Events.fire("initial-translation-loaded");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,6 +38,8 @@ class Localization {
|
||||||
`System language: ${Localization.systemLocale}`,
|
`System language: ${Localization.systemLocale}`,
|
||||||
`Selected language: ${locale}`
|
`Selected language: ${locale}`
|
||||||
);
|
);
|
||||||
|
|
||||||
|
Events.fire("translation-loaded");
|
||||||
}
|
}
|
||||||
|
|
||||||
static async setLocale(newLocale) {
|
static async setLocale(newLocale) {
|
||||||
|
|
|
@ -1519,6 +1519,7 @@ class PublicRoomDialog extends Dialog {
|
||||||
this.evaluateUrlAttributes();
|
this.evaluateUrlAttributes();
|
||||||
|
|
||||||
Events.on('ws-connected', _ => this._onWsConnected());
|
Events.on('ws-connected', _ => this._onWsConnected());
|
||||||
|
Events.on('translation-loaded', _ => this.setFooterBadge());
|
||||||
}
|
}
|
||||||
|
|
||||||
_onKeyDown(e) {
|
_onKeyDown(e) {
|
||||||
|
@ -1556,6 +1557,8 @@ class PublicRoomDialog extends Dialog {
|
||||||
}
|
}
|
||||||
|
|
||||||
setIdAndQrCode() {
|
setIdAndQrCode() {
|
||||||
|
if (!this.roomId) return;
|
||||||
|
|
||||||
this.$key.innerText = this.roomId.toUpperCase();
|
this.$key.innerText = this.roomId.toUpperCase();
|
||||||
|
|
||||||
// Display the QR code for the url
|
// Display the QR code for the url
|
||||||
|
@ -1571,10 +1574,17 @@ class PublicRoomDialog extends Dialog {
|
||||||
});
|
});
|
||||||
this.$qrCode.innerHTML = qr.svg();
|
this.$qrCode.innerHTML = qr.svg();
|
||||||
|
|
||||||
|
this.setFooterBadge();
|
||||||
|
}
|
||||||
|
|
||||||
|
setFooterBadge() {
|
||||||
|
if (!this.roomId) return;
|
||||||
|
|
||||||
this.$footerInstructionsPublicRoomDevices.innerText = Localization.getTranslation("footer.public-room-devices", null, {
|
this.$footerInstructionsPublicRoomDevices.innerText = Localization.getTranslation("footer.public-room-devices", null, {
|
||||||
roomId: this.roomId.toUpperCase()
|
roomId: this.roomId.toUpperCase()
|
||||||
});
|
});
|
||||||
this.$footerInstructionsPublicRoomDevices.removeAttribute('hidden');
|
this.$footerInstructionsPublicRoomDevices.removeAttribute('hidden');
|
||||||
|
|
||||||
super.evaluateFooterBadges();
|
super.evaluateFooterBadges();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1599,7 +1609,7 @@ class PublicRoomDialog extends Dialog {
|
||||||
if (!roomId) return;
|
if (!roomId) return;
|
||||||
|
|
||||||
this.roomId = roomId;
|
this.roomId = roomId;
|
||||||
this.setIdAndQrCode(roomId);
|
this.setIdAndQrCode();
|
||||||
|
|
||||||
this._joinPublicRoom(roomId, true);
|
this._joinPublicRoom(roomId, true);
|
||||||
}
|
}
|
||||||
|
@ -1651,7 +1661,7 @@ class PublicRoomDialog extends Dialog {
|
||||||
if (isJoinedRoomId) {
|
if (isJoinedRoomId) {
|
||||||
this.roomId = roomId;
|
this.roomId = roomId;
|
||||||
this.roomIdJoin = false;
|
this.roomIdJoin = false;
|
||||||
this.setIdAndQrCode(roomId);
|
this.setIdAndQrCode();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1702,7 +1712,7 @@ class SendTextDialog extends Dialog {
|
||||||
this.$submit = this.$el.querySelector('button[type="submit"]');
|
this.$submit = this.$el.querySelector('button[type="submit"]');
|
||||||
this.$form.addEventListener('submit', e => this._onSubmit(e));
|
this.$form.addEventListener('submit', e => this._onSubmit(e));
|
||||||
this.$text.addEventListener('input', e => this._onChange(e));
|
this.$text.addEventListener('input', e => this._onChange(e));
|
||||||
Events.on("keydown", e => this._onKeyDown(e));
|
Events.on('keydown', e => this._onKeyDown(e));
|
||||||
}
|
}
|
||||||
|
|
||||||
async _onKeyDown(e) {
|
async _onKeyDown(e) {
|
||||||
|
@ -1771,7 +1781,7 @@ class ReceiveTextDialog extends Dialog {
|
||||||
this.$copy.addEventListener('click', _ => this._onCopy());
|
this.$copy.addEventListener('click', _ => this._onCopy());
|
||||||
this.$close.addEventListener('click', _ => this.hide());
|
this.$close.addEventListener('click', _ => this.hide());
|
||||||
|
|
||||||
Events.on("keydown", e => this._onKeyDown(e));
|
Events.on('keydown', e => this._onKeyDown(e));
|
||||||
|
|
||||||
this.$displayName = this.$el.querySelector('.display-name');
|
this.$displayName = this.$el.querySelector('.display-name');
|
||||||
this._receiveTextQueue = [];
|
this._receiveTextQueue = [];
|
||||||
|
@ -2645,7 +2655,7 @@ class BrowserTabsConnector {
|
||||||
|
|
||||||
class PairDrop {
|
class PairDrop {
|
||||||
constructor() {
|
constructor() {
|
||||||
Events.on('translation-loaded', _ => {
|
Events.on('initial-translation-loaded', _ => {
|
||||||
const server = new ServerConnection();
|
const server = new ServerConnection();
|
||||||
const peers = new PeersManager(server);
|
const peers = new PeersManager(server);
|
||||||
const peersUI = new PeersUI();
|
const peersUI = new PeersUI();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue