Repository navigation
Conversation
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 28, 2026 18:01
40171d2 to
082ef2f
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
2 times, most recently
from
August 29, 2026 07:25
2218d41 to
a7f6933
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 07:25
082ef2f to
5d97d6b
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 07:40
a7f6933 to
025d593
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 07:40
5d97d6b to
57e4bee
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 07:53
025d593 to
3dcdaba
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 07:53
57e4bee to
465ac51
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 08:03
3dcdaba to
cb1e1c8
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 08:03
465ac51 to
f571394
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 08:15
cb1e1c8 to
6e83d04
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 08:15
f571394 to
124304b
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 08:56
6e83d04 to
8798779
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 08:57
124304b to
ac66b21
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 09:16
8798779 to
31fef6d
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 09:16
ac66b21 to
09714c2
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 09:30
31fef6d to
106c797
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 09:30
09714c2 to
0b5c84a
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 10:02
106c797 to
4fb5dcd
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 10:02
0b5c84a to
33d9221
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 29, 2026 10:30
4fb5dcd to
5158167
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 29, 2026 10:30
33d9221 to
bbcf430
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 30, 2026 08:56
5158167 to
335f1b6
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 30, 2026 08:56
bbcf430 to
bea2268
Compare
noobydp
force-pushed
the
fix/easy-switch-forwarding
branch
from
August 31, 2026 08:54
335f1b6 to
5408594
Compare
noobydp
force-pushed
the
feat/easy-switch-followers
branch
from
August 31, 2026 08:54
bea2268 to
835a869
Compare
… state Merge updated forwarding and current master, preserve dpi_gestures before appending host capabilities in IPC v32, and use the StateEvents mutation boundary. Probe reportable host controls during the existing all-or-nothing table walk and retain persistence rollback coverage. Validated with workspace tests, Clippy, rustdoc, WebAssembly and repository hooks. Mock-agent GUI checks cover selecting a follower, persistence across restart, clearing the link, and connected/offline rows.
Include selected followers even when their capability or inventory record disappears. Allow removing an existing link without requiring a reachable ChangeHost target, while retaining validation when adding followers. Merge the multi-keyboard forwarding recovery fix and its replay regression.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a capability-gated Easy-Switch panel for keyboards with reportable host
controls. Users can select locally known ChangeHost-capable followers without
editing TOML, using the existing physical device identities and
host_switch_targetsconfiguration.Changes
host_switchingandhost_switch_controlsflags to device capabilities while keeping old cachedinventories compatible.
0x1814 ChangeHostand the reportable0x1b04host-control table through one named capability plan.
in inventory protocol v30 and update the mock inventory. Follower settings
do not gain a new IPC mutation.
the pre-existing
host_switch_targetsfield directly, request the existingagent config reload only after a successful save, repaint failed rollbacks,
reject self-links, and provide locale-complete copy.
Screenshot
Pending the final GUI smoke test. Keep this PR in draft until a screenshot is
attached.
Testing
cargo fmt --all -- --checkRUSTFLAGS="-D warnings" cargo clippy --workspace --all-targets -- -D warningsRUSTFLAGS="-D warnings" cargo test --workspacecargo test -p openlogi-ipc --test wire_formatcargo test -p openlogi-desktop i18nRUSTDOCFLAGS="-D warnings" cargo doc --workspace --no-deps --document-private-items --exclude openlogi-ui --exclude openlogi-desktop --exclude openlogi-overlay --exclude openlogi-agentRUSTFLAGS="-D warnings" cargo check -p openlogi-hidpp -p openlogi-device --target wasm32-unknown-unknowntyposwas not run locally becausetypos-cliis unavailable.and clear a follower, restart the app, confirm the selection persists, and
attach a screenshot of the Easy-Switch tab.
Depends on #2 and AprilNEA#970
Code and PR drafted with Codex