36 lines
No EOL
761 B
Markdown
36 lines
No EOL
761 B
Markdown
### **Message Flow FROM Extension:**
|
|
```
|
|
Browser Extension
|
|
↓ postMessage
|
|
window.onMessage
|
|
↓ (ExtensionService listening)
|
|
setupListener() receives message
|
|
↓ filter by source
|
|
_handleExtensionMessage()
|
|
↓ check action type
|
|
Call appropriate callback
|
|
↓
|
|
onTabsUpdate() / onTrackingStart() / onTrackingStop()
|
|
↓
|
|
TabManagerHome updates UI
|
|
↓
|
|
User sees changes!
|
|
```
|
|
|
|
### **Message Flow TO Extension:**
|
|
```
|
|
User clicks "Track Tabs"
|
|
↓
|
|
TabManagerHome calls startTracking()
|
|
↓
|
|
ExtensionService.startTracking()
|
|
↓
|
|
sendMessage({'action': 'startTracking'})
|
|
↓
|
|
window.postMessage
|
|
↓
|
|
Extension receives message
|
|
↓
|
|
Extension starts tracking
|
|
↓
|
|
Extension sends back confirmation |