Colors need to be normalized per border so that the multiplier is applied to the sum of the normalized colors.
Normalize the returned color with adjusted thresholds compared to the normalization for the color extraction.
During the extraction the normalization shouldn't be too aggressive to prevent messing up the detection for the color with the highest proportion. Once we have detected the color, we want to be more aggressive about normalizing white and black colors to ensure the background color matches true white and black instead of being slightly off
In case the double page reading mode was used and the current page was a double page, the transition got messed up due to the page text wrapping and growing in height
With 4f4ca98290 the chapter queries are getting evicted to trigger a refetch. This caused the reader to enter the loading state, which messed up the current reading position.
Observers got disconnected and started again.
Since the images have already been rendered at this point of time, the mutation observer on the scroll element does not detect them anymore.
Thus, exiting image resizes were not observed anymore and did not trigger the preservation logic
This was only was noticeable in case the transition page was disabled.
Due to potential layout shifts and scrolling the initial page into view, the infinite chapter logic got triggered and loaded the previous chapter.
This is not a 100% guarantee that it won't happen, slow devices might still run into this issue
The previous/next chapter only ever preloaded the first page, ignoring available preload contingent.
I.e., if all leading/trailing pages of the current chapter were loaded, the reader did not keep preloading the previous/next chapters pages
The safe area inset wasn't applied everywhere, which potentially caused the scrollbar to appear while the pages should be fitting the screen
fixes#1102
Was only noticeable in the mobile reader ui because the desktop one hides this component and uses its own logic.
It resulted in the previous/next button not being clickable because the current page component was overlaying it