bug: delegatesFocus patch for ios causes rendering issues with item sliding in chrome
See original GitHub issuePrerequisites
- I have read the Contributing Guidelines.
- I agree to follow the Code of Conduct.
- I have searched for existing issues that already report this problem, without success.
Ionic Framework Version
- v4.x
- v5.x
- v6.x
- Nightly
Current Behavior
When you click to drag an ion-item inside of an ion-item-sliding and you have an ion-input in the ion-item if you start the drag by hovering over the ion-label, then end the drag while hovering over the ion-input the slider abruptly jiggles to the left, slams shut, and when you drag it to open it again the ion-item-option is missing.
You can fix the ion-item-sliding by dragging it back to the left even though it is already shut.
I believe the issue is that the ion-item-option is somehow being pushed out of view.
Expected Behavior
I expect that when I am intending to drag an ion-item inside an ion-item-sliding that releasing the mouse while hovering over an ion-input will not cause the ion-item-sliding to close, or for the ion-item-option to disappear when re-opening.
Steps to Reproduce
- Click the
ion-label
of theion-item
- Do NOT let go of the mouse
- Drag the
ion-item
to the right until the cursor turns into a text-cursor - Release the mouse
- Open the
ion-item-sliding
back up to see that theion-item-option
is now gone
<ion-item-sliding>
<ion-item-options side="start">
<ion-item-option>Test</ion-item-option>
</ion-item-options>
<ion-item>
<ion-label>Test Slider</ion-label>
<ion-input></ion-input>
</ion-item>
</ion-item-sliding>
Before option disappears
After option disappears
And here’s a gif of the issue in action
Code Reproduction URL
https://github.com/deving1995/ion-item-sliding-issue
Ionic Info
[WARN] Error loading @capacitor/ios package.json: Error: Cannot find module ‘@capacitor/ios/package’
Require stack:
- C:\Users\dgero\AppData\Roaming\npm\node_modules\@ionic\cli\lib\project\index.js
- C:\Users\dgero\AppData\Roaming\npm\node_modules\@ionic\cli\lib\index.js
- C:\Users\dgero\AppData\Roaming\npm\node_modules\@ionic\cli\index.js
- C:\Users\dgero\AppData\Roaming\npm\node_modules\@ionic\cli\bin\ionic
[WARN] Error loading @capacitor/android package.json: Error: Cannot find module ‘@capacitor/android/package’
Require stack:
- C:\Users\dgero\AppData\Roaming\npm\node_modules\@ionic\cli\lib\project\index.js
- C:\Users\dgero\AppData\Roaming\npm\node_modules\@ionic\cli\lib\index.js
- C:\Users\dgero\AppData\Roaming\npm\node_modules\@ionic\cli\index.js
- C:\Users\dgero\AppData\Roaming\npm\node_modules\@ionic\cli\bin\ionic
Ionic:
Ionic CLI : 6.18.1 (C:\Users\dgero\AppData\Roaming\npm\node_modules@ionic\cli) Ionic Framework : @ionic/angular 6.1.4 @angular-devkit/build-angular : 13.2.6 @angular-devkit/schematics : 13.2.6 @angular/cli : 13.2.6 @ionic/angular-toolkit : 6.1.0
Capacitor:
Capacitor CLI : 3.5.1 @capacitor/android : not installed @capacitor/core : 3.5.1 @capacitor/ios : not installed
Utility:
cordova-res : not installed globally native-run : 1.5.0
System:
NodeJS : v14.17.1 (C:\Program Files\nodejs\node.exe) npm : 8.6.0 OS : Windows 10
Additional Information
The reason I believe the issue is that the ion-item-option
is being pushed off screen is because you can actually get the ion-item-option
to be partially out of view.
.
Issue Analytics
- State:
- Created a year ago
- Comments:7 (4 by maintainers)
Top GitHub Comments
Hey there,
I merged a fix in via https://github.com/ionic-team/ionic-framework/pull/25822 that resolves this issue. The relevant code was originally there to work around an iOS 13 bug. We will be dropping iOS 13 support in Ionic 7, so we are targeting the fix for that release.
I am going to close this since the code has been merged, but let me know if you have any questions. Thanks for the report!
Hi there,
We are proposing some changes to form components that seek to resolve this issue. We would love your feedback on these proposed changes! You can read more about the changes and leave comments here: https://github.com/ionic-team/ionic-framework/discussions/25661