Skip to content

Took TideGear's changes, removed the device/controller implementation…#1584

Draft
utkarshdalal wants to merge 1 commit into
masterfrom
fix/rumble-length-intensity-utkarsh
Draft

Took TideGear's changes, removed the device/controller implementation…#1584
utkarshdalal wants to merge 1 commit into
masterfrom
fix/rumble-length-intensity-utkarsh

Conversation

@utkarshdalal

@utkarshdalal utkarshdalal commented Jun 15, 2026

Copy link
Copy Markdown
Owner

… (we vibrate the controller first and then the device), and made the rumble more efficient

Description

Recording

Type of Change

  • Bug fix
  • Performance / stability improvement
  • Compatibility improvements
  • Other (requires prior approval)

Checklist

  • If I have access to #code-changes, I have discussed this change there and it has been green-lighted. If I do not have access, I have still provided clear context in this PR. If I skip both, I accept that this change may face delays in review, may not be reviewed at all, or may be closed.
  • This change aligns with the current project scope (core functionality, stability, or performance). If not, it has been explicitly approved beforehand.
  • I have attached a recording of the change.
  • I have read and agree to the contribution guidelines in CONTRIBUTING.md.

Summary by cubic

Makes rumble persistent and smoother, and adds a per‑container vibration intensity control. We now vibrate the controller first and fall back to the device, and re‑arm rumble so it doesn’t cut off early.

  • New Features

    • Vibration intensity slider (0–100) in Controller settings; saved per container via PrefManager, ContainerData, and extras, and applied through WinHandler.setVibrationIntensity.
    • Prefer the controller’s vibrator; use the phone’s vibrator only as a fallback. Localized “Vibration Intensity” string added.
  • Performance

    • Native evshim keepalive re‑applies the last rumble via SDL_JoystickRumble to prevent the ~1s auto‑stop; sleeps when idle and avoids echoing keepalive updates back into shared memory.
    • Java WinHandler keepalive refreshes one‑shot vibrations without busy polling and cancels cleanly on shutdown to prevent lingering buzz.

Written for commit 4b2be67. Summary will update on new commits.

Review in cubic

… (we vibrate the controller first and then the device), and made the rumble more efficient
@coderabbitai

coderabbitai Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: d4b77773-0b48-497c-8ea1-f62dcc3e16ec

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/rumble-length-intensity-utkarsh

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant