-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Comparing changes
Open a pull request
base repository: ionic-team/ionic-framework
base: v8.7.16
head repository: ionic-team/ionic-framework
compare: v8.7.17
- 10 commits
- 35 files changed
- 4 contributors
Commits on Dec 23, 2025
-
Configuration menu - View commit details
-
Copy full SHA for 7d64307 - Browse repository at this point
Copy the full SHA 7d64307View commit details
Commits on Dec 31, 2025
-
fix(modal): prevent card modal animation on viewport resize when moda…
…l is closed (#30894) Issue number: resolves #30679 --------- <!-- Please do not submit updates to dependencies unless it fixes an issue. --> <!-- Please try to limit your pull request to one type (bugfix, feature, etc). Submit multiple pull requests if needed. --> ## What is the current behavior? When a page contains a card modal with a `presentingElement`, resizing the viewport (e.g., rotating from portrait to landscape) triggers the card modal's "lean back" animation on the presenting element, even when the modal has never been opened. ## What is the new behavior? Viewport resize events no longer trigger the presenting element animation when the modal is not presented. The animation only runs when the modal is actually open. ## Does this introduce a breaking change? - [ ] Yes - [X] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Current dev build: ``` 8.7.16-dev.11767028735.16932cea ```
Configuration menu - View commit details
-
Copy full SHA for 36f4b4d - Browse repository at this point
Copy the full SHA 36f4b4dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f71f4bf - Browse repository at this point
Copy the full SHA f71f4bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 37f87b3 - Browse repository at this point
Copy the full SHA 37f87b3View commit details -
v8.7.16 --------- Co-authored-by: ionitron <hi@ionicframework.com>
Configuration menu - View commit details
-
Copy full SHA for 07b46d7 - Browse repository at this point
Copy the full SHA 07b46d7View commit details
Commits on Jan 13, 2026
-
fix(input): prevent placeholder from overlapping start slot during sc…
…roll assist (#30896) Issue number: resolves internal --------- <!-- Please do not submit updates to dependencies unless it fixes an issue. --> <!-- Please try to limit your pull request to one type (bugfix, feature, etc). Submit multiple pull requests if needed. --> ## What is the current behavior? On iOS, when focusing an `ion-input` or `ion-textarea` that requires scrolling into view (scroll assist), the placeholder text shifts to the left and overlaps any content in the start slot (e.g., icons). This occurs because the cloned input used during scroll assist is positioned at the container's left edge rather than at the native input's actual position. Additionally, when quickly switching between inputs before scroll assist completes, focus jumps back to the original input. ## What is the new behavior? The cloned input is now positioned at the same offset as the native input, preventing the placeholder from shifting or overlapping start slot content during scroll assist. This works correctly for both LTR and RTL layouts. Also, scroll assist no longer steals focus back if the user has moved focus to another element while scrolling was in progress. ## Does this introduce a breaking change? - [ ] Yes - [X] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Current dev build: ``` 8.7.16-dev.11767042721.11309185 ```
Configuration menu - View commit details
-
Copy full SHA for 3b3318d - Browse repository at this point
Copy the full SHA 3b3318dView commit details
Commits on Jan 14, 2026
-
fix(tab-bar): prevent keyboard controller memory leak on rapid mount/…
…unmount (#30906) Issue number: resolves internal --------- ## What is the current behavior? When `ion-tab-bar` is rapidly mounted and unmounted, a race condition in connectedCallback can cause the keyboard controller to be created after the component has been disconnected. This results in orphaned event listeners (`keyboardWillShow`, `keyboardWillHide`) on the window object that are never cleaned up, causing a memory leak. ## What is the new behavior? The keyboard controller is now properly destroyed in all scenarios: - If the component is disconnected while createKeyboardController is pending, the promise is tracked and destroyed when it resolves - If a new connectedCallback runs before the previous async completes, the stale controller is destroyed The promise tracking pattern ensures only the most recent async operation assigns its result ## Does this introduce a breaking change? - [ ] Yes - [X] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Current dev build: ``` 8.7.17-dev.11767895575.16ea7cef ``` I was unable to find a way to create tests that accurately identified if this problem was occurring. Memory leaks are notoriously difficult to created automated tests for. I ultimately removed my previous attempts because I didn't want to give a false sense of security.
Configuration menu - View commit details
-
Copy full SHA for f99d000 - Browse repository at this point
Copy the full SHA f99d000View commit details -
fix(input): prevent Android TalkBack from focusing label separately (#…
…30895) Issue number: resolves internal --------- <!-- Please do not submit updates to dependencies unless it fixes an issue. --> <!-- Please try to limit your pull request to one type (bugfix, feature, etc). Submit multiple pull requests if needed. --> ## What is the current behavior? When using `ion-input` with a label on Android, TalkBack treats the visual label text as a separate focusable element. This causes the initial focus to land on the label instead of the input field, creating a confusing experience for screen reader users. ## What is the new behavior? The label text wrapper is now hidden from the accessibility tree via `aria-hidden="true"`, while the native input maintains proper labeling through `aria-labelledby`. This ensures Android TalkBack focuses directly on the input field while still announcing the label correctly. ## Does this introduce a breaking change? - [ ] Yes - [X] No <!-- If this introduces a breaking change: 1. Describe the impact and migration path for existing applications below. 2. Update the BREAKING.md file with the breaking change. 3. Add "BREAKING CHANGE: [...]" to the commit description when merging. See https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#footer for more information. --> ## Other information <!-- Any other information that is important to this PR such as screenshots of how the component looks before and after the change. --> Current dev build: ``` 8.7.16-dev.11767032989.1ae720d0 ```
Configuration menu - View commit details
-
Copy full SHA for ab733b7 - Browse repository at this point
Copy the full SHA ab733b7View commit details -
chore(github): do not close issues as stale when they are external bu…
…gs (#30915) Ionitron keeps closing issues with `bug: external` as stale: #27052 (comment) This PRs adds `bug: external` as an exempt label when closing issues as stale. Co-authored-by: Brandy Smith <6577830+brandyscarney@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 95b8702 - Browse repository at this point
Copy the full SHA 95b8702View commit details -
Configuration menu - View commit details
-
Copy full SHA for d7b4d06 - Browse repository at this point
Copy the full SHA d7b4d06View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v8.7.16...v8.7.17