Skip to content
Snippets Groups Projects
  1. May 26, 2024
  2. May 14, 2024
  3. Apr 30, 2024
  4. Apr 24, 2024
  5. Apr 22, 2024
  6. Apr 11, 2024
  7. Apr 01, 2024
  8. Mar 18, 2024
  9. Mar 13, 2024
  10. Mar 05, 2024
  11. Jan 16, 2024
  12. Jan 10, 2024
    • Aleksandras Kostarevas's avatar
      Improve text selection logic · 968b39af
      Aleksandras Kostarevas authored
      * Shift + swiping space now lets you select text
      * Text editor uses more consistent selection logic instead of sending dpad and relying on apps to implement shift+dpad selection, which many of them don't. Dpad is still used for up/down
      968b39af
  13. Jan 07, 2024
  14. Nov 28, 2023
  15. Nov 14, 2023
  16. Nov 13, 2023
  17. Oct 13, 2023
  18. Sep 04, 2023
  19. Aug 27, 2023
  20. Aug 22, 2023
  21. Aug 18, 2023
  22. Aug 15, 2023
  23. Aug 14, 2023
  24. Jul 06, 2023
  25. Jan 12, 2022
    • Ming-Shin Lu's avatar
      Using IME context to inflate layout from S_V2 · 6c752d8e
      Ming-Shin Lu authored
      With CL[1],[2] to migrate InputMethodService as the subclass of the new
      introduced class WindowProviderService in S_V2, IME context resources
      can be managed by associating the window container of IME window when
      its display/window configuration changed.
      
      So we can get rid of createDisplayContext logic from S_V2 with gated
      by SDK version and refining the method of get IME context with
      documentation to make it clear.
      
      [1]: Ie565e30ed5dd3f2cfe27355a6dded76dc3adc14b
      [2]: I64a1614f32d097785915f6105b1813a929e0fe32
      
      Bug: 213118079
      Bug: 133825283
      Test: manual with below steps
       1) adb install -r EditTextVariations.apk
       2) tapas LatinIME
       3) make
       4) adb install -r out/target/product/generic/system/app/LatinIME/\
              LatinIME.apk
       5) adb shell ime enable com.android.inputmethod.latin/.LatinIME
       6) adb shell ime set com.android.inputmethod.latin/.LatinIME
       5) Enable screen auto-rotation
       7) Launch EditTextVariations from launcher's shortcut
       8) Tap the first EditText field to show IME
       9) Rotate the device to the landscape mode
       10) Expect the IME should not be shrunk
      
      Change-Id: If2cc1c5bdb257a9c0af653fa7157cf781a90bf1d
      6c752d8e
  26. Jun 18, 2021
    • Ming-Shin Lu's avatar
      Fix Keyboard Theme update when device orientation changed · 6ae09365
      Ming-Shin Lu authored
      As CL[1] introduces diplayContext to address
      IME service context's Resources / DisplayMetrics update when
      switching IME window to another display after onConfigurationChange.
      
      In LatinIME#onInitializeInterface, we only update keyboard theme context
      and displayContent when the displayId is changed, but overlooked even
      the displayId is the same, the display context's resource configuration
      might changed like the device orientation changd.
      
      It leads getDefaultKeyboardHeight will get wrong config_max_keyboard_height
      fraction value when rotating to landcape because the context resources
      didn't get updated.
      
      Add a check to update keyboard theme context when the current display
      configuation is changed accordingly.
      
      [1]: I0ed6a079af1ed90c75fee1d36d5ce3ef3c41f8ed
      
      Fix: 186507147
      Test: manual as issue steps
          1) Turn on auto-rotate
          2) Open Settings
          3) Rotating the device to landscape mode
          4) Tap “Search settings", verify if the soft-keyboard shown and the
             size is expected.
      Change-Id: I288a31baf04fa2e63d6b4a14ad81b401cb36ece5
      Merged-In: I288a31baf04fa2e63d6b4a14ad81b401cb36ece5
      6ae09365
  27. May 28, 2021
    • Ming-Shin Lu's avatar
      Fix Keyboard Theme update when device orientation changed · 407f8a32
      Ming-Shin Lu authored
      As CL[1] introduces diplayContext to address
      IME service context's Resources / DisplayMetrics update when
      switching IME window to another display after onConfigurationChange.
      
      In LatinIME#onInitializeInterface, we only update keyboard theme context
      and displayContent when the displayId is changed, but overlooked even
      the displayId is the same, the display context's resource configuration
      might changed like the device orientation changd.
      
      It leads getDefaultKeyboardHeight will get wrong config_max_keyboard_height
      fraction value when rotating to landcape because the context resources
      didn't get updated.
      
      Add a check to update keyboard theme context when the current display
      configuation is changed accordingly.
      
      [1]: I0ed6a079af1ed90c75fee1d36d5ce3ef3c41f8ed
      
      Fix: 186507147
      Test: manual as issue steps
          1) Turn on auto-rotate
          2) Open Settings
          3) Rotating the device to landscape mode
          4) Tap “Search settings", verify if the soft-keyboard shown and the
             size is expected.
      Change-Id: I288a31baf04fa2e63d6b4a14ad81b401cb36ece5
      407f8a32
  28. Sep 11, 2019
    • lumark's avatar
      Create display context when switching IME to new display for AOSP IME · 87f14f1e
      lumark authored
      To address IME service context's Resources / DisplayMetrics update
      when switching IME window to another display after onConfigurationChange.
      
      We use Context#createDisplayContext to create display specific context when
      display changed, to ensure soft keyboard can re-layout with correct resources.
      
      Bug: 126930163
      Test: manual with AOSP IME as below steps:
           1) Settings > Developer options > enable "Simulated Display" & "Force desktop mode".
           2) Reboot device
           3) Launch app (i.e. Contacts) with bluetooth or usb mouse in Simulated display.
           4) Tap EditText on app to see see if IME window layout correctly on simulated display.
           5) Launch app (i.e Files) on primary display.
           6) Tap EditText on app to see if IME window layout correctly on primary display.
      
      Change-Id: I0ed6a079af1ed90c75fee1d36d5ce3ef3c41f8ed
      Merged-In: I0ed6a079af1ed90c75fee1d36d5ce3ef3c41f8ed
      87f14f1e
  29. Jul 09, 2019
    • lumark's avatar
      Create display context when switching IME to new display for AOSP IME · 4d464ec0
      lumark authored
      To address IME service context's Resources / DisplayMetrics update
      when switching IME window to another display after onConfigurationChange.
      
      We use Context#createDisplayContext to create display specific context when
      display changed, to ensure soft keyboard can re-layout with correct resources.
      
      Bug: 126930163
      Test: manual with AOSP IME as below steps:
           1) Settings > Developer options > enable "Simulated Display" & "Force desktop mode".
           2) Reboot device
           3) Launch app (i.e. Contacts) with bluetooth or usb mouse in Simulated display.
           4) Tap EditText on app to see see if IME window layout correctly on simulated display.
           5) Launch app (i.e Files) on primary display.
           6) Tap EditText on app to see if IME window layout correctly on primary display.
      
      Change-Id: I0ed6a079af1ed90c75fee1d36d5ce3ef3c41f8ed
      4d464ec0
  30. Jul 05, 2019
    • lumark's avatar
      Remove extend touchable region for AOSP keyboard · b4360e65
      lumark authored
      Remove EXTENDED_TOUCHABLE_REGION_HEIGHT from LatinIME#onComputeInsets
      to prevent keyboard touch region covered navigation bar
      when in split-window mode with display density < 240 case.
      
      Fix: 134893742
      Test: manual as below steps:
      1) Set window density as 240 with "adb shell wm density 240"
      2) Launch a app (i.e. Messages) from recents activity, set as split-screen mode.
      3) Tap Search bar to show IME keyboard.
      4) Press home / back / recents key if it works, expect it works.
      
      Change-Id: I596b7276041fecc50d2bc095c7e51664f632368d
      b4360e65
  31. May 04, 2019
    • Yohei Yukawa's avatar
      Launch AOSP Keyboard Settings on the same display · d7628414
      Yohei Yukawa authored
      This CL demonstrates how an IME can show an Activity on the display
      where the IME is shown.  The key points are:
      
       * The current display ID can be obtained as follows.
      
          final int curentDisplayId = inputMethodService
                  .getSystemService(WindowManager.class)
                  .getDefaultDisplay()
                  .getDisplayId();
      
       * When launching an Activity, specify the target display ID as
         follows.
      
          inputMethodService.startActivity(intent, ActivityOptions
                  .makeBasic()
                  .setLaunchDisplayId(curentDisplayId)
                  .toBundle());
      
      Fix: 131718879
      Test: Manually verified as follows.
        1. Build aosp_blueline-userdebug and flash it.
        2. adb shell settings put global force_desktop_mode_on_external_displays 1
        3. adb shell settings put global overlay_display_devices 1920x1080/320
        4. adb reboot
        5. With a mouse, launch any application that has input field
           in the secondary display.
        6. Click that input field to bring up AOSP Keyboard.
        7. Long click the comma key then select the gear icon.
        8. Select "Android Keyboard Settings (AOSP)"
        9. Make sure that the AOSP Keyboard Settings is launched in
           the secondary display, not in the default display.
       10. Go back to the step 7.
       11. Select "Languages"
       12. Subtype Enabler for AOSP Keyboard is shown in the secondary
           display, not in the default display.
      Change-Id: I9f89f371c38d9a7b5a06d018d4b41aa09815ea24
      d7628414
Loading