Skip to content

Support Microsoft modern Japanese IME  #10093

@nishimotz

Description

@nishimotz

Is your feature request related to a problem? Please describe.

Windows 10 Insider build already comes with the modern Japanese IME, which uses the same architecture as the Cloud Clipboard and the Emoji Panel.

NVDA already have AppModule for them, so modern Japanese IME does not work.

Describe the solution you'd like

I have worked around NVDA snapshot alpha 18399, and the Windows Insider build 18956.

Following app module gives the same experiences as with Japanese IME of Windows 10 version 1903.
It breaks current support for Cloud Clipboard and Emoji Panel, though.

# windowsinternal_composableshell_experiences_textinput_inputapp.py
import appModuleHandler
import api
import speech
import braille

class AppModule(appModuleHandler.AppModule):

	def event_UIA_elementSelected(self, obj, nextHandler):
		s3 = obj.parent.parent.parent.UIAElement.cachedClassName + ":" + obj.parent.parent.parent.UIAElement.cachedAutomationID
		s2 = obj.parent.parent.UIAElement.cachedClassName + ":" + obj.parent.parent.UIAElement.cachedAutomationID
		s1 = obj.parent.UIAElement.cachedClassName + ":" + obj.parent.UIAElement.cachedAutomationID
		s  = obj.UIAElement.cachedClassName + ":" + obj.UIAElement.cachedAutomationID
		if (
			s3 == "Windows.UI.Core.CoreWindow:" and
			s2 == "pane:IME_Candidate_Window" and
			s1 == "ListView:IME_Candidate_Window" and
			s == "ListViewItem:"
		):
			speech.cancelSpeech()
			api.setNavigatorObject(obj)
			speech.speakSpelling(obj.name, useCharacterDescriptions=True)
			braille.handler.message(braille.getBrailleTextForProperties(name=obj.name, role=obj.role, positionInfo=obj.positionInfo))
		nextHandler()

Describe alternatives you've considered

I am studying windowsinternal_composableshell_experiences_textinput_inputapp.py
and understand that it is difficult to know which event comes from which application or input system.
Because modern Japanese IME is still in preview, we should give feedback to Microsoft regarding this, such as to use different class names for them.

Additional context

The new IME once appeared in Windows Insider build 18277 last year, but it is not released with version 1903.

I am testing with the Fast Ring of Windows 10 Insider. However, it is reported by another user that the modern Japanse IME comes with Slow Ring as well, which is targeting version 19H2.

I have filed previous issues regarding Japanese IME such as #2730 and #2776.
They should be nice to have with new IME as well.
However, this issue is limited to give the support of the same level as current IME by NVDA.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Abandonedrequested reports or updates are missing since more than 1 year, author or users are not available.app/windows-interfaceInteractions between NVDA and the default Windows GUIfeature/i18nInternationalization featuresp3https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#prioritytriagedHas been triaged, issue is waiting for implementation.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions