Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-58013

Cursor position changes not properly passed to input method

    XMLWordPrintable

    Details

    • Platform/s:
      Android

      Description

      On Android, the platform input context does not implement update()
      (http://code.qt.io/cgit/qt/qtbase.git/tree/src/plugins/platforms/android/qandroidinputcontext.cpp?h=5.8.0#n645).
      Instead, it relies on connecting to the widget's cursorPositionChanged() signal
      (http://code.qt.io/cgit/qt/qtbase.git/tree/src/plugins/platforms/android/qandroidinputcontext.cpp?h=5.8.0#n684).

      As a result, custom widgets which properly interact with the input method via update() but do not provide cursorPositionChanged() suffer in the following way after changing the position:

      • The current word does not become the current preedit string.
      • The predictive text does not reflect the current context.
      • The next letter entered by the user is composed with the (invisible) preedit string from the previous context and inserted as the new preedit string at the cursor position.

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              qtandroidteam Qt Android Team
              Reporter:
              dg0yt Kai Pastor
              Votes:
              3 Vote for this issue
              Watchers:
              14 Start watching this issue

                Dates

                Created:
                Updated: