mirror of
https://github.com/hensm/fx_cast.git
synced 2026-06-08 08:39:59 +00:00
Rename ReceiverSelectorManager -> ReceiverSelector
This commit is contained in:
@@ -11,10 +11,10 @@ import options from "./lib/options";
|
||||
import { getChromeUserAgent } from "./lib/userAgents";
|
||||
import { getWindowCenteredProps } from "./lib/utils";
|
||||
|
||||
import { getReceiverSelectorManager
|
||||
, ReceiverSelectorManagerType
|
||||
import { getReceiverSelector
|
||||
, ReceiverSelectorType
|
||||
, ReceiverSelectorMediaType
|
||||
, ReceiverSelectorSelectedEvent } from "./receiverSelectorManager";
|
||||
, ReceiverSelectorSelectedEvent } from "./receiver_selectors";
|
||||
|
||||
import { Message, Receiver } from "./types";
|
||||
|
||||
@@ -452,7 +452,7 @@ browser.menus.onClicked.addListener(async (info, tab) => {
|
||||
|
||||
// Load mirroring sender app
|
||||
await browser.tabs.executeScript(tab.id, {
|
||||
file: "mirroringCast.js"
|
||||
file: "senders/mirroringCast.js"
|
||||
, frameId
|
||||
});
|
||||
|
||||
@@ -472,7 +472,7 @@ browser.menus.onClicked.addListener(async (info, tab) => {
|
||||
|
||||
// Load media sender app
|
||||
await browser.tabs.executeScript(tab.id, {
|
||||
file: "mediaCast.js"
|
||||
file: "senders/mediaCast.js"
|
||||
, frameId
|
||||
});
|
||||
|
||||
@@ -641,11 +641,11 @@ async function onConnectShim (port: browser.runtime.Port) {
|
||||
|
||||
const { os } = await browser.runtime.getPlatformInfo();
|
||||
|
||||
const receiverSelectorManager = getReceiverSelectorManager(os === "mac"
|
||||
? ReceiverSelectorManagerType.NativeMac
|
||||
: ReceiverSelectorManagerType.Popup);
|
||||
const receiverSelector = getReceiverSelector(os === "mac"
|
||||
? ReceiverSelectorType.NativeMac
|
||||
: ReceiverSelectorType.Popup);
|
||||
|
||||
function onReceiverSelectorManagerSelected (
|
||||
function onReceiverSelectorSelected (
|
||||
ev: ReceiverSelectorSelectedEvent) {
|
||||
|
||||
port.postMessage({
|
||||
@@ -654,33 +654,33 @@ async function onConnectShim (port: browser.runtime.Port) {
|
||||
});
|
||||
}
|
||||
|
||||
function onReceiverSelectorManagerCancelled () {
|
||||
function onReceiverSelectorCancelled () {
|
||||
port.postMessage({
|
||||
subject: "shim:/selectReceiverCancelled"
|
||||
});
|
||||
}
|
||||
|
||||
function onReceiverSelectorManagerError () {
|
||||
function onReceiverSelectorError () {
|
||||
// TODO: Report errors properly
|
||||
port.postMessage({
|
||||
subject: "shim:/selectReceiverCancelled"
|
||||
});
|
||||
}
|
||||
|
||||
receiverSelectorManager.addEventListener("selected"
|
||||
, onReceiverSelectorManagerSelected);
|
||||
receiverSelectorManager.addEventListener("cancelled"
|
||||
, onReceiverSelectorManagerCancelled);
|
||||
receiverSelectorManager.addEventListener("error"
|
||||
, onReceiverSelectorManagerError);
|
||||
receiverSelector.addEventListener("selected"
|
||||
, onReceiverSelectorSelected);
|
||||
receiverSelector.addEventListener("cancelled"
|
||||
, onReceiverSelectorCancelled);
|
||||
receiverSelector.addEventListener("error"
|
||||
, onReceiverSelectorError);
|
||||
|
||||
port.onDisconnect.addListener(() => {
|
||||
receiverSelectorManager.removeEventListener("selected"
|
||||
, onReceiverSelectorManagerSelected);
|
||||
receiverSelectorManager.removeEventListener("cancelled"
|
||||
, onReceiverSelectorManagerCancelled);
|
||||
receiverSelectorManager.removeEventListener("error"
|
||||
, onReceiverSelectorManagerError);
|
||||
receiverSelector.removeEventListener("selected"
|
||||
, onReceiverSelectorSelected);
|
||||
receiverSelector.removeEventListener("cancelled"
|
||||
, onReceiverSelectorCancelled);
|
||||
receiverSelector.removeEventListener("error"
|
||||
, onReceiverSelectorError);
|
||||
});
|
||||
|
||||
|
||||
@@ -756,12 +756,12 @@ async function onConnectShim (port: browser.runtime.Port) {
|
||||
}
|
||||
|
||||
case "main:/sessionCreated": {
|
||||
receiverSelectorManager.close();
|
||||
receiverSelector.close();
|
||||
break;
|
||||
}
|
||||
|
||||
case "main:/selectReceiverBegin": {
|
||||
receiverSelectorManager.open(
|
||||
receiverSelector.open(
|
||||
Array.from(statusBridgeReceivers.values())
|
||||
, message.data.defaultMediaType);
|
||||
break;
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
"use strict";
|
||||
|
||||
import NativeMacReceiverSelectorManager
|
||||
from "./selectorManagers/NativeMacReceiverSelectorManager";
|
||||
import PopupReceiverSelectorManager
|
||||
from "./selectorManagers/PopupReceiverSelectorManager";
|
||||
|
||||
|
||||
export { ReceiverSelection
|
||||
, ReceiverSelectorCancelledEvent
|
||||
, ReceiverSelectorErrorEvent
|
||||
, ReceiverSelectorMediaType
|
||||
, ReceiverSelectorSelectedEvent } from "./ReceiverSelectorManager";
|
||||
|
||||
|
||||
export enum ReceiverSelectorManagerType {
|
||||
Popup
|
||||
, NativeMac
|
||||
}
|
||||
|
||||
export function getReceiverSelectorManager (
|
||||
type: ReceiverSelectorManagerType) {
|
||||
|
||||
switch (type) {
|
||||
case ReceiverSelectorManagerType.Popup: {
|
||||
return new PopupReceiverSelectorManager();
|
||||
}
|
||||
case ReceiverSelectorManagerType.NativeMac: {
|
||||
return new NativeMacReceiverSelectorManager();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,24 +1,24 @@
|
||||
"use strict";
|
||||
|
||||
import nativeMessaging from "../../lib/nativeMessaging";
|
||||
import options from "../../lib/options";
|
||||
import nativeMessaging from "../lib/nativeMessaging";
|
||||
import options from "../lib/options";
|
||||
|
||||
import ReceiverSelectorManager, {
|
||||
ReceiverSelectorMediaType } from "../ReceiverSelectorManager";
|
||||
import ReceiverSelector, {
|
||||
ReceiverSelectorMediaType } from "./ReceiverSelector";
|
||||
|
||||
import { Message, Receiver } from "../../types";
|
||||
import { Message, Receiver } from "../types";
|
||||
|
||||
import { NativeReceiverSelectorCloseMessage
|
||||
, NativeReceiverSelectorErrorMessage
|
||||
, NativeReceiverSelectorSelectedMessage } from "../../messageTypes";
|
||||
, NativeReceiverSelectorSelectedMessage } from "../messageTypes";
|
||||
|
||||
|
||||
const _ = browser.i18n.getMessage;
|
||||
|
||||
|
||||
export default class NativeMacReceiverSelectorManager
|
||||
export default class NativeMacReceiverSelector
|
||||
extends EventTarget
|
||||
implements ReceiverSelectorManager {
|
||||
implements ReceiverSelector {
|
||||
|
||||
private bridgePort: browser.runtime.Port;
|
||||
private bridgePortDisconnected: boolean = false;
|
||||
@@ -1,15 +1,15 @@
|
||||
"use strict";
|
||||
|
||||
import ReceiverSelectorManager, {
|
||||
ReceiverSelectorMediaType } from "../ReceiverSelectorManager";
|
||||
import ReceiverSelector, {
|
||||
ReceiverSelectorMediaType } from "./ReceiverSelector";
|
||||
|
||||
import { getWindowCenteredProps } from "../../lib/utils";
|
||||
import { Message, Receiver } from "../../types";
|
||||
import { getWindowCenteredProps } from "../lib/utils";
|
||||
import { Message, Receiver } from "../types";
|
||||
|
||||
|
||||
export default class PopupReceiverSelectorManager
|
||||
export default class PopupReceiverSelector
|
||||
extends EventTarget
|
||||
implements ReceiverSelectorManager {
|
||||
implements ReceiverSelector {
|
||||
|
||||
private windowId: number;
|
||||
private openerWindowId: number;
|
||||
@@ -104,7 +104,7 @@ export default class PopupReceiverSelectorManager
|
||||
*/
|
||||
private onPopupMessage (message: Message) {
|
||||
switch (message.subject) {
|
||||
case "receiverSelectorManager:/selected": {
|
||||
case "receiverSelector:/selected": {
|
||||
this.wasReceiverSelected = true;
|
||||
this.dispatchEvent(new CustomEvent("selected", {
|
||||
detail: message.data
|
||||
@@ -19,7 +19,7 @@ export type ReceiverSelectorErrorEvent = CustomEvent;
|
||||
export type ReceiverSelectorCancelledEvent = CustomEvent;
|
||||
|
||||
|
||||
export default interface ReceiverSelectorManager extends EventTarget {
|
||||
export default interface ReceiverSelector extends EventTarget {
|
||||
open (receivers: Receiver[]
|
||||
, defaultMediaType: ReceiverSelectorMediaType): void;
|
||||
|
||||
32
ext/src/receiver_selectors/index.ts
Normal file
32
ext/src/receiver_selectors/index.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
"use strict";
|
||||
|
||||
import NativeMacReceiverSelector
|
||||
from "./NativeMacReceiverSelector";
|
||||
import PopupReceiverSelector
|
||||
from "./PopupReceiverSelector";
|
||||
|
||||
|
||||
export { ReceiverSelection
|
||||
, ReceiverSelectorCancelledEvent
|
||||
, ReceiverSelectorErrorEvent
|
||||
, ReceiverSelectorMediaType
|
||||
, ReceiverSelectorSelectedEvent } from "./ReceiverSelector";
|
||||
|
||||
|
||||
export enum ReceiverSelectorType {
|
||||
Popup
|
||||
, NativeMac
|
||||
}
|
||||
|
||||
export function getReceiverSelector (
|
||||
type: ReceiverSelectorType) {
|
||||
|
||||
switch (type) {
|
||||
case ReceiverSelectorType.Popup: {
|
||||
return new PopupReceiverSelector();
|
||||
}
|
||||
case ReceiverSelectorType.NativeMac: {
|
||||
return new NativeMacReceiverSelector();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
"use strict";
|
||||
|
||||
import { ReceiverSelectorMediaType }
|
||||
from "./receiverSelectorManager/ReceiverSelectorManager":
|
||||
from "../receiver_selectors/ReceiverSelector":
|
||||
|
||||
let chrome;
|
||||
let logMessage;
|
||||
@@ -7,7 +7,7 @@ import { AutoJoinPolicy
|
||||
, DefaultActionPolicy } from "../enums";
|
||||
|
||||
import { ReceiverSelectorMediaType }
|
||||
from "../../../receiverSelectorManager/ReceiverSelectorManager";
|
||||
from "../../../receiver_selectors/ReceiverSelector";
|
||||
|
||||
|
||||
export default class ApiConfig {
|
||||
|
||||
@@ -8,7 +8,7 @@ import { getNextEllipsis } from "../../lib/utils";
|
||||
import { Message, Receiver } from "../../types";
|
||||
|
||||
import { ReceiverSelectorMediaType }
|
||||
from "../../receiverSelectorManager/ReceiverSelectorManager";
|
||||
from "../../receiver_selectors/ReceiverSelector";
|
||||
|
||||
|
||||
const _ = browser.i18n.getMessage;
|
||||
@@ -134,7 +134,7 @@ class PopupApp extends Component<{}, PopupAppState> {
|
||||
});
|
||||
|
||||
this.port.postMessage({
|
||||
subject: "receiverSelectorManager:/selected"
|
||||
subject: "receiverSelector:/selected"
|
||||
, data: {
|
||||
receiver
|
||||
, mediaType: this.state.mediaType
|
||||
|
||||
@@ -20,8 +20,8 @@ module.exports = (env) => ({
|
||||
, "ui/updater/bundle": `${env.includePath}/ui/updater/index.tsx`
|
||||
|
||||
// Sender apps
|
||||
, "mediaCast": `${env.includePath}/mediaCast.js`
|
||||
, "mirroringCast": `${env.includePath}/mirroringCast.js`
|
||||
, "senders/mediaCast": `${env.includePath}/senders/mediaCast.js`
|
||||
, "senders/mirroringCast": `${env.includePath}/senders/mirroringCast.js`
|
||||
|
||||
// Shim entries
|
||||
, "shim/bundle": `${env.includePath}/shim/index.ts`
|
||||
|
||||
Reference in New Issue
Block a user