We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date

Free Text Landscape Mode

When adding FreeText, the view only takes up half of the screen in iOS. In Android, the Cancel (X) and Done (checkmark) buttons are no longer visible and there is only a button that says "Next". When pressed, the app crashes. I've included screenshots on both iOS and Android. Is there a quick fix or workaround?

Attachment: FreeTextScreenShots_53382f9c.zip

10 Replies

KK Karthik Krishnaraj Syncfusion Team February 15, 2019 02:25 PM UTC

Hi David, 
 
When adding FreeText, the view only takes up half of the screen in iOS.  
We were able to reproduce the issue in our side and we suspect this to defect. We will analyze further and update more details on 18th February 2019. 
 In Android, the Cancel (X) and Done (checkmark) buttons are no longer visible and there is only a button that says "Next". When pressed, the app crashes. 
We are unable to reproduce issue We could not see Next button instead we can see Done button in free text view when the device is rotated in landscape. Also, we are unable to reproduce the app crashing issue in our side by clicking on the done button. Could you please provide more details? 
 
 
 In Android, the Cancel (X) and Done (checkmark) buttons are no longer visible 
Since we are using native android EditText control in FreeText view and it seems to be behavior of the EditText while rotation. However, we will check and confirm this behavior and update you the details on 18th February 2019. 
 
Regards, 
Karthik. 



ZC Zach Carls February 15, 2019 03:34 PM UTC

Thanks for the reply. I tested this on another Android device and the Done button shows up, but when I click it, the app crashes and I get a "Java.Lang.IllegalStateException focus search returned a view that wasn't able to take focus" error. 

Here's the stack trace:

  --- End of managed Java.Lang.IllegalStateException stack trace ---
java.lang.IllegalStateException: focus search returned a view that wasn't able to take focus!
at android.widget.TextView.onKeyUp(TextView.java:8543)
at android.view.KeyEvent.dispatch(KeyEvent.java:3392)
at android.view.View.dispatchKeyEvent(View.java:12357)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at android.view.ViewGroup.dispatchKeyEvent(ViewGroup.java:1855)
at com.android.internal.policy.DecorView.superDispatchKeyEvent(DecorView.java:592)
at com.android.internal.policy.PhoneWindow.superDispatchKeyEvent(PhoneWindow.java:1861)
at android.app.Activity.dispatchKeyEvent(Activity.java:3344)
at android.support.v7.app.AppCompatActivity.dispatchKeyEvent(AppCompatActivity.java:534)
at android.support.v7.view.WindowCallbackWrapper.dispatchKeyEvent(WindowCallbackWrapper.java:58)
at android.support.v7.app.AppCompatDelegateImplBase$AppCompatWindowCallbackBase.dispatchKeyEvent(AppCompatDelegateImplBase.java:316)
at android.support.v7.view.WindowCallbackWrapper.dispatchKeyEvent(WindowCallbackWrapper.java:58)
at com.android.internal.policy.DecorView.dispatchKeyEvent(DecorView.java:471)
at android.view.ViewRootImpl$ViewPostImeInputStage.processKeyEvent(ViewRootImpl.java:5590)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5453)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4950)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5003)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4969)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:5106)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4977)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5163)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4950)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5003)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4969)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4977)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4950)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7719)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7659)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7620)
at android.view.ViewRootImpl$ViewRootHandler.handleMessage(ViewRootImpl.java:4595)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6938)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)



ZC Zach Carls February 15, 2019 10:58 PM UTC

Just some additional information: it seems that in iOS, the control doesn't re-render when orientation changes. I have the same issue when starting in landscape mode and switching to portrait mode when adding a free text.


KK Karthik Krishnaraj Syncfusion Team February 18, 2019 11:43 AM UTC

Hi Kristen, 
 
Thank you for your update, 
 
