v84 fw 4.38.21908

master
Jay Logan 2023-09-13 16:45:15 -05:00
parent da87fdd961
commit 7099fde7f4
4 changed files with 93 additions and 108 deletions

View File

@ -1,5 +1,5 @@
## Sixthhokage1's kobopatch config
version: 4.35.20400
version: 4.38.21908
#in: src/latest-elipsa.zip
in: src/latest-clara2e.zip
out: out/KoboRoot.tgz

View File

@ -6,5 +6,5 @@ Remove PDF map widget shown during panning:
- BaseAddress: {Sym: "N3AdobeReader::showMapWidget()"}
# tail: N3AdobeReader::updatePanningMap() -> N3AdobeReader::hideMapWidget()
# TODO: figure out what broke the plt parsing in kobopatch for libadobe in 18730+
- ReplaceBytes: {Offset: 80, FindInstBW: 0x1C134, ReplaceInstBW: 0x1B42C}
- ReplaceBytes: {Offset: 192, FindInstBW: 0x1C134, ReplaceInstBW: 0x1B42C}
- ReplaceBytes: {Offset: 80, FindInstBW: 0x1C224, ReplaceInstBW: 0x1B51C}
- ReplaceBytes: {Offset: 192, FindInstBW: 0x1C224, ReplaceInstBW: 0x1B51C}

View File

@ -51,7 +51,7 @@ My 24 line spacing values:
- ReplaceBytes: {Offset: 20, FindInstBLX: {SymPLT: "QList<double>::append(double const&)"}, ReplaceH: 00 00 00 00} # clear out the BLX
- ReplaceBytes: {Offset: 0, FindH: 00 00, ReplaceH: A9 46} # mov sb, r5
- ReplaceBytes: {Offset: 2, FindH: 00 00, ReplaceH: 00 25} # mov r5, #0
- ReplaceBytes: {Offset: 4, FindH: 6C A3, ReplaceH: ED 00} # lsls r5, r5, #3
- ReplaceBytes: {Offset: 4, FindH: 6D A3, ReplaceH: ED 00} # lsls r5, r5, #3
# loop to load 14 vals from new table
- ReplaceBytes: {Offset: 6, FindH: D3 E9, ReplaceH: 20 46} # mov r0, r4
- ReplaceBytes: {Offset: 8, FindH: 00 23, ReplaceH: 04 A1} # adr r1, #0x10
@ -62,7 +62,7 @@ My 24 line spacing values:
- ReplaceBytes: {Offset: 20, FindH: 00 00, ReplaceH: F7 D1} # bne #-10
# jump to the rest of the new code
- ReplaceBytes: {Offset: 22, FindH: 00 00, ReplaceH: 7B E0} # b #250 (356 (84 + 22))
- ReplaceBytes: {Offset: 24, FindH: 69 A3 D3 E9, ReplaceInstNOP: true} # unused
- ReplaceBytes: {Offset: 24, FindH: 6A A3 D3 E9, ReplaceInstNOP: true} # unused
# new table: 14 8-aligned doubles
- BaseAddress: {Sym: "ReadingSettings::lineHeightScalars() const", Rel: 112} # right after previous instruction (84 + 24 + 4)
- ReplaceBytes: {Offset: 12, FindInstBLX: {SymPLT: "QList<double>::append(double const&)"}, ReplaceH: 00 00 00 00} # first, clear out the BLXs in the way
@ -70,20 +70,20 @@ My 24 line spacing values:
- ReplaceBytes: {Offset: 58, FindInstBLX: {SymPLT: "QList<double>::append(double const&)"}, ReplaceH: 00 00 00 00}
- ReplaceBytes: {Offset: 78, FindInstBLX: {SymPLT: "QList<double>::append(double const&)"}, ReplaceH: 00 00 00 00}
- ReplaceBytes: {Offset: 100, FindInstBLX: {SymPLT: "QList<double>::append(double const&)"}, ReplaceH: 00 00 00 00}
- ReplaceBytes: {Offset: 0, FindH: 00 23 07 F1 80 01 20 46, ReplaceH: 00 00 00 00 00 00 F0 3F} # table of 1.0f values, to be replaced later
- ReplaceBytes: {Offset: 0, FindH: 00 23 07 f1 80 01 20 46, ReplaceH: 00 00 00 00 00 00 F0 3F} # table of 1.0f values, to be replaced later
- ReplaceBytes: {Offset: 8, FindH: 61 E9 1A 23 00 00 00 00, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 16, FindH: 66 A3 D3 E9 00 23 07 F1, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 16, FindH: 67 A3 D3 E9 00 23 07 F1, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 24, FindH: 80 01 20 46 61 E9 18 23, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 32, FindH: 00 00 00 00 43 F2 33 33, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 40, FindH: 4F F0 33 32 C3 F6 F3 73, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 48, FindH: 07 F1 80 01 20 46 61 E9, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 56, FindH: 16 23 00 00 00 00 5D A3, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 56, FindH: 16 23 00 00 00 00 5E A3, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 64, FindH: D3 E9 00 23 07 F1 80 01, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 72, FindH: 20 46 61 E9 14 23 00 00, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 80, FindH: 00 00 00 23 00 22 C3 F6, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 88, FindH: F8 73 07 F1 80 01 20 46, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 96, FindH: 61 E9 12 23 00 00 00 00, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 104, FindH: 54 A3 D3 E9 00 23 07 F1, ReplaceH: 00 00 00 00 00 00 F0 3F}
- ReplaceBytes: {Offset: 104, FindH: 55 A3 D3 E9 00 23 07 F1, ReplaceH: 00 00 00 00 00 00 F0 3F}
# jump target after table
- BaseAddress: {Sym: "ReadingSettings::lineHeightScalars() const", Rel: 356} # starting right after the second-last QList<double>::append(double const&)
- ReplaceBytes: {Offset: 18, FindInstBLX: {SymPLT: "QList<double>::append(double const&)"}, ReplaceH: 00 00 00 00} # clear the BLX in the way of the last two replacements
@ -91,7 +91,7 @@ My 24 line spacing values:
- ReplaceBytes: {Offset: 0, FindH: 00 23, ReplaceH: 00 25} # movs r5, #0
# loop to load 10 vals from old table (CDCC CCCC CCCC F03F 1F85)
- ReplaceBytes: {Offset: 2, FindH: 00 22, ReplaceH: 20 46} # mov r0, r4
- ReplaceBytes: {Offset: 4, FindH: C4 F2 08 03, ReplaceH: 0F F2 A0 01} # adr.w r1, #164 (old_table_start - (356 + 4) = 524 - 360)
- ReplaceBytes: {Offset: 4, FindH: C4 F2 08 03, ReplaceH: 0F F2 A4 01} # adr.w r1, #168 (old_table_start - (356 + 4) = 524 - 360)
- ReplaceBytes: {Offset: 8, FindH: 07 F1, ReplaceH: 29 44} # add r1, r5
- ReplaceBytes: {Offset: 10, FindH: 80 01 20 46, ReplaceInstBLX: {SymPLT: "QList<double>::append(double const&)"}}
- ReplaceBytes: {Offset: 14, FindH: 61 E9, ReplaceH: 08 35} # adds r5, #8 (sizeof(double))
@ -306,22 +306,13 @@ Custom Sleep/Power-off timeouts:
- ReplaceString: {Offset: 32, Find: "45 mins", Replace: "2 hours"}
- ReplaceString: {Offset: 38, Find: "60 mins", Replace: "4 hours"}
# Replace values MOVed then added to the list in N3SettingsPowerView::initChoices:
# Actual values used for sleep menu
- BaseAddress: {Sym: "N3SettingsPowerView::initChoices()", Rel: 12}
- ReplaceInt: {Offset: 0, Find: 5, Replace: 10}
- ReplaceInt: {Offset: 88, Find: 10, Replace: 20}
- ReplaceInt: {Offset: 148, Find: 15, Replace: 30}
- ReplaceInt: {Offset: 208, Find: 30, Replace: 60}
- ReplaceInt: {Offset: 268, Find: 45, Replace: 120}
- ReplaceInt: {Offset: 328, Find: 60, Replace: 240}
# Actual values used for power menu
- BaseAddress: {Sym: "N3SettingsPowerView::initChoices()", Rel: 466}
- ReplaceInt: {Offset: 0, Find: 5, Replace: 10}
- ReplaceInt: {Offset: 60, Find: 10, Replace: 20}
- ReplaceInt: {Offset: 118, Find: 15, Replace: 30}
- ReplaceInt: {Offset: 176, Find: 30, Replace: 60}
- ReplaceInt: {Offset: 234, Find: 45, Replace: 120}
- ReplaceInt: {Offset: 290, Find: 60, Replace: 240}
- BaseAddress: "N3SettingsPowerView::initChoices()"
- ReplaceInt: {Offset: 56, Find: 5, Replace: 10}
- ReplaceInt: {Offset: 118, Find: 10, Replace: 20}
- ReplaceInt: {Offset: 180, Find: 15, Replace: 30}
- ReplaceInt: {Offset: 240, Find: 30, Replace: 60}
- ReplaceInt: {Offset: 300, Find: 45, Replace: 120}
- ReplaceInt: {Offset: 360, Find: 60, Replace: 240}
Set KePub hyphenation:
- Enabled: no
@ -498,10 +489,10 @@ Dictionary text font-family/font-size/line-height:
GloHD - serif (Georgia) 32px 1.4em
AuraONE - serif (Georgia) 42px 1.4em
# Stage 1: Change DictionaryView to remove %variables
# Stage 1: Change DictionaryView to remove some %variables
# from:
# body { padding-left: %3px; }
# body { font: %1px serif; line-height: 1.4em; }
# body { font: %1px %4, serif; line-height: 1.4em; }
# span.word { font-weight: bold; font-size: 130%; margin-left: -%3px; }
# div.descriptionFont { font-family: serif; }
# ol { font-size: %1px; margin-left: %2em; margin-top: 0px; }
@ -511,7 +502,7 @@ Dictionary text font-family/font-size/line-height:
# .sc, .sc * { font-variant: small-caps; }
# .block, .border { border-radius: 3px; padding: 0em .2em; font-size: 90%; }
# to:
# body {font-size:%1px; line-height:1.40em; font-family:serif ;}
# body {font-size:%1px; line-height:1.40em; font-family:%4, serif ;}
# body {padding-left:0.5em}
# span.word {font-weight:bold; font-size:130%; margin-left:-0.3em}
# ol {margin-left:1em; margin-top:0}
@ -524,8 +515,8 @@ Dictionary text font-family/font-size/line-height:
# ##### N.B. Do not change the next 4 lines #####
- FindReplaceString:
Find: "body { padding-left: %3px; }\nbody { font: %1px serif; line-height: 1.4em; }\nspan.word { font-weight: bold; font-size: 130%; margin-left: -%3px; }\ndiv.descriptionFont { font-family: serif; }\nol { font-size: %1px; margin-left: %2em; margin-top: 0px; }\nol p { font-size: %1px; }\ni, i * { font-style: italic; }\nb, b * { font-weight: bold; }\n.sc, .sc * { font-variant: small-caps; }\n.block, .border { border-radius: 3px; padding: 0em .2em; font-size: 90%; }\n"
Replace: "body {font-size:%1px; line-height:1.40em; font-family:serif ;}\nbody {padding-left:0.5em}\nspan.word {font-weight:bold; font-size:130%; margin-left:-0.3em}\nol {margin-left:1em; margin-top:0}\nblockquote {margin:.3em 0 .3em 1em}\nblockquote>blockquote {margin:-.3em 0 0 2em}\ni, i * {font-style:italic}\nb, b * {font-weight:bold}\n.sc, .sc * {font-variant:small-caps}\n.block, .border {border-radius:3px; padding:0 .2em; font-size:90%}\n"
Find: "body { padding-left: %3px; }\nbody { font: %1px %4, serif; line-height: 1.4em; }\nspan.word { font-weight: bold; font-size: 130%; margin-left: -%3px; }\ndiv.descriptionFont { font-family: serif; }\nol { font-size: %1px; margin-left: %2em; margin-top: 0px; }\nol p { font-size: %1px; }\ni, i * { font-style: italic; }\nb, b * { font-weight: bold; }\n.sc, .sc * { font-variant: small-caps; }\n.block, .border { border-radius: 3px; padding: 0em .2em; font-size: 90%; }\n"
Replace: "body {font-size:%1px; line-height:1.40em; font-family:%4, serif ;}\nbody {padding-left:0.5em}\nspan.word {font-weight:bold; font-size:130%; margin-left:-0.3em}\nol {margin-left:1em; margin-top:0}\nblockquote {margin:.3em 0 .3em 1em}\nblockquote>blockquote {margin:-.3em 0 0 2em}\ni, i * {font-style:italic}\nb, b * {font-weight:bold}\n.sc, .sc * {font-variant:small-caps}\n.block, .border {border-radius:3px; padding:0 .2em; font-size:90%}\n"
MustMatchLength: yes
# ##### N.B. Do not change anything above this line #####
@ -535,10 +526,10 @@ Dictionary text font-family/font-size/line-height:
# The first example will use the default sans-serif font, i.e. Avenir for most non-CJK GUI language locales
# Un-comment ONE ONLY of the following 4 ReplaceString examples
#- ReplaceString: {Offset: 54, Find: "serif ", Replace: "sans-serif", MustMatchLength: yes}
#- ReplaceString: {Offset: 54, Find: "serif ", Replace: "'KBJ-TsukuMin Pr6N RB'", MustMatchLength: yes}
#- ReplaceString: {Offset: 54, Find: "serif ", Replace: "'KBJ-UDKakugo Pr6N M'", MustMatchLength: yes}
#- ReplaceString: {Offset: 54, Find: "serif ", Replace: "'AR UDJingxihei'", MustMatchLength: yes}
#- ReplaceString: {Offset: 54, Find: "%4, serif ", Replace: "sans-serif", MustMatchLength: yes}
#- ReplaceString: {Offset: 54, Find: "%4, serif ", Replace: "'KBJ-TsukuMin Pr6N RB'", MustMatchLength: yes}
#- ReplaceString: {Offset: 54, Find: "%4, serif ", Replace: "'KBJ-UDKakugo Pr6N M'", MustMatchLength: yes}
#- ReplaceString: {Offset: 54, Find: "%4, serif ", Replace: "'AR UDJingxihei'", MustMatchLength: yes}
# Un-comment and edit next line to change font-size
#- ReplaceString: {Offset: 16, Find: "%1px", Replace: "32px", MustMatchLength: yes}
@ -886,7 +877,7 @@ Hide browser from beta features:
- Description: Hides the built-in browser from beta features.
- ReplaceBytes:
Base: "N3SettingsExtrasView::N3SettingsExtrasView(QWidget*)"
Offset: 1392
Offset: 1524
FindInstBLX: {SymPLT: "Device::isParentalControlEnabled() const"}
ReplaceH: 4F F0 01 00
- ReplaceBytes:
@ -1091,14 +1082,14 @@ Never show Kobo Plus, wishlist, and points SmartLinks:
- Description: Removes Kobo Plus, wishlist, and points SmartLinks from the rotation.
- BaseAddress: "ActivityManager::smartLinkGeneralMessage(Device const&)"
# NOP Kobo Plus (2):
- ReplaceBytes: {Offset: 634, FindH: 02 23, CheckOnly: true} # MOVS r3, #2
- ReplaceBytes: {Offset: 644, FindInstBLX: {SymPLT: "QVector<SmartLinkType>::append(SmartLinkType const&)"}, ReplaceInstNOP: true}
- ReplaceBytes: {Offset: 310, FindH: 02 23, CheckOnly: true} # MOVS r3, #2
- ReplaceBytes: {Offset: 320, FindInstBLX: {SymPLT: "QVector<SmartLinkType>::append(SmartLinkType const&)"}, ReplaceInstNOP: true}
# NOP wishlist (14):
- ReplaceBytes: {Offset: 608, FindH: 0E 23, CheckOnly: true} # MOVS r3, #14
- ReplaceBytes: {Offset: 618, FindInstBLX: {SymPLT: "QVector<SmartLinkType>::append(SmartLinkType const&)"}, ReplaceInstNOP: true}
- ReplaceBytes: {Offset: 284, FindH: 0E 23, CheckOnly: true} # MOVS r3, #14
- ReplaceBytes: {Offset: 294, FindInstBLX: {SymPLT: "QVector<SmartLinkType>::append(SmartLinkType const&)"}, ReplaceInstNOP: true}
# NOP super points (17):
- ReplaceBytes: {Offset: 1492, FindH: 11 23, CheckOnly: true} # MOVS r3, #17
- ReplaceBytes: {Offset: 1504, FindInstBLX: {SymPLT: "QVector<SmartLinkType>::append(SmartLinkType const&)"}, ReplaceInstNOP: true}
- ReplaceBytes: {Offset: 1514, FindH: 11 23, CheckOnly: true} # MOVS r3, #17
- ReplaceBytes: {Offset: 1526, FindInstBLX: {SymPLT: "QVector<SmartLinkType>::append(SmartLinkType const&)"}, ReplaceInstNOP: true}
###
@ -1155,7 +1146,7 @@ Larger Sleep/Power-off timeouts:
- PatchGroup: Sleep/Power-off timeouts
- Description: |
Increase the available sleep/power-off timeouts to larger values (up to a
few weeks). To customize this patch, see https://pgaskin.net/kobopatch-patches/lgrpwroff-15505.html .
few weeks). To customize this patch, see https://pgaskin.net/kobopatch-patches/lgrpwroff-21533.html .
IMPORTANT - Although this patch has been tested by multiple users and
confirmed to be working, the interaction between the RTC timer and Nickel
@ -1189,19 +1180,13 @@ Larger Sleep/Power-off timeouts:
- ReplaceString: {Offset: 32, Find: "45 mins", Replace: "12h5m"}
- ReplaceString: {Offset: 38, Find: "60 mins", Replace: "24h1m"}
# Values (see https://www.mobileread.com/forums/showpost.php?p=3887105)
- FindBaseAddressSymbol: "N3SettingsPowerView::initChoices()"
- ReplaceInt: {Offset: 11, Find: 5, Replace: 1}
- ReplaceInt: {Offset: 465, Find: 5, Replace: 1}
- ReplaceInt: {Offset: 99, Find: 10, Replace: 4}
- ReplaceInt: {Offset: 525, Find: 10, Replace: 4}
- ReplaceInt: {Offset: 159, Find: 15, Replace: 7}
- ReplaceInt: {Offset: 583, Find: 15, Replace: 7}
- ReplaceInt: {Offset: 219, Find: 30, Replace: 28}
- ReplaceInt: {Offset: 641, Find: 30, Replace: 28}
- ReplaceInt: {Offset: 279, Find: 45, Replace: 83}
- ReplaceInt: {Offset: 699, Find: 45, Replace: 83}
- ReplaceInt: {Offset: 339, Find: 60, Replace: 165}
- ReplaceInt: {Offset: 755, Find: 60, Replace: 165}
- BaseAddress: "N3SettingsPowerView::initChoices()"
- ReplaceInt: {Offset: 56, Find: 5, Replace: 1}
- ReplaceInt: {Offset: 118, Find: 10, Replace: 4}
- ReplaceInt: {Offset: 180, Find: 15, Replace: 7}
- ReplaceInt: {Offset: 240, Find: 30, Replace: 28}
- ReplaceInt: {Offset: 300, Find: 45, Replace: 83}
- ReplaceInt: {Offset: 360, Find: 60, Replace: 165}
Allow rotation on all devices:
- Enabled: no
@ -1287,12 +1272,12 @@ Swap reading header/footer:
ReplaceH: C0 69 # LDR r0, [r0, #0x1C]
- ReplaceBytes:
Base: "ReadingView::updatePercentageFooter(QString const&)"
Offset: 172
Offset: 182
FindH: C0 69 # LDR r0, [r0, #0x1C]
ReplaceH: 00 69 # LDR r0, [r0, #0x10]
- ReplaceBytes:
Base: "ReadingView::updatePercentageFooter(QString const&)"
Offset: 286
Offset: 296
FindH: C0 69 # LDR r0, [r0, #0x1C]
ReplaceH: 00 69 # LDR r0, [r0, #0x10]
- ReplaceBytes:
@ -1334,7 +1319,7 @@ Customize ComfortLight settings:
# In an unnamed subroutine two layers into FrontLightPopupController::loadView
# (find it by going back from QTime::addSecs), the times for the dropdown are
# generated into a QVector<QPair<QString, QTime>> with a simple loop.
- BaseAddress: 0xCED04C # find the base of the unnamed subroutine with the x-ref to _ZN5QTimeC1Eiiii
- BaseAddress: 0xE82E2C # find the base of the unnamed subroutine with the x-ref to _ZN5QTimeC1Eiiii
#
# Change the initial hour / first bedtime dropdown item passed to the QTime
# constructor (mov r1, #21):

