Skip to content

History

Revisions

  • convert-screenshots: drop dead pad-shift-layers map entry The capture pipeline doesn't produce pad-shift-layers.png (shift-layer UI is shown inside pad-mappings.png and Shift-Layers.md uses that image at the top). The map entry produced a 'SKIP (missing)' line on every convert run with no downstream consumer; clean it up.

    @hifihedgehog hifihedgehog committed May 26, 2026
    50dbda4
  • Re-capture pad-impulse-triggers with Xbox Series source The Impulse Triggers tab is visibility-gated on the active source's HasRumbleTriggers. DualSense routes its trigger-motor data to Adaptive Trigger Vibration instead, so the tab is hidden whenever DualSense is the picker selection. New capture switches the MappedDevices ComboBox to Xbox Series X Controller first, then clicks the tab.

    @hifihedgehog hifihedgehog committed May 26, 2026
    3a478c5
  • Profiles: complete the 'What a profile holds' table Two omissions caught during sweep: - Impulse triggers (per-slot ImpulseOverallGain / ImpulseLeft / ImpulseRight / ConstantTriggerForce / AudioBassTriggerRumble — Settings-and-Serialization section 8/9/10) wasn't listed at all. - Gyro tuning (per-pad-per-slot, ~24 fields per Settings-and-Serialization section 13) wasn't listed at all. Also clarified Touchpad row: previous wording mentioned only the gesture stack but the same per-slot PadSetting also holds Stick / D-Pad Output and Mouse Output toggles.

    @hifihedgehog hifihedgehog committed May 26, 2026
    b69dcae
  • Refresh 16 PNGs from v3.3 capture run (DualSense + Xbox on slot 0) The XML setup uses a UserSetting <Setting> element (matching the [XmlArrayItem("Setting")] attribute on SettingsFileData.Settings) plus a matching PadSetting checksum, so PadForge accepts both DualSense and Xbox Series X as slot-0 sources on restart. That makes the Touchpad / Adaptive Triggers / Lighting / Gyro / Impulse Triggers tabs all visible together for the first time in a single capture pass. Refreshed: about, add-controller-popup, dashboard, devices, profiles, settings, pad-controller-3d, pad-controller-2d, pad-macros, pad-mappings, pad-sticks, pad-triggers, pad-forcefeedback, pad-adaptive-triggers, pad-lighting, pad-gyro. pad-touchpad.png already shipped in the prior commit. Slot-type-specific and dropdown PNGs are unchanged this run.

    @hifihedgehog hifihedgehog committed May 26, 2026
    1de6a62
  • Add pad-touchpad.png screenshot for the Touchpad tab

    @hifihedgehog hifihedgehog committed May 26, 2026
    7d0e475
  • Touchpad: correct StickX/StickY descriptor format The picker emits descriptors via AddGesture's `$"Touchpad {padIdx} {name}"` template with name=`StickX` / `StickY` (no spaces between the word and the axis letter). Wiki page had "Touchpad N Stick X" / "Touchpad N Stick Y", which doesn't match what the user types in the mapping table. Spot-checked README and padforge.org — neither references those two descriptors with the wrong spacing.

    @hifihedgehog hifihedgehog committed May 26, 2026
    c203bf3
  • ViewModels/XAML-Views: refresh SelectedConfigTab + PadPage tab list Both pages still described the v3.1 tab layout (6 tabs, missing Adaptive Triggers / Lighting / Gyro / Impulse Triggers and now Touchpad). Walked PadPage.xaml's RadioButton Tag values and rebuilt the enumeration: - 6 always-visible (Controller, Macros, Mappings, Sticks, Triggers, FF) - 5 visibility-gated on the source device's capability flags: 6=Adaptive Triggers (HasAdaptiveTriggers) 7=Lighting (HasLightbar) 8=Gyro (HasGyro) 9=Impulse Triggers (HasRumbleTriggers) 10=Touchpad (HasTouchpad) XAML-Views.md tab-strip diagram extended to the same 11 entries.

    @hifihedgehog hifihedgehog committed May 26, 2026
    abef39a
  • Touchpad: drop pseudo-colon em-dashes in tier headers "Tier 1 — single-finger fires." reads as the classic AI-prose em-dash pattern (bolded label, em-dash, gloss). Replaced with colons. Also broke the parenthetical "(devices that support multi-touch deep enough; Windows PTP carries all five)" into two short sentences to drop the inline semicolon.

    @hifihedgehog hifihedgehog committed May 26, 2026
    c2d46d2
  • Touchpad: capture pipeline + screenshot embed at top of page - capture.ps1: add Touchpad to the first-slot tab sequence (between Gyro and the slot-walk). Skips with a yellow warning if the active slot's source doesn't expose a touchpad surface. - convert-screenshots.ps1: map pad-touchpad.png to "touchpad" so the PadForge/screenshots and padforge.org/assets writes pick it up. - Touchpad.md: embed images/pad-touchpad.png at the top of the page matching every other Pad-page wiki entry.

    @hifihedgehog hifihedgehog committed May 26, 2026
    4c97bb8
  • Profiles: add Touchpad gesture stack to 'What a profile holds' table ProfileData.TouchpadGestures persists per-profile (the custom shape templates the user records via the touchpad recorder dialog). Different profiles for different games carry their own gesture catalog. The wiki's 'What a profile holds' table was missing this row — added between Macros and Extended slot shape.

    @hifihedgehog hifihedgehog committed May 25, 2026
    68daa96
  • Devices: HIDMaestro casing typo (was 'hIDMaestro')

    @hifihedgehog hifihedgehog committed May 25, 2026
    33e8ef5
  • Macros: document Toggle Touchpad Overlay + Set Gyro Engaged actions The MacroActionType enum (PadForge.App/ViewModels/MacroItem.cs) ships 20 actions today but the wiki only covered 18 — Toggle Touchpad Overlay and Set Gyro Engaged were missing. Added both sections after Stop Rumble, before the 'Axis source for continuous actions' note that wraps up the action list. Set Gyro Engaged includes the Mode (Toggle / On / Off) table and the OR-combine semantics with the Gyro tab's Aim Engage button.

    @hifihedgehog hifihedgehog committed May 25, 2026
    83189d6
  • Devices: drop pseudo-colon em-dash on touchpad-sources sentence

    @hifihedgehog hifihedgehog committed May 25, 2026
    026c5ca
  • Wiki: drop stale 'Last updated for PadForge 3.2.0' footers (22 pages) Every page on the wiki carried a '*Last updated for PadForge X.Y.Z.*' italicized footer hard-coded to 3.2.0. With 3.3.0 shipped, those footers become a lie on every page that wasn't actually re-audited for the new version — bumping them to 3.3.0 wholesale would just swap one lie for another since most pages haven't been touched since 3.2.0. Removing the footer entirely: git history of each page is the honest source of truth for currency. Wiki contributors who need to know whether a section reflects the latest behavior can read the page's commit log; no in-page label needed.

    @hifihedgehog hifihedgehog committed May 25, 2026
    5f26049
  • Build-and-Publish: refresh example tag from v3.2.0 to v3.3.0 Two illustrative version-tag examples in the release-workflow section still pointed at v3.2.0; current latest is v3.3.0.

    @hifihedgehog hifihedgehog committed May 25, 2026
    ec18883
  • Wiki: purge references to four classes removed from the codebase CustomInputUpdate, CustomInputHelper, DeviceEffectItem, and RumbleLogger no longer exist in PadForge.Engine — they were removed at some point and the wiki still documented them in detail across five pages. Cross-checked with grep across both projects: zero call sites remain in source. Removed: - Engine-Library.md: ToC entries + full sections for all four, plus UserDevice.InputUpdates / OldInputUpdates rows that referenced the dead CustomInputUpdate[] type. - Architecture-Overview.md: file-tree entries for the four .cs files + the RumbleLogger row in the static-class table. Added the two real Engine/Common touchpad files (PrecisionTouchpadReader, TouchpadOverlayDevice) that were missing from the tree. - Settings-and-Serialization.md: UserDevice.InputUpdates and UserDevice.DeviceEffects rows. - Input-Pipeline.md, SDL3-Integration.md: the step-(e) buffered- update code samples rewrote into the current per-(slot, device, padIdx) gesture-engine tick — that's what actually runs after the InputState swap in Step 2 today.

    @hifihedgehog hifihedgehog committed May 25, 2026
    c7cfc42
  • Home: drop math-tuple notation from 3.3 callout

    @hifihedgehog hifihedgehog committed May 25, 2026
    9053b5b
  • Touchpad: drop pseudo-colon em-dashes in initial draft Down from 12 em-dashes to 3 (the conventional 'Tier 1 —', 'Tier 2 —', 'Tier 3 —' section labels remain since they're true parentheticals in heading-style labels, not pseudo-colons attaching an explanation to a clause).

    @hifihedgehog hifihedgehog committed May 25, 2026
    b982874
  • Devices + Web-Controller: link to new Touchpad page Devices page's Touchpads section now mentions the PTP-no-click caveat (matching the auto-map behavior) and points at the Touchpad page for per-slot configuration. Also notes the two other touchpad sources (web + overlay) that feed the same config surface. Web-Controller's Touchpad layout section now mentions that the phone's surface drives the per-slot Touchpad-tab features (mouse / stick / D-pad / gestures), not just the bare DS4 touchpad button stream.

    @hifihedgehog hifihedgehog committed May 25, 2026
    95f8977
  • Add Touchpad wiki page; link from Home 3.3 added a real Touchpad tab with five cards (Stick / D-Pad Output, Mouse Output, Gesture Detection, In-Box Gestures, Custom Gestures) and a per-slot architecture — none of which had a wiki page. New Touchpad.md documents every card's knobs, the per-slot fan-out semantics, and the PTP-no-click caveat. Home gets a 'Touchpad' row in the 'Tune the feel' table alongside Gyro.

    @hifihedgehog hifihedgehog committed May 25, 2026
    3336152
  • Home: rotate 'New in' to 'What's new' with a 3.3 subsection Added the 3.3 highlights (Touchpad Mouse Output + Stick / D-Pad Output cards, per-slot gesture engine fan-out, KBM keys, defaults- off) above the existing 3.2 content. Demoted the 3.2 subsections from h3 to h4 so they nest under the new '3.2' parent. Cleaned up the 2026 Steam Controller line's broken past-tense qualifier.

    @hifihedgehog hifihedgehog committed May 25, 2026
    80f61d0
  • ViewModels: ExtendedSlotConfigData adds ForceFeedbackEnabled (v3.0.3+); replace semicolon pseudo-period with period

    @hifihedgehog hifihedgehog committed May 21, 2026
    d459f7f
  • ViewModels: DeviceRowViewModel adds SdlGuid, HasTouchpad, IsInternalVirtual + 3 ShowInputXxxSection gating flags for web/overlay virtual sources

    @hifihedgehog hifihedgehog committed May 21, 2026
    4fa5d2b
  • ViewModels: DevicesViewModel touchpad fields (IsTouchpadDevice, HasTouchpadData, TouchpadX0/Y0/X1/Y1, TouchpadDown0/Down1) on the Devices-page raw input display

    @hifihedgehog hifihedgehog committed May 21, 2026
    392f76b
  • ViewModels: ProfileShortcutViewModel SwitchModes adds ToggleVCsDisabled (v3.2); correct SwitchProfileModeItem shape (ObservableObject class with mutable DisplayName, not record)

    @hifihedgehog hifihedgehog committed May 21, 2026
    29bc398
  • ViewModels: extend MacroTriggerMode (+CustomExpression) and MacroActionType (+ToggleTouchpadOverlay, Lightbar*, Rumble*) enum value lists; add MacroLightbar/Rumble hold-mode enums

    @hifihedgehog hifihedgehog committed May 21, 2026
    77e51d8
  • ViewModels: PadViewModel shift-layer surface is ActiveLayerMask + LayerTabs + LayerActivated event (not CurrentLayerMask / ActiveLayers / LayerEngaged+Released)

    @hifihedgehog hifihedgehog committed May 21, 2026
    28da5f9
  • ViewModels: document DashboardViewModel Touchpad Overlay section (v3.2) and ResetTouchpadOverlayPositionRequested event

    @hifihedgehog hifihedgehog committed May 21, 2026
    a9e038c
  • ViewModels: add SettingsViewModel.KeepHidHideCloaksBetweenLaunches

    @hifihedgehog hifihedgehog committed May 21, 2026
    94b71c2
  • ViewModels: document PadViewModel Constant Force + Impulse Triggers tab (Impulse / Constant Trigger Force / Audio Bass Trigger Rumble) properties new in v3.2

    @hifihedgehog hifihedgehog committed May 21, 2026
    d9c6598