From c2a5badf64d8c2e41672249be56b93ef84a660c4 Mon Sep 17 00:00:00 2001 From: Maximilian Hantsch Date: Fri, 15 May 2026 13:42:21 +0200 Subject: [PATCH 1/5] correct "trigger from same half" for HRM strategies --- .../config-items/advanced-secondary-role-configuration.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/uhk-common/src/config-serializer/config-items/advanced-secondary-role-configuration.ts b/packages/uhk-common/src/config-serializer/config-items/advanced-secondary-role-configuration.ts index 746637168d1..494ed2d712a 100644 --- a/packages/uhk-common/src/config-serializer/config-items/advanced-secondary-role-configuration.ts +++ b/packages/uhk-common/src/config-serializer/config-items/advanced-secondary-role-configuration.ts @@ -71,7 +71,7 @@ export const HRM_TIMEOUT_CANCEL_ADVANCED_SECONDARY_ROLE_CONFIGURATION_PRESET: Ad secondaryRoleAdvancedStrategySafetyMargin: -40, secondaryRoleAdvancedStrategyDoubletapToPrimary: false, secondaryRoleAdvancedStrategyTriggerByMouse: true, - secondaryRoleAdvancedStrategyTriggerFromSameHalf: true, + secondaryRoleAdvancedStrategyTriggerFromSameHalf: false, } } @@ -88,7 +88,7 @@ export const HRM_TIMEOUT_SECONDARY_ADVANCED_SECONDARY_ROLE_CONFIGURATION_PRESET: secondaryRoleAdvancedStrategySafetyMargin: 1, secondaryRoleAdvancedStrategyDoubletapToPrimary: false, secondaryRoleAdvancedStrategyTriggerByMouse: false, - secondaryRoleAdvancedStrategyTriggerFromSameHalf: true, + secondaryRoleAdvancedStrategyTriggerFromSameHalf: false, } } @@ -109,7 +109,6 @@ export const TIMEOUT_ADVANCED_SECONDARY_ROLE_CONFIGURATION_PRESET: AdvancedSecon } } - export const BUILTIN_ADVANCED_SECONDARY_ROLE_CONFIGURATION_PRESETS: AdvancedSecondaryRoleConfigurationPreset[] = [ SIMPLE_ADVANCED_SECONDARY_ROLE_CONFIGURATION_PRESET, HRM_TIMEOUT_CANCEL_ADVANCED_SECONDARY_ROLE_CONFIGURATION_PRESET, From 0f803abdfdff7d4831ec6e274f6ea3b065da2b92 Mon Sep 17 00:00:00 2001 From: Maximilian Hantsch Date: Fri, 15 May 2026 14:11:51 +0200 Subject: [PATCH 2/5] change "doubletap to primary" setting for "HRM timeout secondary" preset --- .../config-items/advanced-secondary-role-configuration.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/uhk-common/src/config-serializer/config-items/advanced-secondary-role-configuration.ts b/packages/uhk-common/src/config-serializer/config-items/advanced-secondary-role-configuration.ts index 494ed2d712a..d421a393e7d 100644 --- a/packages/uhk-common/src/config-serializer/config-items/advanced-secondary-role-configuration.ts +++ b/packages/uhk-common/src/config-serializer/config-items/advanced-secondary-role-configuration.ts @@ -86,7 +86,7 @@ export const HRM_TIMEOUT_SECONDARY_ADVANCED_SECONDARY_ROLE_CONFIGURATION_PRESET: secondaryRoleAdvancedStrategyTimeoutType: SecondaryRoleAdvancedStrategyTimeoutType.Active, secondaryRoleAdvancedStrategyTrigger: SecondaryRoleAdvancedStrategyTriggeringEvent.Release, secondaryRoleAdvancedStrategySafetyMargin: 1, - secondaryRoleAdvancedStrategyDoubletapToPrimary: false, + secondaryRoleAdvancedStrategyDoubletapToPrimary: true, secondaryRoleAdvancedStrategyTriggerByMouse: false, secondaryRoleAdvancedStrategyTriggerFromSameHalf: false, } From fed13e68df47315969840650820ecfea0ddc8e01 Mon Sep 17 00:00:00 2001 From: Maximilian Hantsch Date: Fri, 15 May 2026 14:24:17 +0200 Subject: [PATCH 3/5] some more tooltip text and formatting changes for "Typing behavior" page --- .../typing-behavior-page.component.html | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html b/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html index 0f6b16cbb6c..a83e8bea9e1 100644 --- a/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html +++ b/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html @@ -125,8 +125,8 @@
Dual role key
-

