Skip to content

About windowSoftInputMode, DrawerLayout and issue #95 #183

@raguirre

Description

@raguirre

First of all, Mike you are a genius for solving issue #95. I'm so thankful you solved it, I've been banging my head for 3 days now trying to understand just what was happening.

Seeing what Google is doing with most of its apps, there is no reason to completely remove the drawer from an activity that makes use of the keyboard, but if they are doing it it just seems to me they're aware of the situation, and along with the fact that nowhere in the documentation could I find that these 2 scenarios are incompatible, leads me to believe that this is a genuine bug within DrawerLayout. This, and the fact that I tested an activity without a drawer but with translucent status bar and it resized without a problem. I will look into it and see if I can file a bug.

Here's my request:
I would like an instance of the KeyboardUtil to be added by default to all new drawers being created. From what I can tell, there's no downside to it. This way, people who have no idea about the bug won't even realize there's a bug at all.

If there is indeed a downside to it, then I think it would be just fair to put a warning in the readme or a mention about it in the wiki. After hours of Google searches I could not find anywhere that the bug was related to DrawerLayout. I was just lucky enough to find that you had already hacked it.

Nevertheless, thanks again for solving the issue and for making this amazing library.

EDIT:
Okay nevermind, after further testing of the KeyboardUtil in my main activity which holds a ViewPager, I do see some noticable frame drops when I scroll around the different pages because of the OnGlobalLayoutListener. So I thought it would be a good idea to have the option to add and remove the listener on demand, as it could only be needed in some fragments, and removing it while it's not needed will improve performance. Something like activateListener() and deactivateListener(). Thanks :)

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions