-- ─────────────────────────────────────────────────────────────────────────────
-- Input
--
-- Deliberately GNOME-like: click-to-focus, no focus-follows-mouse, no mouse
-- acceleration changes. The goal is that muscle memory transfers untouched.
-- ─────────────────────────────────────────────────────────────────────────────

local prefs = require("prefs")

hl.config({
    input = {
        kb_layout  = prefs.get("keyboardLayout", "us"),
        kb_variant = "",
        kb_model   = "",
        kb_options = "",
        kb_rules   = "",

        numlock_by_default = prefs.get("numlockByDefault", true),

        -- GNOME's defaults are 500ms delay / 33Hz repeat.
        repeat_delay = prefs.get("keyRepeatDelay", 500),
        repeat_rate  = prefs.get("keyRepeatRate", 33),

        -- 1 = click to focus. GNOME's behaviour; NOT sloppy focus.
        follow_mouse = prefs.getInt("followMouse", 1),

        -- Don't refocus on mouse move alone -- only on click.
        mouse_refocus = false,

        -- Flat pointer response, no acceleration. Matters for gaming.
        sensitivity   = prefs.get("pointerSensitivity", 0),
        accel_profile = "flat",

        -- Clicking a floating window raises and focuses it.
        float_switch_override_focus = 2,
    },
})

-- Desktop machine: no touchpad, no gestures worth wiring. If a laptop ever
-- runs this config, add touchpad settings in overrides.lua.

return true
