Skip to content

Rotating the window and Positioning the software keyboard #21

Closed
@bbrto21

Description

@bbrto21

Problem

  1. When the device is rotated, an animation of rotating the window should occur but it doesn't
  2. After the device is rotated, the keyboard should also be positioned correctly but it doesn't.

As-is

  • When the device is rotated, No rotating animation occurs.
  • screenshot
    Image Pasted at 2021-1-5 16-30

Expected(android)

  • When the device is rotated, you can see the animation of rotating the window
  • screenshot
    Screenshot_20210105-193420

Details

To solve these problems, I tried setting available rotation degrees on the window.

ecore_wl2_window_available_rotations_set

If you use the above API and you rotate the actual device, you can see that the window is also rotated according to the device orientation with an appropriate rotating animation. the keyboard is positioned also correctly.
But after that, the screen looks frozen.
*If you are using the scrollable sample app, you can easily see that the screen is frozen after rotating the device with the above API.

I tried the following to analyze and to solve the problem, but it didn't work.

  • Remove gl surface transformation
    • The screen may appear partially frozen. when pause-resume occurs, nothing will be shown(black screen).
  • After the device is rotated, re-create egl window surface after device rotated on the render thread
    • If you create a surface and clear the surface with any color, you can see that color momentarily. // It's natural.
    • However, once a rotation occurs, you can not see that color anymore. // this is very weird.
  • After the device is rotated, re-create wl2 window and egl window surface on the render thread
  • Create wl_egl_window* from Ecore_Wl2_Window and use it to create egl window surface

Please let me know if you know anything about this.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions