Add a Text Input Field in Object Data Properties to Fix Non-English (IME) Typing Glitches
Add a "Text Input Field" in Object Data Properties to resolve non-English (IME) typing glitches
Proposal: Currently, editing text objects directly in the 3D Viewport via Edit Mode has very poor support for Input Method Editors (IMEs). This makes it extremely difficult for non-English users (such as Chinese, Japanese, and Korean speakers) to type directly, as the candidate selection window often fails to appear, misplaces, or glitches out entirely. Users are constantly forced to copy text from external text editors and paste it into Blender.
To solve this, I propose adding a native text input/edit box directly inside the Object Data Properties panel (the green 'a' icon panel). This allows users to type and edit text comfortably within a standard UI field, which automatically synchronizes with the 3D text object.
Concept Demonstration (Python Script)
I have written a temporary Python script to demonstrate exactly how this feature should look and function. It appends a quick text input field at the very bottom of the Font Data panel:
import bpy
class DATA_PT_custom_text_input(bpy.types.Panel):
bl_label = "Text Content Input (Concept Demo)"
bl_idname = "DATA_PT_custom_text_input"
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
bl_context = "data"
@classmethod
def poll(cls, context):
return context.active_object and context.active_object.type == 'FONT'
def draw(self, context):
layout = self.layout
text_data = context.active_object.data
# Expose the native 'body' property of the text object
layout.prop(text_data, "body", text="Text")
def register():
bpy.utils.register_class(DATA_PT_custom_text_input)
if __name__ == "__main__":
register()
0 Comments