This repository was archived by the owner on Aug 27, 2025. It is now read-only.
File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -24,6 +24,12 @@ class CrossSyncContentScript {
2424 this . xlog ( 'info' , 'CorssSync Content Script is running' ) ;
2525 this . initHooks ( ) ;
2626 this . lock = new AsyncLock ( ) ;
27+ // Keep Service Worker Alive
28+ setInterval ( ( ) => {
29+ chrome . runtime . sendMessage ( {
30+ type : 'wakeup-sw' ,
31+ } ) ;
32+ } , 10 * 1000 ) ; // Per 10 seconds
2733 }
2834
2935 private async initHooks ( ) {
Original file line number Diff line number Diff line change @@ -53,25 +53,31 @@ const afterResponseListener = (details: chrome.webRequest.WebResponseCacheDetail
5353 }
5454} ;
5555
56- chrome . webNavigation . onBeforeNavigate . addListener (
57- ( ) => {
58- // Wake Up
59- if ( ! chrome . webRequest . onBeforeRequest . hasListener ( beforeRequestListener ) ) {
60- chrome . webRequest . onBeforeRequest . addListener (
61- beforeRequestListener ,
62- {
63- urls : [ 'https://twitter.com/*/CreateTweet' ] ,
64- } ,
65- [ 'requestBody' ] ,
66- ) ;
67- }
68- if ( ! chrome . webRequest . onCompleted . hasListener ( afterResponseListener ) ) {
69- chrome . webRequest . onCompleted . addListener ( afterResponseListener , {
56+ const wakeUpSW = ( ) => {
57+ // Wake Up
58+ if ( ! chrome . webRequest . onBeforeRequest . hasListener ( beforeRequestListener ) ) {
59+ chrome . webRequest . onBeforeRequest . addListener (
60+ beforeRequestListener ,
61+ {
7062 urls : [ 'https://twitter.com/*/CreateTweet' ] ,
71- } ) ;
72- }
73- } ,
74- {
75- url : [ { hostContains : 'twitter.com' } ] ,
76- } ,
77- ) ;
63+ } ,
64+ [ 'requestBody' ] ,
65+ ) ;
66+ }
67+ if ( ! chrome . webRequest . onCompleted . hasListener ( afterResponseListener ) ) {
68+ chrome . webRequest . onCompleted . addListener ( afterResponseListener , {
69+ urls : [ 'https://twitter.com/*/CreateTweet' ] ,
70+ } ) ;
71+ }
72+ } ;
73+
74+ chrome . webNavigation . onBeforeNavigate . addListener ( wakeUpSW , {
75+ url : [ { hostContains : 'twitter.com' } ] ,
76+ } ) ;
77+
78+ // Wake Up SW by Content Script
79+ chrome . runtime . onMessage . addListener ( ( msg ) => {
80+ if ( msg . type === 'wakeup-sw' ) {
81+ wakeUpSW ( ) ;
82+ }
83+ } ) ;
You can’t perform that action at this time.
0 commit comments