Rg.Plugins.Popup icon indicating copy to clipboard operation
Rg.Plugins.Popup copied to clipboard

Padding problem on Iphone 11 Pro Max

Open mcferdev opened this issue 4 years ago • 12 comments

🐛 Bug Report

I have a popup menu containing a listview with 2 options. When I click on the TabbedPage[0] item, I show the popup. The bug only occurs on the Iphone 11 and Pro Max (Till now), but no with 11 Pro. Weird ? The popup just shows one item of the popup, instead of 2. Appear 2 lines, but the first is not clickable. I tried using iOs Safe Area true, but no difference. I have this app running in many devices and it's only happening on the Max.

The problem just happens on the first time of click. If I click again, appear correctly. Very weird.

I tried to debug, but haven't found.

Expected behavior

Show the popup above the tabbedpage menu.

Reproduction steps

Configuration

Version: 2.0.0.6 Xamarin.forms 4.8.0.1534

Platform:

  • [ x] :iphone: iOS
  • [ ] :robot: Android
  • [ ] :checkered_flag: WPF
  • [ ] :earth_americas: UWP
  • [ ] :apple: MacOS
  • [ ] :tv: tvOS
  • [x ] :monkey: Xamarin.Forms

mcferdev avatar Oct 09 '20 12:10 mcferdev

Simulator Screen Shot - iPhone 11 Pro Max - 2020-10-09 at 08 21 19 Simulator Screen Shot - iPhone 11 Pro - 2020-10-09 at 08 20 03

mcferdev avatar Oct 09 '20 12:10 mcferdev

I have a very similar issue - see screenshots. Sill with latest V2.0.0.7.

Although happening on my physical device (11 Pro Max running iOS 14.2) and also on every combination device of simulator, so I suspect basically everywhere.

I must add that this seems to happen, at least in my case, when the content is a ListView, not on other popups.

And it seemed to have be broken by some Xamarin Forms update at some point...

1st time - ko: Screenshot 2020-11-19 at 18 26 06

2nd time and onward - ok: Screenshot 2020-11-19 at 18 26 24

nbsoftware avatar Nov 19 '20 17:11 nbsoftware

@mcferdev did you find a workaround for this one? @rotorgames can you acknowledge the issue?

Thanks

nbsoftware avatar Nov 23 '20 10:11 nbsoftware

@nbsoftware unfortunately I think @rotorgames doesn't work much on this project anymore.

I was able to reproduce this issue @mcferdev on the demo version from memory. I thought I responded to this. I'll have to give it another look and try and track down the issue

LuckyDucko avatar Dec 03 '20 00:12 LuckyDucko

Hi @mcferdev

Any update on this one by any luck?

UPDATE: this was for @LuckyDucko... sorry.

nbsoftware avatar Dec 08 '20 16:12 nbsoftware

Nothing so far, I have been looking at #595

LuckyDucko avatar Dec 09 '20 00:12 LuckyDucko

No. Annoying...

I am stuck on this a long time. I tried several things, but no luck.

@nbsoftware I just have this problem with ListView also.

mcferdev avatar Jan 05 '21 14:01 mcferdev

I noticed that my problem was because on iOS, the Listview has a empty space on the top. If I tried to scroll, I could see the other option. So, I forced my Listview to scroll down.

if (Device.RuntimePlatform == Device.iOS)
            {
                var lastitem = this.listView.ItemsSource.Cast<object>().LastOrDefault();
                listView.ScrollTo(lastitem, ScrollToPosition.End, false);
            }

mcferdev avatar Jan 06 '21 22:01 mcferdev

But that's only a workaround, right? We should have to do that.

nbsoftware avatar Jan 06 '21 22:01 nbsoftware

Investigating this, I have some simulators running iOS 12.1 (both notched/unnotched phone types) and they don't show this issue running the latest code.

So it seems something has changed between how iOS 12 treats its padding, and iOS 14 I have been trying to work with SafeArea insets/Padding and haven't had much luck

Update

While messing around, I found out that it has something to do with what the ListView is contained in, as adding CompressedLayout.IsHeadless="True" to both stack layouts fixed the issue. Now I we just need to find out if this is a Xamarin issue, or an Rg one!

https://user-images.githubusercontent.com/17778102/103858310-31afe300-510c-11eb-808a-f66a1a576552.mp4

LuckyDucko avatar Jan 07 '21 06:01 LuckyDucko

But that's only a workaround, right? We should have to do that.

Yes, for sure. Just a help for who needs a solution asap.

mcferdev avatar Jan 25 '21 13:01 mcferdev

Investigating this, I have some simulators running iOS 12.1 (both notched/unnotched phone types) and they don't show this issue running the latest code.

So it seems something has changed between how iOS 12 treats its padding, and iOS 14 I have been trying to work with SafeArea insets/Padding and haven't had much luck

Update

While messing around, I found out that it has something to do with what the ListView is contained in, as adding CompressedLayout.IsHeadless="True" to both stack layouts fixed the issue. Now I we just need to find out if this is a Xamarin issue, or an Rg one!

ScreenRecordingShowingCompressedWorks.mp4

Nice !! Much better...

mcferdev avatar Jan 25 '21 13:01 mcferdev