diff options
Diffstat (limited to 'app/src/main/java/org/terst/feedreader/ui/ReaderWebView.kt')
| -rw-r--r-- | app/src/main/java/org/terst/feedreader/ui/ReaderWebView.kt | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/app/src/main/java/org/terst/feedreader/ui/ReaderWebView.kt b/app/src/main/java/org/terst/feedreader/ui/ReaderWebView.kt index 31fcb02..b13fc58 100644 --- a/app/src/main/java/org/terst/feedreader/ui/ReaderWebView.kt +++ b/app/src/main/java/org/terst/feedreader/ui/ReaderWebView.kt @@ -22,6 +22,7 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.viewinterop.AndroidView import androidx.compose.ui.window.Dialog import androidx.compose.ui.window.DialogProperties +import org.terst.feedreader.data.DEFAULT_READER_FONT_SIZE_PX // In-memory only (process lifetime, not persisted to disk) -- scoped to "don't lose my // place if Next/Previous takes me away and back," not to surviving an app restart. A @@ -344,7 +345,13 @@ private fun escapeHtml(text: String): String = text // on whatever heading Readability happened to keep in bodyContent (increasingly nothing -- // see ReaderExtractor's <header> stripping) or on the top app bar's title, which truncates // to one line and was the only place a long title showed up before this. -fun wrapReaderHtml(bodyContent: String, title: String? = null, publishedAt: Long? = null, imageUrl: String? = null): String { +fun wrapReaderHtml( + bodyContent: String, + title: String? = null, + publishedAt: Long? = null, + imageUrl: String? = null, + fontSizePx: Int = DEFAULT_READER_FONT_SIZE_PX +): String { val processedBody = replaceGenericIframes(replaceYouTubeIframes(bodyContent)) // Some feeds' body HTML never embeds an image at all -- the only image they give us // is a separate RSS media:content/enclosure field (ArticleEntity.imageUrl), which @@ -369,7 +376,7 @@ fun wrapReaderHtml(bodyContent: String, title: String? = null, publishedAt: Long return """ <html><head><meta name="viewport" content="width=device-width, initial-scale=1"> <style> - body { font-family: sans-serif; font-size: 18px; line-height: 1.5; padding: 16px; + body { font-family: sans-serif; font-size: ${fontSizePx}px; line-height: 1.5; padding: 16px; background-color: #121212; color: #e1e1e1; } h1.article-title { font-size: 1.5em; line-height: 1.3; margin: 0 0 0.6em 0; } p.article-date { font-size: 0.85em; color: #9aa0a6; margin: -0.4em 0 1em 0; } |
