@@ -66,6 +66,7 @@ pub struct Reader {
6666 spinner : Rc < Spinner > ,
6767 timeout : Mutable < Option < Timeout > > ,
6868 is_zooming : Mutable < bool > ,
69+ source_id : Mutable < i64 > ,
6970}
7071
7172impl Reader {
@@ -94,6 +95,7 @@ impl Reader {
9495 spinner,
9596 timeout : Mutable :: new ( None ) ,
9697 is_zooming : Mutable :: new ( false ) ,
98+ source_id : Mutable :: new ( 0 ) ,
9799 } )
98100 }
99101
@@ -199,14 +201,15 @@ impl Reader {
199201 this. loader . load ( clone ! ( this => async move {
200202 match query:: fetch_chapter( chapter_id) . await {
201203 Ok ( result) => {
204+ this. source_id. set_neq( result. source. id) ;
202205 this. manga_id. set_neq( result. manga. id) ;
203206 this. manga_title. set_neq( result. manga. title. clone( ) ) ;
204207 this. chapter_title. set_neq( format_number_title( result. number, & result. title) ) ;
205208 this. next_chapter. set_neq( result. next) ;
206209 this. prev_chapter. set_neq( result. prev) ;
207210
208211 // Update the number of pages so the correct page can be loaded
209- let pages = result. pages. iter( ) . map( |page| ( format!( "{page}?referer={}" , result . source . url ) , PageStatus :: Initial ) ) . collect( ) ;
212+ let pages = result. pages. iter( ) . map( |page| ( format!( "{page}" ) , PageStatus :: Initial ) ) . collect( ) ;
210213 this. pages. lock_mut( ) . replace_cloned( pages) ;
211214
212215 this. reader_settings. load_by_manga_id( result. manga. id) ;
@@ -261,8 +264,7 @@ impl Reader {
261264
262265 this. pages_loaded. set( ContinousLoaded :: Initial ) ;
263266
264- let source_url = result. source. url;
265- let pages = result. pages. iter( ) . map( |page| ( format!( "{page}?referer={source_url}" ) , PageStatus :: Initial ) ) . collect( ) ;
267+ let pages = result. pages. iter( ) . map( |page| ( format!( "{page}" ) , PageStatus :: Initial ) ) . collect( ) ;
266268 this. pages. lock_mut( ) . replace_cloned( pages) ;
267269
268270 Self :: replace_state_with_url( chapter_id, page + 1 ) ;
@@ -814,9 +816,10 @@ impl Reader {
814816 }
815817
816818 fn image_src_signal ( & self , index : usize , preload_prev : usize , preload_next : usize , page : String , status : PageStatus ) -> impl Signal < Item = Option < String > > + use < > {
819+ let source_id = self . source_id . get ( ) ;
817820 self . current_page . signal_cloned ( ) . map ( move |current_page| {
818821 if ( index >= current_page. saturating_sub ( preload_prev) && index <= current_page + preload_next) || matches ! ( status, PageStatus :: Loaded ) {
819- Some ( proxied_image_url ( & page) )
822+ Some ( proxied_image_url ( & page, source_id ) )
820823 } else {
821824 None
822825 }
0 commit comments