Repository navigation
obs-browser: Add native IME event bridge - #549
sakuya-aki-dev wants to merge 2 commits into
Conversation
Forward composition, commit and cancellation to CEF so browser sources can receive Japanese IME input during interaction. Track session generations and composition caret geometry to avoid stale input after navigation or browser replacement. Requires paired Studio frontend and libobs IME API changes. This browser change does not build against unmodified libobs.
Restore the companion frontend and libobs changes required by the browser IME bridge. Apply this patch to OBS Studio separately.
|
The required companion OBS Studio/libobs patch was inadvertently omitted when the changes were simplified before this PR was opened. I have now added it at docs/patches/obs-studio-native-ime.patch. The five browser implementation files are unchanged. The patch matches the preserved original and was successfully applied to the saved Studio source. It must be applied to OBS Studio separately. Sorry for the omission. |
|
The required Studio frontend/libobs changes are submitted separately in obsproject/obs-studio#14016. Both PRs are required for the native IME path. The Studio PR contains the six implementation files represented by this PR's companion patch. Do not apply that patch again on top of the Studio PR. All 11 implementation files were checked against the supplied originals, with no missing IME changes found. The paired Mac arm64 Debug build and eight boundary-model cases passed. Windows builds and native IME testing were not rerun during this preparation. |
|
We do not accept AI-generated submissions. |
Thank you for clarifying your policy. My English is limited, so I use AI to help me word and translate my comments. I also used AI for environment setup and testing, as well as the integration and submission preparation described in the PR. I understand your decision not to accept this submission. However, I remain concerned that the Japanese IME issue is unresolved. It affects users who need Japanese text input in browser-source interaction, including Japanese-speaking VTubers. Even if this implementation cannot be accepted, could you please consider addressing the underlying issue? If there is a preferred way to provide reproduction steps or test results that would help, please let me know. |
|
This issue is being tracked in #227 |
Description
Add the browser side of a native IME bridge for browser-source interaction:
This change includes five browser implementation files and the required companion Studio patch. It requires coordinated OBS Studio frontend/libobs IME API changes and does not build against unmodified libobs. The companion Studio changes are submitted in obsproject/obs-studio#14016. Both PRs are required. The patch at
docs/patches/obs-studio-native-ime.patchis an alternative way to apply the same Studio changes; do not apply it again on top of the Studio PR. Documentation, the event fixture, and investigation records remain local and are not included in this diff.Motivation and Context
Many Japanese VTubers interact with browser sources and enter Japanese text during their streams. When IME input is unavailable, they cannot complete the text input they need, which disrupts their streams.
Related to #227. This remains a coordinated Studio/browser candidate, rather than a standalone resolution of the issue.
How Has This Been Tested?
Current browser commit:
9bd401610755487e9d5e4a9afa8067ee8ca132e8.The five implementation files are byte-identical to the previously validated candidate. The earlier cleanup removed supporting files and passed
git diff --check. The companion Studio patch has now been restored unchanged and successfully applied to the saved Studio source. Builds and native tests were not rerun for the cleanup or restoration; applicability to the latest Studio master was not checked during restoration.Contributor-reported hands-on testing:
The detailed Windows language list, scenario matrix, and mapping of these tested builds to exact source revisions remain undocumented.
Recorded local validation:
e7f0b0d43c538f5d108aa4cbea473d57b3012a1a, the companion patch, and pinned dependencies; code signing was disabled.Remaining limitations: libobs API/ABI and source-registration compatibility need review. Reconversion and arbitrary replacement ranges are unsupported. The companion Studio frontend bridge is Windows-only; the Mac report does not establish new native Mac composition support.
Types of changes
Native IME support / bug-fix candidate; non-breaking compatibility is not asserted while the paired libobs API/ABI review remains outstanding.
Checklist: