diff --git a/kobopatch.yaml b/kobopatch.yaml index 02d492e..ef49f8b 100644 --- a/kobopatch.yaml +++ b/kobopatch.yaml @@ -1,5 +1,5 @@ ## Sixthhokage1's kobopatch config -version: 4.24.15676 +version: 4.26.16704 in: src/latest.zip out: out/KoboRoot.tgz log: out/log.txt diff --git a/src/libnickel.so.1.0.0.yaml b/src/libnickel.so.1.0.0.yaml index d4c31fc..dd15baf 100644 --- a/src/libnickel.so.1.0.0.yaml +++ b/src/libnickel.so.1.0.0.yaml @@ -317,8 +317,8 @@ Set KePub hyphenation: will always be turned on, regardless of justification button setting. (The publisher can still turn hyphenation off/on in the book's stylesheet.) - - ReplaceBytes: {Offset: 0xB911A2, FindInstBLX: {SymPLT: "QString::operator==(QLatin1String) const"}, ReplaceH: 01 20 01 20} # Alternative 1: Always turn KePub hyphenation on -# - ReplaceBytes: {Offset: 0xB911A2, FindInstBLX: {SymPLT: "QString::operator==(QLatin1String) const"}, ReplaceH: 00 20 00 20} # Alternative 2: Never turn KePub hyphenation on + - ReplaceBytes: {Offset: 0xB8AD96, FindInstBLX: {SymPLT: "QString::operator==(QLatin1String) const"}, ReplaceH: 01 20 01 20} # Alternative 1: Always turn KePub hyphenation on +# - ReplaceBytes: {Offset: 0xB8AD96, FindInstBLX: {SymPLT: "QString::operator==(QLatin1String) const"}, ReplaceH: 00 20 00 20} # Alternative 2: Never turn KePub hyphenation on Force user line spacing in KePubs: - Enabled: no @@ -528,8 +528,8 @@ Set font scale factor: # Original value X=14, so original scale factor is (font size slider) / 46. # Allowed replacement values for X: 0-15 (smaller X --> larger scale factor) # Note: vmov.f32 s1, #15.0 before getReadingFontSizeScaleFactor - - ReplaceInt: {Offset: 0x589544, Find: 14, Replace: 4} # ePub - - ReplaceInt: {Offset: 0xB90D74, Find: 14, Replace: 4} # KePub + - ReplaceInt: {Offset: 0x58D63C, Find: 14, Replace: 4} # ePub + - ReplaceInt: {Offset: 0xB8A968, Find: 14, Replace: 4} # KePub # The following patch(es) were made by jackie_w Dictionary text font-family/font-size/line-height: @@ -539,12 +539,11 @@ Dictionary text font-family/font-size/line-height: in the pop-up and full-screen dictionary widgets. 4.17.13651: improved to also reduce the blank lines displayed in many sideloaded custom dictionaries which contain
. - 4.24.15672: enforced update to accommodate Kobo changes related to new + 4.24.15676: enforced update to accommodate Kobo changes related to new dictionaries being released Oct 1st 2020 - # See https://www.mobileread.com/forums/showpost.php?p=3521137&postcount=48 for screenshots - . + # You can change one or more of the following properties: - font-family - font-size @@ -558,21 +557,23 @@ Dictionary text font-family/font-size/line-height: # Stage 1: Change DictionaryView to remove %variables # from: - # body { font: %1px %2; line-height: 1.4em; } - # span.word { font-weight: bold; font-size: 130%; margin-left: -%5px; } - # div.descriptionFont { font-family: %3; } - # ol { font-size: %1px; margin-left: %4em; margin-top: 0px; } + # body { padding-left: %3px; } + # body { font: %1px 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; } # ol p { font-size: %1px; } # i, i * { font-style: italic; } # b, b * { font-weight: bold; } # .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:Georgia ;} - # ol {margin-left:.5em; margin-top:0} + # body {font-size:%1px; line-height:1.40em; font-family:Georgia ;} + # body {padding-left:0.5em} + # span.word {font-weight:bold; font-size:130%; margin-left:-0.3em} + # ol {margin-left:1em; margin-top:0} # blockquote {margin:.3em 0 .3em 1em} # blockquote>blockquote {margin:-.3em 0 0 2em} - # span.word {font-weight:bold; font-size:130%; margin-left:-.5em} # i, i * {font-style:italic} # b, b * {font-weight:bold} # .sc, .sc * {font-variant:small-caps} @@ -580,8 +581,8 @@ Dictionary text font-family/font-size/line-height: # ##### N.B. Do not change the next 4 lines ##### - FindReplaceString: - Find: "body { font: %1px %2; line-height: 1.4em; }\nspan.word { font-weight: bold; font-size: 130%; margin-left: -%5px; }\ndiv.descriptionFont { font-family: %3; }\nol { font-size: %1px; margin-left: %4em; 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:Georgia ;}\nol {margin-left:1em; margin-top:0}\nblockquote {margin:.3em 0 .3em 1em}\nblockquote>blockquote {margin:-.3em 0 0 2em}\nspan.word {font-weight:bold; font-size:130%; margin-left:-1em}\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 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:Georgia ;}\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 ##### @@ -591,7 +592,7 @@ Dictionary text font-family/font-size/line-height: # 1. Pad the shorter of the old/new strings with spaces to # keep same length for both strings (see examples below) # - # 2. If the new font-family name (max. 25 chars) contains any spaces it + # 2. If the new font-family name (max. 32 chars) contains any spaces it # should be wrapped in 'single quotes' (see examples 2, 3) # # 3. To change from Georgia to the Kobo default sans-serif font, Avenir, @@ -844,7 +845,7 @@ Both page turn sides go next: - Enabled: no - Description: Make both page turn sides go next in the reader. # In ReadingView::processTap(TapGesture*) where the page direction is checked: - - BaseAddress: {Sym: "ReadingView::processTap(TapGesture*)", Rel: 390} + - BaseAddress: {Sym: "ReadingView::processTap(TapGesture*)", Rel: 402} - ReplaceBytes: {Offset: 0, FindInstBLX: {SymPLT: "ReadingView::leftToRightPageProgressDirection() const"}, CheckOnly: true} # nop the branch for checking if left-to-right (so it always runs the swap of back/forward) - ReplaceBytes: {Offset: 4, FindH: 18 B9, ReplaceInstNOP: true} @@ -855,6 +856,14 @@ Both page turn sides go next: # This patch could have also been done later on where the tap point is checked against different # QRects, but that's a lot more complicated due to the use of QHash s of pointers to functions. +Increase page navigation history: + - Enabled: no + - Description: Increases the number of dots marking navigation history on the scrubber. + # Replace the immediate value for the cmp r1, #2 before the bgt to the inlined + # QVector::removeFirst() (i.e. QVector::erase(start, start+1)): + - BaseAddress: "BookmarkHistoryMixin::pushBookmark(Bookmark const&)" + - ReplaceInt: {Offset: 24, Find: 2, Replace: 4} # note: you can set the replacement to whatever you want, but it MUST be > 1 or bad things will happen + Replace adobe page numbers toggle with invert screen: - Enabled: no - Description: | @@ -901,7 +910,7 @@ Hide browser from beta features: - Description: Hides the built-in browser from beta features. - ReplaceBytes: Base: "N3SettingsExtrasView::N3SettingsExtrasView(QWidget*)" - Offset: 1220 + Offset: 1426 FindInstBLX: {SymPLT: "Device::isParentalControlEnabled() const"} ReplaceH: 4F F0 01 00 - ReplaceBytes: @@ -1252,13 +1261,13 @@ Allow rotation on all devices: Unlike only the DeveloperSettings ForceAllowLandscape option, this patch also makes the rotation icon show on the new reader as well. # Always return true for ForceAllowLandscape: - - ReplaceBytes: {Offset: 0x77B5EE, FindInstBLX: {SymPLT: "QVariant::toBool() const"}, ReplaceH: 4F F0 01 00} + - ReplaceBytes: {Offset: 0x7784EE, FindInstBLX: {SymPLT: "QVariant::toBool() const"}, ReplaceH: 4F F0 01 00} # In ReadingMenuView::ReadingMenuView, replace the value of Device::hasOrientationSensor, # which is passed to a function to hide/show the rotate icon: - - ReplaceBytes: {Offset: 0xBA8564, FindInstBLX: {SymPLT: "Device::hasOrientationSensor() const"}, ReplaceH: 4F F0 01 00} + - ReplaceBytes: {Offset: 0xBA2BE4, FindInstBLX: {SymPLT: "Device::hasOrientationSensor() const"}, ReplaceH: 4F F0 01 00} # Also fix sizing of popup by doing the same in RotatePopup::RotatePopup, but # note that this will make the Automatic option show too (and do nothing): - - ReplaceBytes: {Offset: 0xBC5726, FindInstBLX: {SymPLT: "Device::hasOrientationSensor() const"}, ReplaceH: 4F F0 01 00} + - ReplaceBytes: {Offset: 0xBC03DE, FindInstBLX: {SymPLT: "Device::hasOrientationSensor() const"}, ReplaceH: 4F F0 01 00} Don't uppercase header/footer text: - Enabled: no @@ -1358,7 +1367,7 @@ Enable advanced settings for all fonts: to work with sideloaded fonts too. (KEPUB - OTF and TTF. EPUB - TTF only.) - ReplaceBytes: Base: "AdvancedFontSettingsController::loadView()" # font dropdown in advanced font settings dialog - Offset: 144 + Offset: 132 FindInstBLX: {SymPLT: "N3FontTypeUtil::setupMonotypeDropdown(TouchDropDown*, QString const&)"} # monotype fonts only ReplaceInstBLX: {SymPLT: "N3FontTypeUtil::setupDropdown(TouchDropDown*, QString const&)"} # all fonts - ReplaceBytes: @@ -1382,7 +1391,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> with a simple loop. - - BaseAddress: 0xAEC260 # find the base of the unnamed subroutine with the x-ref to _ZN5QTimeC1Eiiii + - BaseAddress: 0xAE4C40 # 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): @@ -1457,7 +1466,7 @@ FeatureSettings - ExportHighlights: DeveloperSettings - AutoUsbGadget: - Enabled: no - Description: Automatically enable USB Storage mode when connected. - - ReplaceBytes: {Offset: 0x77B68E, FindInstBLX: {SymPLT: "QVariant::toBool() const"}, ReplaceH: 4F F0 01 00} + - ReplaceBytes: {Offset: 0x77858E, FindInstBLX: {SymPLT: "QVariant::toBool() const"}, ReplaceH: 4F F0 01 00} PowerSettings - UnlockEnabled: - Enabled: no diff --git a/src/nickel.yaml b/src/nickel.yaml index 5de7309..df23b08 100644 --- a/src/nickel.yaml +++ b/src/nickel.yaml @@ -268,29 +268,38 @@ Reduce new header/footer height: - Find: "ReadingFooter[qApp_deviceIsStorm=true] {\n min-height: 118px;\n max-height: 118px;\n}" Replace: "ReadingFooter[qApp_deviceIsStorm=true] {\n min-height: 78px;\n max-height: 78px;\n}" -Custom new header/footer font: +Custom header/footer captions: - Enabled: no - Description: | - This patch allows you to change font-family and/or font-size in the - new header/footer. They will automatically be a matched pair. Full details & screenshots at + This patch allows you to change various header/footer caption attributes: + - font-family (Part 1) + - font-size & vertical position fine-tuning (Part 2) + - width (Part 3) + Header & footer will automatically be a matched pair. + Parts 1 & 2: Full details & screenshots at https://www.mobileread.com/forums/showpost.php?p=3897175&postcount=4 + Part 3: Before/after screenshots at + https://www.mobileread.com/forums/showpost.php?p=4069495&postcount=18 + # N.B: This patch is not suitable for Japanese/Chinese locale users fw 4.23.15505 No longer possible to customise font-size for GloHD/ClaraHD separately from AuraHD/H2O. - - FindZlib: "ReadingFooter" - ReplaceZlibGroup: Replacements: # Part 1. Customise font-family (built-in or sideloaded font) - # Please see notes at - # https://www.mobileread.com/forums/showpost.php?p=3896190&postcount=2 - # for general considerations whenever you change font-family in the Kobo GUI # #caption[newHeader=true] and #caption[newFooter=true] - # N.B: If new font-family contains spaces wrap in 'single quotes', e.g. 'Kobo Nickel' + # If new font-family contains spaces wrap in 'single quotes', e.g. 'Kobo Nickel' - # Un-comment and edit replacement font-family to change header/footer font + # Un-comment and customise ONLY ONE of the following to change header/footer font-family #- {Find: "font-family: Avenir;", Replace: "font-family:Avenir;"} + #- {Find: "font-family: Avenir;", Replace: "font-family:Avenir; background:transparent;"} + # + # Hint: + # Even if you don't need to change font-family you might want to un-comment the 2nd Find/Replace above. + # Setting the caption's background to transparent instead of the default, opaque white, + # should avoid the potential "dogear bookmark problem" outlined below in Part 3 of this patch. # Part 2. @@ -302,16 +311,16 @@ Custom new header/footer font: # 2a. Change font-size for models other than Touch/Mini (header & footer simultaneously) # #caption[newHeader=true] & #caption[newFooter=true] - # Glo/Aura/Aura2E/Nia (Phoenix) + # Glo/Aura/Aura2E/Nia - Find: "[qApp_deviceIsPhoenix=true] {\n font-size: 17px;\n}" Replace: "[qApp_deviceIsPhoenix=true] {\n font-size: 17px;\n}" - # AuraHD/H2O/GloHD/ClaraHD (Dragon/Alyssum/Nova) + # AuraHD/H2O/GloHD/ClaraHD - Find: "[qApp_deviceIsDragon=true] {\n font-size: 25px;\n}" Replace: "[qApp_deviceIsDragon=true] {\n font-size: 25px;\n}" - # LibraH2O (Storm) + # LibraH2O - Find: "[qApp_deviceIsStorm=true] {\n font-size: 29px;\n}" Replace: "[qApp_deviceIsStorm=true] {\n font-size: 29px;\n}" - # AuraOne/Forma (Daylight) + # AuraOne/Forma - Find: "[qApp_deviceIsDaylight=true] {\n font-size: 32px;\n}" Replace: "[qApp_deviceIsDaylight=true] {\n font-size: 32px;\n}" @@ -339,6 +348,33 @@ Custom new header/footer font: - Find: "#caption[newHeader=true][qApp_deviceIsTrilogy=true] {\n font-size: 14px;\n}" Replace: "#caption[newHeader=true] {\n font-size: 14px; margin-bottom: 0px;}" + + # Part 3. Increase the width of header/footer captions by reducing the width + # of the pageturn tap zones in the footer's left/right corners + # N.B: + # The default Replace values below have been set larger than you might prefer. + # This is to avoid the possibility of the "dogear" bookmark icon + # in the top right corner being partially obscured by the header caption's white background. + # See screenshot at following link for an example of what can sometimes happen + # if the new Replace value is too small. + # https://www.mobileread.com/forums/showpost.php?p=4069755&postcount=34 + # Feel free to reduce your custom Replace values if a wider caption area + # is more important to you than "dogear" aesthetics. + # Alternatively, look at the Hint in Part 1 of this patch for a way to avoid + # the "dogear" problem. + # + # Customise one or more of the 3 Replace values below as required + # Glo/Aura/Aura2E/Nia needs default value 64. + # Touch/Mini could be reduced to 57 with no ill effects + - {Find: "footerMargin: 105;", Replace: "footerMargin:64;"} + + # LibraH20 needs default value 116. + # AuraHD/H2O/H2Ov2/GloHD/ClaraHD could be reduced to 102 with no ill effects + - {Find: "footerMargin: 170;", Replace: "footerMargin:116;"} + + # AuraOne/Forma + - {Find: "footerMargin: 221;", Replace: "footerMargin:133;"} + # Don't change anything below. It exists to free up some space for # your changes above by removing Japanese/Chinese-specific CSS code blocks # so that kobopatch will run without giving some kind of 'too long' error message. @@ -519,7 +555,7 @@ New home screen subtitle custom font: - Description: | Increase subtitle font size, font color black. Works best when used with with patch `New home screen increasing cover size` - - BaseAddress: 0x14BB79B # FindZlib: "MetaDataLabel {\n color: #666666;\n qproperty-indent: 0;\n}" + - BaseAddress: 0x14C041D # FindZlib: "MetaDataLabel {\n color: #666666;\n qproperty-indent: 0;\n}" - ReplaceZlib: {Find: "MetaDataLabel {\n color: #666666;\n qproperty-indent: 0;\n}", Replace: "MetaDataLabel {\n color: #000000;\n qproperty-indent: 0;\n}"} - ReplaceZlib: Find: "MetaDataLabel[qApp_deviceIsTrilogy=true] {\n font-size: 13px;\n}" @@ -534,7 +570,7 @@ New home screen subtitle custom font: Find: "MetaDataLabel[qApp_deviceIsDaylight=true] {\n font-size: 31px;\n}" Replace: "MetaDataLabel[qApp_deviceIsDaylight=true] {\n font-size: 34px;\n}" # duplicate - - BaseAddress: 0x14BE7DD + - BaseAddress: 0x14CE2B4 - ReplaceZlib: {Find: "MetaDataLabel {\n color: #666666;\n qproperty-indent: 0;\n}", Replace: "MetaDataLabel {\n color: #000000;\n qproperty-indent: 0;\n}"} - ReplaceZlib: Find: "MetaDataLabel[qApp_deviceIsTrilogy=true] {\n font-size: 13px;\n}" @@ -592,11 +628,11 @@ 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: 0x14B4879 + - BaseAddress: 0x14CE181 - ReplaceZlib: Find: "#lblForgotPin[qApp_deviceIsDragon=true],\n#lblSignOut[qApp_deviceIsDragon=true] {\n font-size: 26px;\n}" Replace: "#lblForgotPin,#lblSignOut{qproperty-visible:false;}" - - BaseAddress: 0x14AB23F + - BaseAddress: 0x14CE4D1 - ReplaceZlib: Find: "#lblForgotPin[qApp_deviceIsDragon=true],\n#lblSignOut[qApp_deviceIsDragon=true] {\n font-size: 26px;\n}" Replace: "#lblForgotPin,#lblSignOut{qproperty-visible:false;}"