tested this on another Android device and the Done button shows up, but when I click it, the app crashes and I get a "Java.Lang.IllegalStateException focus search returned a view that wasn't able to take focus" error.  
Still we couldn’t reproduce the issue with provided information. Can you please share us the android device and SDK details in which the issue occurred? It will be helpful for us to analyze further. 
When adding FreeText, the view only takes up half of the screen in iOS.   
We are still analyzing in this as this require much deeper analysis we will update further details by tomorrow (19th February 2019). 
 
Regards, 
Karthik. 



SS Sathish Sivakumar Syncfusion Team February 19, 2019 12:08 PM UTC

  
Hi Kristen, 
 
Please find the details in the below table: 
 
When adding FreeText, the view only takes up half of the screen in iOS.   
 
We have confirmed that the issue “Free text view takes only half of the screen when the application is rotated to landscape mode in Xamarin.Forms.iOS” is a defect. The fix for this issue will be included in 2019 Volume 1 release which is expected to be available in March 2019. 
In Android, the Cancel (X) and Done (checkmark) buttons are no longer visible  
We are using native android EditText control in FreeText view so, the layout of EditText control is looks different while rotating the application to landscape mode. We could see the same behavior in searchbar present in the toolbar and confirm this as a behavior of EditText control. 
 
 
 
Regards, 
Sathish 



ZC Zach Carls March 4, 2019 08:53 PM UTC

Here's a sample project with the bug. Tested with Samsung Galaxy S9 device (API 28) and Google Pixel 3 (API 28) emulator. 

Steps to recreate issue:
Open app
Click "Add Text" button on bottom toolbar in Portrait mode.
Click anywhere to add text.
Rotate device to Landscape mode.
Add some text and click "Done" button.

Should crash on Java.Lang.IllegalStateException.

Please let me know if this works, thanks.

Attachment: FreeTextExample_33c139fc.zip


SS Sathish Sivakumar Syncfusion Team March 6, 2019 08:53 AM UTC

Hi Kristen, 
  
Thank you for your update. 
  
On checking with shared project, we found that there is no platform specific projects associated to the project. So we are unable to deploy that project and reproduce the reported issue. 
  
However, we have created an application based on the code snippets available in application project shared in your last update and tried to reproduce the issue. We didn’t face the issue Java.Lang.IllegalStateException. when adding the free text annotation if the device is rotated to landscape orientation. The sample can be downloaded from the below link. 
  
  
We have also shared the video for your reference and it can be downloaded from the below link. 
  
  
Kindly provide the following details to analyze more your issue. 
Modify the above sample to reproduce the issue. 
Android device and its configuration with OS details. 
  
Regards, 
Sathish 



ZC Zach Carls March 6, 2019 04:38 PM UTC

The sample you provided uses Xamarin Forms 3.1.0.697729. When I switched to this version, my project worked. But, when I tested in Xamarin Forms 3.4.0.1029999 and Xamarin Forms 3.6.0.220655, I get the illegal state exception.


SS Sathish Sivakumar Syncfusion Team March 7, 2019 08:50 AM UTC

Hi Kristen, 
 
Thank you for your information. 
 
We were able to reproduce the issue Java.Lang.IllegalStateException. when adding the free text annotation if the device is rotated to landscape orientation in Xamarin.Forms v3.4.0.1029999  and v3.6.0.220655” in our side. We will analyze more on this issue and get back to you on 11th March 2019. 
 
Regards,
Sathish 



SS Sathish Sivakumar Syncfusion Team March 11, 2019 01:22 PM UTC

Hi Kristen, 
 
Thank you for your patience 
 
We have validated and confirmed that the issue “Java.Lang.IllegalStateException when adding the free text annotation if the device is rotated to landscape orientation in Xamarin.Forms v3.4.0.1029999  and v3.6.0.220655” is a defect. The fix will be included in our 2019 Vol 1 SP 1 release which is expected to be available in April 2019. 
 
Regards, 
Sathish 


Loader.
Live Chat Icon For mobile
Up arrow icon