Skip to content

chore: sync upstream PR #8606 - fix(android): do not pad the WebView for the IME below API 30 - #151

Open
riderx wants to merge 38 commits into
plusfrom
sync/upstream-pr-8606
Open

riderx wants to merge 38 commits into
plusfrom
sync/upstream-pr-8606

Conversation

@riderx

@riderx riderx commented Sep 17, 2026 •

Copy link
Copy Markdown
Member

Merge Conflict Review Required

The sync of upstream PR ionic-team#8606 from @ruffzy encountered merge conflicts.

Original PR: ionic-team#8606

What happened

  • Git applied the upstream-preferred merge strategy
  • This PR requires CI and manual review before merging

Synced from upstream by Capacitor+ Bot


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Review in cubic

Github Workflow (on behalf of markemer) and others added 30 commits May 7, 2026 16:55
Co-authored-by: jcesarmobile <jcesarmobile@gmail.com>
Co-authored-by: Joey Pender <joey.pender@outsystems.com>
Co-authored-by: Pedro Bilro <pedro.gustavo.bilro@outsystems.com>
Co-authored-by: Mark Anderson <mark.anderson@outsystems.com>
…#8476)

Co-authored-by: jcesarmobile <jcesarmobile@gmail.com>
…am#8492)

Co-authored-by: Mark Anderson <mark.anderson@outsystems.com>
ItsChaceD and others added 8 commits August 31, 2026 16:49
…ermissions (ionic-team#8400)

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Pedro Bilro <pedro.gustavo.bilro@outsystems.com>
On API 29 the window is already resized by the system when the keyboard
opens (windowSoftInputMode="adjustResize"), and WindowInsetsCompat can
only approximate the ime() inset there. SystemBars additionally applied
that approximated height as bottom padding, so the WebView was shrunk
twice and collapsed to a few hundred pixels whenever WebView >= 140 and
viewport-fit=cover were in use. After a rotation with the keyboard open
the stale padding stuck until the app was restarted.

Only apply the IME padding on API 30+, where ime() reports the real
overlap. Verified on a Huawei MAR-LX1A (Android 10, WebView 152):
window.innerHeight with the keyboard open is now 442 instead of 141
CSS px, and rotating with the keyboard open no longer leaves the WebView
stuck. Behaviour on API 30+ is unchanged.

Fixes ionic-team#8601

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@riderx

riderx commented Sep 17, 2026

Copy link
Copy Markdown
Member Author

Git applied the upstream-preferred strategy to resolve this sync. Please review the branch carefully before merging.

@coderabbitai

coderabbitai Bot commented Sep 17, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 4 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 3c1e4c8f-f4bd-4eec-8116-33f115d6a6c0

📥 Commits

Reviewing files that changed from the base of the PR and between 8687b31 and 93206d2.

📒 Files selected for processing (45)
  • .github/workflows/ci.yml
  • CHANGELOG.md
  • android/CHANGELOG.md
  • android/capacitor/src/androidTest/AndroidManifest.xml
  • android/capacitor/src/androidTest/java/com/getcapacitor/android/HttpInterceptorNavigationTest.java
  • android/capacitor/src/androidTest/java/com/getcapacitor/android/InterceptorAllowingPlugin.java
  • android/capacitor/src/androidTest/java/com/getcapacitor/android/TestHostActivity.java
  • android/capacitor/src/main/assets/native-bridge.js
  • android/capacitor/src/main/java/com/getcapacitor/Bridge.java
  • android/capacitor/src/main/java/com/getcapacitor/BridgeWebChromeClient.java
  • android/capacitor/src/main/java/com/getcapacitor/Plugin.java
  • android/capacitor/src/main/java/com/getcapacitor/WebViewLocalServer.java
  • android/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaWebViewImpl.java
  • android/capacitor/src/main/java/com/getcapacitor/plugin/SystemBars.java
  • android/capacitor/src/test/java/com/getcapacitor/plugin/SystemBarsTest.java
  • android/capacitor/src/test/java/com/getcapacitor/plugin/util/HttpRequestHandlerTest.java
  • android/package.json
  • cli/CHANGELOG.md
  • cli/package.json
  • cli/src/declarations.ts
  • cli/src/ios/update.ts
  • cli/src/tasks/migrate-uiscene.ts
  • cli/src/tasks/migrate.ts
  • cli/src/tasks/run.ts
  • cli/src/util/node.ts
  • cli/src/util/spm.ts
  • cli/src/util/xcode.ts
  • cli/test/migrate-uiscene-plist.spec.ts
  • cli/test/migrate-uiscene-scan.spec.ts
  • cli/test/xcode.spec.ts
  • core/CHANGELOG.md
  • core/native-bridge.ts
  • core/package.json
  • core/system-bars.md
  • ios-pods-template/App/App/Info.plist
  • ios-spm-template/App/App/Info.plist
  • ios/CHANGELOG.md
  • ios/Capacitor/Capacitor.xcodeproj/project.pbxproj
  • ios/Capacitor/Capacitor/CAPSceneDelegateProxy.swift
  • ios/Capacitor/Capacitor/CapacitorBridge.swift
  • ios/Capacitor/Capacitor/WebViewAssetHandler.swift
  • ios/Capacitor/Capacitor/WebViewDelegationHandler.swift
  • ios/Capacitor/Capacitor/assets/native-bridge.js
  • ios/Capacitor/CapacitorTests/HttpInterceptorNavigationTests.swift
  • ios/package.json

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown

Beta npm build

Maintainers can publish one Capacitor Plus workspace package from this PR to npm for fast testing.

Comment /publish-beta <package> after the PR checks are green.

Examples:

/publish-beta core
/publish-beta cli
/publish-beta @capacitor-plus/core

If exactly one workspace package changed, /publish-beta without a package will use that package.

Packages:

  • core (@capacitor-plus/core)
  • cli (@capacitor-plus/cli)
  • android (@capacitor-plus/android)
  • ios (@capacitor-plus/ios)

The workflow will:

  • publish a prerelease package on the beta tag
  • update this comment with the install command

Security note: beta publish is only enabled for branches inside this repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.