If the dual-role key is double-tapped, the primary role is activated.

-

Tap-and-Hold (hold on the second tap) to keep the primary role held down.

+

If the dual-role key is double-tapped, the primary role is activated. + Tap-and-Hold (hold on the second tap) to keep the primary role held down.

Useful when you want to trigger auto-repeat of primary roles on keys such as space.
@@ -216,8 +216,12 @@
Trigger keys
Allow same-side triggers - + + +

When checked, keys on the same half of the keyboard can trigger secondary roles. Turning this off helps avoiding spurious unwanted activations of secondary roles during quick typing and finger rolls.

+ Note: Secondary roles can still be triggered by timeout (or mouse movement). Keeping the dual-role key held down beyond the timeout allows combining it with same-side keys even if this option is turned off." +
Miscellaneous Double tap timeout - + + + Configures the timeout for most doubletap behaviors in the firmware. (Layer switcher doubletaps, secondary role doubletaps, the `ifDoubletap` macro condition...) + Date: Fri, 15 May 2026 14:42:27 +0200 Subject: [PATCH 4/5] width adjustment --- .../typing-behavior-page/typing-behavior-page.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html b/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html index a83e8bea9e1..068776da7e9 100644 --- a/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html +++ b/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html @@ -217,7 +217,7 @@
Trigger keys
Allow same-side triggers + [width]="450"/>

When checked, keys on the same half of the keyboard can trigger secondary roles. Turning this off helps avoiding spurious unwanted activations of secondary roles during quick typing and finger rolls.

Note: Secondary roles can still be triggered by timeout (or mouse movement). Keeping the dual-role key held down beyond the timeout allows combining it with same-side keys even if this option is turned off." From 4c4b7c08ee08d9abc8e489a1eb7b0c4a7be385b7 Mon Sep 17 00:00:00 2001 From: Maximilian Hantsch Date: Fri, 15 May 2026 17:14:46 +0200 Subject: [PATCH 5/5] more tooltip fixes --- .../typing-behavior-page/typing-behavior-page.component.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html b/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html index 068776da7e9..64224f5cc4e 100644 --- a/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html +++ b/packages/uhk-web/src/app/components/device/typing-behavior-page/typing-behavior-page.component.html @@ -220,7 +220,7 @@
Trigger keys
[width]="450"/>

When checked, keys on the same half of the keyboard can trigger secondary roles. Turning this off helps avoiding spurious unwanted activations of secondary roles during quick typing and finger rolls.

- Note: Secondary roles can still be triggered by timeout (or mouse movement). Keeping the dual-role key held down beyond the timeout allows combining it with same-side keys even if this option is turned off." + Note: Secondary roles can still be triggered by timeout (or mouse movement). Keeping the dual-role key held down beyond the timeout allows combining it with same-side keys even if this option is turned off.
@@ -262,7 +262,7 @@

Miscellaneous

- Configures the timeout for most doubletap behaviors in the firmware. (Layer switcher doubletaps, secondary role doubletaps, the `ifDoubletap` macro condition...) + Configures the timeout for most doubletap behaviors in the firmware. (Layer switcher doubletaps, secondary role doubletaps, the ifDoubletap macro condition...)