View File

@ -16,10 +16,10 @@ Reduce top/bottom page spacer:
# Glo/Aura/Aura2ed: 32px --> 16px
- Find: "MediumVertSpacer[qApp_deviceIsPhoenix=true] {\n min-height: 32px;\n max-height: 32px;\n}"
Replace: "MediumVertSpacer[qApp_deviceIsPhoenix=true] {\n min-height: 16px;\n max-height: 16px;\n}"
# AuraHD/H2O/GloHD/ClaraHD: 44px --> 22px
# AuraHD/H2O/GloHD/ClaraHD/Clara2E: 44px --> 22px
- Find: "MediumVertSpacer[qApp_deviceIsDragon=true] {\n min-height: 44px;\n max-height: 44px;\n}"
Replace: "MediumVertSpacer[qApp_deviceIsDragon=true] {\n min-height: 22px;\n max-height: 22px;\n}"
# AuraOne/Forma/Sage/Elipsa: 56px --> 28px
# AuraOne/Forma/Sage/Elipsa/Elipsa2E: 56px --> 28px
- Find: "MediumVertSpacer[qApp_deviceIsDaylight=true] {\n min-height: 56px;\n max-height: 56px;\n}"
Replace: "MediumVertSpacer[qApp_deviceIsDaylight=true] {\n min-height: 28px;\n max-height: 28px;\n}"
# LibraH2O/Libra2: 50px --> 25px
@ -36,9 +36,9 @@ Custom synopsis details line spacing:
- {Find: "line-height: 1.45em;", Replace: "line-height: 1.3em;"}
# Glo/Aura/Aura2E (Phoenix)
- {Find: "line-height: 1.4em;", Replace: "line-height: 1.3em;"}
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD (Dragon) and
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E (Dragon) and
# LibraH2O/Libra2 (Storm) and
# AuraOne/Forma/Sage/Elipsa (Daylight)
# AuraOne/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- {Find: "line-height: 1.35em;", Replace: "line-height: 1.3em;"}
Custom synopsis font size:
@ -50,9 +50,9 @@ Custom synopsis font size:
- {Find: "font-size: 19px;", Replace: "font-size: 20px;"} # Touch/Mini (Trilogy)
- {Find: "font-size: 23px;", Replace: "font-size: 25px;"} # Glo/Aura/Aura2E/Nia (Phoenix)
- {Find: "font-size: 29px;", Replace: "font-size: 32px;"} # AuraHD/AuraH2O/AuraH2O2 (Dragon)
- {Find: "font-size: 32px;", Replace: "font-size: 35px;"} # GloHD/ClaraHD (Alyssum/Nova)
- {Find: "font-size: 32px;", Replace: "font-size: 35px;"} # GloHD/ClaraHD/Clara2E (Alyssum/Nova)
- {Find: "font-size: 34px;", Replace: "font-size: 37px;"} # LibraH2O/Libra2 (Storm)
- {Find: "font-size: 37px;", Replace: "font-size: 40px;"} # AuraONE/Forma/Sage/Elipsa (Daylight)
- {Find: "font-size: 37px;", Replace: "font-size: 40px;"} # AuraONE/Forma/Sage/Elipsa/Elipsa2E (Daylight)
Increase home screen cover size:
- Enabled: no
@ -67,10 +67,10 @@ Increase home screen cover size:
# Glo/Aura/Aura2E/Nia (Phoenix)
- {Find: "qproperty-leftMargin: 40px;", Replace: "qproperty-leftMargin: 16px;"}
- {Find: "qproperty-rightMargin: 40px;", Replace: "qproperty-rightMargin: 16px;"}
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD (Dragon)
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E (Dragon)
- {Find: "qproperty-leftMargin: 57px;", Replace: "qproperty-leftMargin: 22px;"}
- {Find: "qproperty-rightMargin: 57px;", Replace: "qproperty-rightMargin: 22px;"}
# AuraONE/Forma/Sage/Elipsa (Daylight)
# AuraONE/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- {Find: "qproperty-leftMargin: 74px;", Replace: "qproperty-leftMargin: 29px;"}
- {Find: "qproperty-rightMargin: 74px;", Replace: "qproperty-rightMargin: 29px;"}
# LibraH2O/Libra2 (Storm)
@ -99,10 +99,10 @@ Dictionary pop-up - increase available text area:
# Glo/Aura/Aura2/Nia
- Find: "#dictionary[qApp_deviceIsPhoenix=true] {\n margin-top: 20px;\n margin-left: 20px;\n}"
Replace: "#dictionary[qApp_deviceIsPhoenix=true] {\n margin-top: 7px;\n margin-left: 0px;\n}"
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/LibraH2O/Libra2
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E/LibraH2O/Libra2
- Find: "#dictionary[qApp_deviceIsDragon=true] {\n margin-top: 30px;\n margin-left: 30px;\n}"
Replace: "#dictionary[qApp_deviceIsDragon=true] {\n margin-top: 10px;\n margin-left: 0px;\n}"
# AuraOne/Forma/Sage/Elipsa
# AuraOne/Forma/Sage/Elipsa/Elipsa2E
- Find: "#dictionary[qApp_deviceIsDaylight=true] {\n margin-top: 42px;\n margin-left: 42px;\n}"
Replace: "#dictionary[qApp_deviceIsDaylight=true] {\n margin-top: 14px;\n margin-left: 0px;\n}"
#
@ -113,10 +113,10 @@ Dictionary pop-up - increase available text area:
# Glo/Aura/Aura2/Nia
- Find: "#header[qApp_deviceIsPhoenix=true] {\n max-height: 60px;\n min-height: 60px;\n}"
Replace: "#header[qApp_deviceIsPhoenix=true] {\n max-height: 50px;\n min-height: 50px;\n}"
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/LibraH2O/Libra2
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E/LibraH2O/Libra2
- Find: "#header[qApp_deviceIsDragon=true] {\n max-height: 90px;\n min-height: 90px;\n}"
Replace: "#header[qApp_deviceIsDragon=true] {\n max-height: 70px;\n min-height: 70px;\n}"
# AuraOne/Forma/Sage/Elipsa
# AuraOne/Forma/Sage/Elipsa/Elipsa2E
- Find: "#header[qApp_deviceIsDaylight=true] {\n max-height: 120px;\n min-height: 120px;\n}"
Replace: "#header[qApp_deviceIsDaylight=true] {\n max-height: 90px;\n min-height: 90px;\n}"
#
@ -127,10 +127,10 @@ Dictionary pop-up - increase available text area:
# Glo/Aura/Aura2/Nia
- Find: "#mainContainer[qApp_deviceIsPhoenix=true] {\n qproperty-leftMargin: 16px;\n qproperty-rightMargin: 16px;\n}"
Replace: "#mainContainer[qApp_deviceIsPhoenix=true] {\n qproperty-leftMargin: 8px;\n qproperty-rightMargin: 8px;\n}"
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E
- Find: "#mainContainer[qApp_deviceIsDragon=true] {\n qproperty-leftMargin: 22px;\n qproperty-rightMargin: 22px;\n}"
Replace: "#mainContainer[qApp_deviceIsDragon=true] {\n qproperty-leftMargin: 11px;\n qproperty-rightMargin: 11px;\n}"
# AuraOne/Forma/Sage/Elipsa
# AuraOne/Forma/Sage/Elipsa/Elipsa2E
- Find: "#mainContainer[qApp_deviceIsDaylight=true] {\n qproperty-leftMargin: 28px;\n qproperty-rightMargin: 28px;\n}"
Replace: "#mainContainer[qApp_deviceIsDaylight=true] {\n qproperty-leftMargin: 14px;\n qproperty-rightMargin: 14px;\n}"
# LibraH2O/Libra2
@ -148,12 +148,12 @@ Dictionary pop-up - increase available text area:
Find: "DictionaryViewFooter[qApp_deviceIsPhoenix=true] {\n max-height: 60px;\n min-height: 60px;\n}"
Replace: "DictionaryViewFooter[qApp_deviceIsPhoenix=true] {\n max-height: 50px;\n min-height: 50px;\n}"
MustMatchLength: yes
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/LibraH2O/Libra2
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E/LibraH2O/Libra2
- FindReplaceString:
Find: "DictionaryViewFooter[qApp_deviceIsDragon=true] {\n max-height: 90px;\n min-height: 90px;\n}"
Replace: "DictionaryViewFooter[qApp_deviceIsDragon=true] {\n max-height: 60px;\n min-height: 60px;\n}"
MustMatchLength: yes
# AuraOne/Forma/Sage/Elipsa
# AuraOne/Forma/Sage/Elipsa/Elipsa2E
- FindReplaceString:
Find: "DictionaryViewFooter[qApp_deviceIsDaylight=true] {\n max-height: 120px;\n min-height: 120px;\n}"
Replace: "DictionaryViewFooter[qApp_deviceIsDaylight=true] {\n max-height: 80px;\n min-height: 80px;\n}"
@ -173,15 +173,15 @@ Increase Book Details synopsis area:
# Portrait mode: #bookInfoWidget[isLandscape=false]:
- {Find: "height: 300px;", Replace: "height: 200px;"} #Touch/Mini
- {Find: "height: 390px;", Replace: "height: 230px;"} #Glo/Aura/Aura2/Nia
- {Find: "height: 550px;", Replace: "height: 370px;"} #AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD
- {Find: "height: 550px;", Replace: "height: 370px;"} #AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD/Clara2E
- {Find: "height: 642px;", Replace: "height: 425px;"} #LibraH2O/Libra2
- {Find: "height: 715px;", Replace: "height: 500px;"} #AuraOne/Forma/Sage/Elipsa
- {Find: "height: 715px;", Replace: "height: 500px;"} #AuraOne/Forma/Sage/Elipsa/Elipsa2E
# Landscape mode: #bookInfoWidget[isLandscape=true]:
- {Find: "height: 210px;", Replace: "height: 200px;"} #Touch/Mini
- {Find: "height: 265px;", Replace: "height: 230px;"} #Glo/Aura/Aura2/Nia
- {Find: "height: 420px;", Replace: "height: 370px;"} #AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD
- {Find: "height: 420px;", Replace: "height: 370px;"} #AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD/Clara2E
- {Find: "height: 490px;", Replace: "height: 425px;"} #LibraH2O/Libra2
- {Find: "height: 540px;", Replace: "height: 500px;"} #AuraOne/Forma/Sage/Elipsa
- {Find: "height: 540px;", Replace: "height: 500px;"} #AuraOne/Forma/Sage/Elipsa/Elipsa2E
Increase library cover size:
- Enabled: no
@ -200,10 +200,10 @@ Increase library cover size:
# Glo/Aura/Aura2/Nia (Phoenix)
- {Find: "width: 70px;", Replace: "width: 82px;"}
- {Find: "height: 110px;", Replace: "height: 130px;"}
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD (Dragon)
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD/Clara2E (Dragon)
- {Find: "width: 108px;", Replace: "width: 122px;"}
- {Find: "height: 168px;", Replace: "height: 190px;"}
# AuraOne/Forma/Sage/Elipsa (Daylight)
# AuraOne/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- {Find: "width: 140px;", Replace: "width: 164px;"}
- {Find: "height: 218px;", Replace: "height: 255px;"}
# LibraH2O/Libra2 (Storm)
@ -235,11 +235,11 @@ Custom collection/author header title font:
- {Find: "font-size: 16px;", Replace: "font-size: 28px;"}
# Glo/Aura/Aura2/Nia (Phoenix)
- {Find: "font-size: 20px;", Replace: "font-size: 36px;"}
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD (Dragon)
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD/Clara2E (Dragon)
- {Find: "font-size: 28px;", Replace: "font-size: 42px;"}
# LibraH2O/Libra2 (Storm)
- {Find: "font-size: 32px;", Replace: "font-size: 46px;"}
# AuraOne/Forma/Sage/Elipsa (Daylight)
# AuraOne/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- {Find: "font-size: 36px;", Replace: "font-size: 50px;"}
Reduce new header/footer height:
@ -261,10 +261,10 @@ Reduce new header/footer height:
# Glo/Aura/Aura2/Nia (Phoenix)
- Find: "ReadingFooter[qApp_deviceIsPhoenix=true] {\n min-height: 71px;\n max-height: 71px;\n}"
Replace: "ReadingFooter[qApp_deviceIsPhoenix=true] {\n min-height: 47px;\n max-height: 47px;\n}"
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD (Dragon)
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD/Clara2E (Dragon)
- Find: "ReadingFooter[qApp_deviceIsDragon=true] {\n min-height: 101px;\n max-height: 101px;\n}"
Replace: "ReadingFooter[qApp_deviceIsDragon=true] {\n min-height: 66px;\n max-height: 66px;\n}"
# AuraOne/Forma/Sage/Elipsa (Daylight)
# AuraOne/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- Find: "ReadingFooter[qApp_deviceIsDaylight=true] {\n min-height: 131px;\n max-height: 131px;\n}"
Replace: "ReadingFooter[qApp_deviceIsDaylight=true] {\n min-height: 86px;\n max-height: 86px;\n}"
# LibraH2O/Libra2 (Storm)
@ -325,13 +325,13 @@ Custom header/footer captions:
# Glo/Aura/Aura2/Nia
- Find: "[qApp_deviceIsPhoenix=true] {\n font-size: 17px;\n}"
Replace: "[qApp_deviceIsPhoenix=true] {\n font-size: 17px; margin-top: 0px;\n}"
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD/Clara2E
- Find: "[qApp_deviceIsDragon=true] {\n font-size: 25px;\n}"
Replace: "[qApp_deviceIsDragon=true] {\n font-size: 25px; margin-top: 0px;\n}"
# LibraH2O/Libra2
- Find: "[qApp_deviceIsStorm=true] {\n font-size: 29px;\n}"
Replace: "[qApp_deviceIsStorm=true] {\n font-size: 29px; margin-top: 0px;\n}"
# AuraOne/Forma/Sage/Elipsa
# AuraOne/Forma/Sage/Elipsa/Elipsa2E
- Find: "[qApp_deviceIsDaylight=true] {\n font-size: 32px;\n}"
Replace: "[qApp_deviceIsDaylight=true] {\n font-size: 32px; margin-top: 0px;\n}"
@ -354,11 +354,11 @@ Custom header/footer captions:
# N.B. Touch/Mini/Touch2 could be reduced to 57 with no ill effects
- {Find: "footerMargin: 105;", Replace: "footerMargin:64;"}
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/LibraH2O/Libra2
# N.B. AuraH2O/AuraH2O2/GloHD/ClaraHD could be reduced to 102 with no ill effects
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E/LibraH2O/Libra2
# N.B. AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E could be reduced to 102 with no ill effects
- {Find: "footerMargin: 170;", Replace: "footerMargin:116;"}
# AuraOne/Forma/Sage/Elipsa
# AuraOne/Forma/Sage/Elipsa/Elipsa2E
- {Find: "footerMargin: 221;", Replace: "footerMargin:133;"}
# Don't change anything below. It exists to free up some space for
@ -397,13 +397,13 @@ Custom page navigation scrubber:
# GloHD (Alyssum)
- Find: "[qApp_deviceIsAlyssum=true] {\n font-size: 32px;"
Replace: "[qApp_deviceIsAlyssum=true] {\n font-size: 32px;"
# ClaraHD (Nova)
# ClaraHD/Clara2E (Nova)
- Find: "[qApp_deviceIsNova=true] {\n font-size: 32px;"
Replace: "[qApp_deviceIsNova=true] {\n font-size: 32px;"
# LibraH2O/Libra2 (Storm)
- Find: "[qApp_deviceIsStorm=true] {\n font-size: 34px;"
Replace: "[qApp_deviceIsStorm=true] {\n font-size: 34px;"
# AuraOne/Forma/Sage/Elipsa (Daylight)
# AuraOne/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- Find: "[qApp_deviceIsDaylight=true] {\n font-size: 37px;"
Replace: "[qApp_deviceIsDaylight=true] {\n font-size: 37px;"
@ -434,13 +434,13 @@ Custom page navigation scrubber:
# GloHD (Alyssum)
- Find: "#page[qApp_deviceIsAlyssum=true] {\n font-size: 30px;"
Replace: "#page[qApp_deviceIsAlyssum=true] {\n font-size: 30px;"
# ClaraHD (Nova)
# ClaraHD/Clara2E (Nova)
- Find: "#page[qApp_deviceIsNova=true] {\n font-size: 30px;"
Replace: "#page[qApp_deviceIsNova=true] {\n font-size: 30px;"
# LibraH2O/Libra2 (Storm)
- Find: "#page[qApp_deviceIsStorm=true] {\n font-size: 30px;"
Replace: "#page[qApp_deviceIsStorm=true] {\n font-size: 30px;"
# AuraOne/Forma/Sage/Elipsa (Daylight)
# AuraOne/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- Find: "#page[qApp_deviceIsDaylight=true] {\n font-size: 34px;"
Replace: "#page[qApp_deviceIsDaylight=true] {\n font-size: 34px;"
@ -481,10 +481,10 @@ Series list increase cover thumbnails:
# Glo/Aura/Aura2/Nia
- {Find: "topMargin: 12px;", Replace: "topMargin: 4px;"}
- {Find: "bottomMargin: 12px;", Replace: "bottomMargin: 0px;"}
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD/Clara2E
- {Find: "topMargin: 14px;", Replace: "topMargin: 5px;"}
- {Find: "bottomMargin: 14px;", Replace: "bottomMargin: 0px;"}
# AuraOne/Forma/Sage/Elipsa
# AuraOne/Forma/Sage/Elipsa/Elipsa2E
- {Find: "topMargin: 21px;", Replace: "topMargin: 7px;"}
- {Find: "bottomMargin: 21px;", Replace: "bottomMargin: 0px;"}
# LibraH2O/Libra2
@ -498,10 +498,10 @@ Series list increase cover thumbnails:
# Glo/Aura/Aura2/Nia
- {Find: "width: 70px;", Replace: "width: 83px;"}
- {Find: "height: 115px;", Replace: "height: 137px;"}
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD
# AuraHD/AuraH2O/AuraH202/GloHD/ClaraHD/Clara2E
- {Find: "width: 108px;", Replace: "width: 120px;"}
- {Find: "height: 175px;", Replace: "height: 195px;"}
# AuraOne/Forma/Sage/Elipsa
# AuraOne/Forma/Sage/Elipsa/Elipsa2E
- {Find: "width: 140px;", Replace: "width: 164px;"}
- {Find: "height: 222px;", Replace: "height: 260px;"}
# LibraH2O/Libra2
@ -529,13 +529,13 @@ Increase headlines font:
# Glo/Aura/Aura2E/Nia
- Find: "#tabContainer > N3TabItem[qApp_deviceIsPhoenix=true] {\n font-size: 20px;\n}"
Replace: "#tabContainer > N3TabItem[qApp_deviceIsPhoenix=true] {\n font-size: 36px;\n}"
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E
- Find: "#tabContainer > N3TabItem[qApp_deviceIsDragon=true] {\n font-size: 28px;\n}"
Replace: "#tabContainer > N3TabItem[qApp_deviceIsDragon=true] {\n font-size: 42px;\n}"
# LibraH2O/Libra2
- Find: "#tabContainer > N3TabItem[qApp_deviceIsStorm=true] {\n font-size: 32px;\n}"
Replace: "#tabContainer > N3TabItem[qApp_deviceIsStorm=true] {\n font-size: 46px;\n}"
# AuraONE/Forma/Sage/Elipsa
# AuraONE/Forma/Sage/Elipsa/Elipsa2E
- Find: "#tabContainer > N3TabItem[qApp_deviceIsDaylight=true] {\n font-size: 36px;\n}"
Replace: "#tabContainer > N3TabItem[qApp_deviceIsDaylight=true] {\n font-size: 50px;\n}"
@ -565,13 +565,13 @@ New home screen subtitle custom font:
# Glo/Aura/Aura2E/Nia (Phoenix)
- Find: "MetaDataLabel[qApp_deviceIsPhoenix=true] {\n font-size: 17px;\n}"
Replace: "MetaDataLabel[qApp_deviceIsPhoenix=true] {\n font-size: 18px;\n}"
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD (Dragon)
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E (Dragon)
- Find: "MetaDataLabel[qApp_deviceIsDragon=true] {\n font-size: 24px;\n}"
Replace: "MetaDataLabel[qApp_deviceIsDragon=true] {\n font-size: 26px;\n}"
# LibraH2O/Libra2 (Storm)
- Find: "MetaDataLabel[qApp_deviceIsStorm=true] {\n font-size: 28px;\n}"
Replace: "MetaDataLabel[qApp_deviceIsStorm=true] {\n font-size: 30px;\n}"
# AuraONE/Forma/Sage/Elipsa (Daylight)
# AuraONE/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- Find: "MetaDataLabel[qApp_deviceIsDaylight=true] {\n font-size: 31px;\n}"
Replace: "MetaDataLabel[qApp_deviceIsDaylight=true] {\n font-size: 34px;\n}"
#
@ -582,13 +582,13 @@ New home screen subtitle custom font:
# Glo/Aura/Aura2E/Nia (Phoenix)
- Find: "RegularElidedLabel[qApp_deviceIsPhoenix=true] {\n font-size: 26px;\n}"
Replace: "RegularElidedLabel[qApp_deviceIsPhoenix=true] {\n font-size: 26px;\n}"
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD (Dragon)
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E (Dragon)
- Find: "RegularElidedLabel[qApp_deviceIsDragon=true] {\n font-size: 36px;\n}"
Replace: "RegularElidedLabel[qApp_deviceIsDragon=true] {\n font-size: 36px;\n}"
# LibraH2O/Libra2 (Storm)
- Find: "RegularElidedLabel[qApp_deviceIsStorm=true] {\n font-size: 42px;\n}"
Replace: "RegularElidedLabel[qApp_deviceIsStorm=true] {\n font-size: 42px;\n}"
# AuraONE/Forma/Sage/Elipsa (Daylight)
# AuraONE/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- Find: "RegularElidedLabel[qApp_deviceIsDaylight=true] {\n font-size: 47px;\n}"
Replace: "RegularElidedLabel[qApp_deviceIsDaylight=true] {\n font-size: 47px;\n}"
@ -609,10 +609,10 @@ Remove footer (row3) and increase cover size on new home screen:
# Glo/Aura/Aura2E/Nia (Phoenix)
- {Find: "qproperty-leftMargin: 40px;", Replace: "qproperty-leftMargin: 16px;"}
- {Find: "qproperty-rightMargin: 40px;", Replace: "qproperty-rightMargin: 16px;"}
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD (Dragon)
# AuraHD/AuraH2O/AuraH2O2/GloHD/ClaraHD/Clara2E (Dragon)
- {Find: "qproperty-leftMargin: 57px;", Replace: "qproperty-leftMargin: 22px;"}
- {Find: "qproperty-rightMargin: 57px;", Replace: "qproperty-rightMargin: 22px;"}
# AuraONE/Forma/Sage/Elipsa (Daylight)
# AuraONE/Forma/Sage/Elipsa/Elipsa2E (Daylight)
- {Find: "qproperty-leftMargin: 74px;", Replace: "qproperty-leftMargin: 29px;"}
- {Find: "qproperty-rightMargin: 74px;", Replace: "qproperty-rightMargin: 29px;"}
# LibraH2O/Libra2 (Storm)
@ -647,7 +647,7 @@ Remove forgot pin button from lock screen:
Removes the Forgot PIN -> Sign Out button from the lock screen.
If this is enabled and you forget your pin, you will need to
hard reset your Kobo.
- BaseAddress: 0x18034F1 # qss/PinCodeInputDialog.qss
- BaseAddress: 0x1972E04 # qss/PinCodeInputDialog.qss
- ReplaceZlib:
Find: "#lblForgotPin[qApp_deviceIsDragon=true],\n#lblSignOut[qApp_deviceIsDragon=true] {\n font-size: 26px;\n}"
Replace: "#lblForgotPin,#lblSignOut{qproperty-visible:false;}"
@ -655,7 +655,7 @@ Remove forgot pin button from lock screen:
Increase size of kepub chapter progress chart:
- Enabled: no
- Description: Originally by oren64, rewritten for 4.16.13337 by pgaskin (geek1011).
- BaseAddress: 0x17FE128 # qss/ReadingMenuStatsView.qss
- BaseAddress: 0x196E0F6 # qss/ReadingMenuStatsView.qss
- ReplaceZlibGroup:
Replacements:
# Top padding is already set to 15px, 25px, 33px, vertical aligned to middle.