Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Hovered styles in Playwright Firefox do not display because we aren't truly mimicking a supported device.
| * - Chromium and WebKit suppress it because of hasTouch and isMobile. | ||
| * - Headless Firefox doesn't detect input devices and reports no hover | ||
| * capability regardless of context options, so override it via | ||
| * launchOptions.firefoxUserPrefs. Bit values: 4 = FINE (mouse), |
There was a problem hiding this comment.
Overriding it would lead to a global change so I didn't want to attempt that in this PR.
| .action-sheet-button.ion-focused:not(.ion-activated) { | ||
| color: var(--button-color-focused); | ||
|
|
||
| &::after { | ||
| background: var(--button-background-focused); | ||
|
|
||
| opacity: var(--button-background-focused-opacity); | ||
| } | ||
|
|
||
| &.action-sheet-selected::after { | ||
| background: var(--button-background-focused, var(--button-background-selected)); | ||
|
|
||
| opacity: var(--button-background-focused-opacity, var(--button-background-selected-opacity)); | ||
| } |
There was a problem hiding this comment.
By restructuring it this way, we are making sure that this style will be just a copy and paste for the Modular Ionic migration.
| $action-sheet-ios-button-translucent-filter: saturate(120%); | ||
|
|
||
| /// @prop - Maximum size of slotted children rendered in a select option's start/end slot | ||
| $action-sheet-ios-select-option-slot-size: dynamic-font-max(24px, 2); |
There was a problem hiding this comment.
Based on what I found through iOS code and that it scales up.
| */ | ||
| .select-option-start > *, | ||
| .select-option-end > * { | ||
| max-height: 24px; |
There was a problem hiding this comment.
Ionic theme didn't have any screenshots for alert.
| :host(.in-select-modal) { | ||
| --background-focused: #{globals.$ion-bg-neutral-subtlest-press}; | ||
| --background-focused-opacity: 0; | ||
| } | ||
|
|
||
| :host(.in-select-modal.ion-focused) .item-native { | ||
| --border-radius: #{globals.$ion-border-radius-400}; | ||
| } |
There was a problem hiding this comment.
These can live under the select-modal.ionic.scss file
There was a problem hiding this comment.
Updated to match latest designs
Issue number: resolves internal
What is the current behavior?
ion-select-optiondoesn't exposelabelPlacementorjustifyprops<ion-icon>placed inside anion-select-optionrenders empty in Vue/React (and other frameworks that bind custom-element props as DOM properties)select-option-start/select-option-endaren't size-capped consistently: oversized contentalert.{ios,md,ionic}.scss,action-sheet.ionic.scss,select-{modal,popover}.{ios,md,ionic}.scss) import the wrong shared partialsWhat is the new behavior?
labelPlacementandjustifyprops toion-select-optionand pass them through to alert, popover, and modal overlay paths@use/@importchains in the affected theme stylesheets so each theme file pulls in the right shared partials (mixins, theme globals, common base) and no longer relies on transitive imports that weren't guaranteedreflectPropertiesToAttributestocore/src/utils/sanitization/and call it fromgetOptionContentimmediately beforecloneNode. The helper mirrors a registered set of custom-element DOM properties (icon,name,src,ios,mdonion-icon) onto attributes so the cloned overlay copy renders correctly regardless of how the framework bound the prop.Does this introduce a breaking change?
Other information
Dev build:
8.8.9-dev.11779411201.1a483e09Preview: