Summary
Content-level audit (tree diff, not version numbers) of Helium314/HeliBoard main vs this fork found a set of isolated, low-coupling settings present upstream but absent here. These are the only clean cherry-pick candidates — the rest (theming/typeface refactor, foldable split, floating rework, emoji-search rework) are entangled with HeliBoard infra this fork's base predates, and the gesture-data-gathering subsystem is deliberately excluded (see the other issue).
Method: diff of PREF_* keys in Settings.java (HeliBoard 137 vs fork 174) + tree diff of latin/utils, settings/screens, assets/layouts.
Cheap pulls (each ~self-contained)
Entangled — evaluate, likely skip
- Foldable split keyboard (
split_keyboard_folded[_landscape] + FoldableUtils.kt)
- Floating-keyboard rework (
floating_* prefs + FloatingKeyboardUtils.kt) — conflicts with the fork's existing floating keyboard; this is a replacement, not an add. Needs a decision before touching.
- Theming/typeface system (
Theme.kt, Icons.kt, KeyboardTypeface.kt) — infra refactor, not a single feature. Pulling it is a project, not a cherry-pick.
- Emoji search rework (
emoji/EmojiSearchActivity.kt + common/Emoji.kt) — fork already has a variant.
Notes / caveats
- Each pull MUST follow the 5-file settings pattern here (
Settings.java / Defaults.kt / SettingsValues.java / strings.xml / a *Screen.kt entry) + add a SettingsContainerTest.kt case.
- Strategic ordering caveat: the priority direction is sending fixes up to LeanBitLab, not pulling features down piecemeal. Treat this as opportunistic, low-priority QoL.
- Each is small enough for a single-responsibility PR; do not batch.
Summary
Content-level audit (tree diff, not version numbers) of
Helium314/HeliBoardmainvs this fork found a set of isolated, low-coupling settings present upstream but absent here. These are the only clean cherry-pick candidates — the rest (theming/typeface refactor, foldable split, floating rework, emoji-search rework) are entangled with HeliBoard infra this fork's base predates, and the gesture-data-gathering subsystem is deliberately excluded (see the other issue).Method: diff of
PREF_*keys inSettings.java(HeliBoard 137 vs fork 174) + tree diff oflatin/utils,settings/screens,assets/layouts.Cheap pulls (each ~self-contained)
auto_correct_confidencepunctuation_suggestionsspellcheck_suggesttoolbar_swipe_down_to_hideonly_toolbar_with_hw_keyboardtouchpad_edge_scroll(+keyboard/TouchpadHandler.java)key_gap_scale,bottom_row_scale(+settings/preferences/KeyboardScalePreference.kt)assets/layouts/main/hcesar.json(single file, trivial)Entangled — evaluate, likely skip
split_keyboard_folded[_landscape]+FoldableUtils.kt)floating_*prefs +FloatingKeyboardUtils.kt) — conflicts with the fork's existing floating keyboard; this is a replacement, not an add. Needs a decision before touching.Theme.kt,Icons.kt,KeyboardTypeface.kt) — infra refactor, not a single feature. Pulling it is a project, not a cherry-pick.emoji/EmojiSearchActivity.kt+common/Emoji.kt) — fork already has a variant.Notes / caveats
Settings.java/Defaults.kt/SettingsValues.java/strings.xml/ a*Screen.ktentry) + add aSettingsContainerTest.ktcase.