Index: chrome/browser/resources/chat_manager/background.html |
=================================================================== |
--- chrome/browser/resources/chat_manager/background.html (revision 59993) |
+++ chrome/browser/resources/chat_manager/background.html (working copy) |
@@ -21,11 +21,19 @@ |
var centralRosterPort; |
var centralJidListenerPorts = []; |
+ // Notify all port listeners of an event. |
+ function forwardEventToPortListeners(evtType, chatJid) { |
+ var listenerPort; |
+ for (var portIndex in centralJidListenerPorts) { |
+ listenerPort = centralJidListenerPorts[portIndex]; |
+ listenerPort.postMessage({eventType: evtType, jid: chatJid}); |
+ } |
+ } |
+ |
// Notify all port listeners of updated central roster jid. |
function forwardCentralRosterJidToPortListeners() { |
- for (var listenerPort in centralJidListenerPorts) { |
- listenerPort.postMessage({jid: centralRosterJid}); |
- } |
+ forwardEventToPortListeners( |
+ ChatBridgeEventTypes.CENTRAL_USER_UPDATE, centralRosterJid); |
} |
// Central roster jid changed. Notify all listeners. |
@@ -88,13 +96,21 @@ |
case ChatBridgeEventTypes.START_VOICE: |
if (centralRosterPort) { |
centralRosterPort.postMessage( |
- {chatType: request.msg, jid: request.jid}); |
+ {eventType: request.msg, jid: request.jid}); |
} else { |
// We should not have been forwarded this message. Make sure our |
// listeners are updated with the current central roster jid. |
forwardCentralRosterJidToPortListeners(); |
} |
break; |
+ case ChatBridgeEventTypes.OPENED_MOLE_INCOMING: |
+ forwardEventToPortListeners(ChatBridgeEventTypes.OPENED_MOLE_OUTGOING, |
+ request.jid); |
+ break; |
+ case ChatBridgeEventTypes.CLOSED_MOLE_INCOMING: |
+ forwardEventToPortListeners(ChatBridgeEventTypes.CLOSED_MOLE_OUTGOING, |
+ request.jid); |
+ break; |
} |
}); |
</script> |