Why does Android ViewPager2 looses focus when switching between tabs? - android-edittext

I have a ViewPager2 on my Android App. One of the pages contains an EditText field.
The scenario I encountered is as follows:
Set focus on the text field -> keyboard shows
Switch to another page -> keyboard dismisses (the field lost focus)
Go back to the previous tab and set focus on the text field again -> the field will gain focus but immediately the focus would clear. Tapping on the field again will get the focus back.
I prepared a small demo app to demonstrate this issue: https://github.com/hilaza/SwitchTabsBugDemo
I debugged it and what I found was that the ViewPager clears the focus from my page, thinking that a page was selected. Debugging it further I saw that it has something to do with the RecyclerView's didChildRangeChange method which wrongly assumes that something has changed.
Does anyone happen to know why it's happening and what can I do to work around this?

This is a strange bug happens because of Recycler behaviour. Unfortunately, cannot explain why it happens, but know for sure that this row might help you:
pager.offscreenPageLimit = 1
Or the equivalent in Java. This may help because it disables some of Recycler behaviour. Will be happy if someone explains it better. Faced the same issue and resolved it with this one.

Related

Predicitve text/suggestion above keyboard doesn't work?

My whole Xcode project has a weird behaviour,dont know what is causing this issue I am getting prediction and suggestions above my keyboard, but when I click on the text it doesn't call any method or when I try clicking on the predicited text it doesn't work.
is there by chance because of using third party pods?have tried all types of textContentType I get suggestion like name,phonenumber,otp but unfortunately when I tap on it it doesn't work
its behaviour is literally like the predicition has user interaction disabled

IOS steals focus from first input element for some reason

working on a React/Material-UI based series of forms. The autofocus HTML property works as expected, but for some strange reason the page, upon load, is stealing focus away from the first text field, and applying it somewhere in the middle.
This is especially annoying since I have validation onBlur, which will throw up a little error message saying to the user that the first field needs to be filled out. How do I keep iOS Safari from stealing that focus?
I had a similar problem to this using TextField with multiline set to true (rendering a <textarea>). I'm not sure why, but I was able to narrow it down to a minHeight that I had set on the textareaStyle prop for TextField. My problem showed up on both iOS and Safari so I'm guessing it's got to do something with webkit. Removing the minHeight rule solved my issue of the focus being stolen.

iPad text input and text selecting not working properly

This will be difficult to explain so I won't paste any code.
I'm implementing a wysiwyg editor on my site called wysihtml5 and there are several issues when selecting the textarea/editor with the iPad. On a desktop browser, all is fine, the text can be selected, edited, pasted etc. But on the iPad multpiple issues occur:
Can't tap anywhere in the text to move the cursor there
If I manually move the cursor, all of a sudden I can't type anything anymore
Tapping outside of the texteditor doesn't bring the keyboard down
Basically I'm just hoping there's someone who has had similiar experiences with iPad cursor not behaving correctly in text input fields and what possible solutions there might be. I'm stuck and have no idea how to debug this.
Did you use touch event? iOS has a bug: you can't input in editable iframe if you are listening(or had listened) any touch event(touchstart, touchmove...), I tested this bug occurs even you listen other elements but iframe itself. yes, it's a serious bug, you can check out:
wysihtml5 issues98

PhpStorm 6.0.1 - Shortcut to save activates search bar

So i got the following problem. When I'm working inside the editor and press STRG + S (what should be save) the document gets saved, but what happens also is, that a search bar gets popped up and the next thing I write get's written into the search bar instead of the editor itself. I then have to click into the editor again to write there. This is pretty annoying since I save quite a lot. In the Keymapping STRG+S is set for Save all, so this doesn't make really sense for me.
As a comparison here two screenshots. The first one shows how it looks like, when I write something and didn't save yet. The second one shows what happens, as soon as I press STRG+S
As you can see a search bar pops up and gets the focus of the cursor. This is what I'm trying to solve but can't find a solution for.
Update to the latest version, 6.02, your problem should be solved.

How to navigate BlackBerry BrowserField2 in OS5

I am using the new BrowserField2 in BlackBerry OS5 to display HTML content in my app. There are 3 options available for navigation through links in that content.
CURSOR navigation uses a block cursor and actually moves through the characters of the page. Not very useful for me.
POINTER navigation uses a mouse like pointer that you move around the screen and hover over elements. This could work but there is a bug however in that the browser field captures navigation and never lets go so this mode is effectively broken if you share a screen with any other managers. Once your focus enters the browser field you cannot move focus back out and into neighboring fields. RIM has acknowledged the bug but has no work around.
NONE which is for custom navigation but they offer no explanation as to how you would do this.
What I ideally want is to simply have trackpad movements move the focus through the links and highlight them. Then a click would activate the link. I assume I would select the NONE option above and implement my own focus navigation but I am not clear how this can be accomplished with the new APIs.
Is anyone familiar with the new browser2 component could give some guidance?
Thanks!
There's a workaroudn to getting back the focus out of the BrowserField using the NAVIGATION_POINTER.
I found it in this thread:
http://supportforums.blackberry.com/t5/Java-Development/BrowserField-2-Navigation-Mode/td-p/632172
"farahh" posted this:
I found out a hack..
with the navigation set to pointer mode, a click outside the browserfield manager invokes Manager.invokeAction(int). I used the getFieldWithFocus to verify which field has focus and then switch the focus to something else.
Cheers.
Nahuel
PD: i havent found out how to get the behaviour you want, i need that as well so if you got it working please let me know, its kinda urgent in my project =(
I actually reverted back to the older browser1 (OS4) component because the navigation problems in browserField2 (OS5) were a deal breaker for me. Luckily the OS4 browser does everything I need in terms of functionality and it has the exact navigation behavior I need and there are no focus problems mixing it with other views.

Resources