fix: Expose XList scrollHeight/scrollWidth getters#2156
Conversation
|
Co-authored-by: PupilTong <12288479+PupilTong@users.noreply.github.com>
Co-authored-by: PupilTong <12288479+PupilTong@users.noreply.github.com>
|
Important Review skippedBot user detected. To trigger a single review, invoke the You can disable this status message by setting the
Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
CodSpeed Performance ReportMerging this PR will improve performance by 6.05%Comparing Summary
Performance Changes
Footnotes
|
|
@copilot add a patch changeset |
Co-authored-by: PupilTong <12288479+PupilTong@users.noreply.github.com>
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated. # Releases ## @lynx-js/motion@0.0.3 ### Patch Changes - Fix an issue that motion/mini will accidentally imports full version, causing compiling error ([#2204](#2204)) ## @lynx-js/react@0.116.3 ### Patch Changes - fix: remove `lynx.createSelectorQuery` deprecated warning in production ([#2195](#2195)) - Add a DEV-only guard that detects MainThread flush loops caused by re-entrant MTS handlers. ([#2159](#2159)) This typically happens when a MainThread handler (e.g. event callback or `MainThreadRef`) performs UI mutations (like `Element.setStyleProperty`, `setStyleProperties`, `setAttribute`, or `invoke`) that synchronously trigger a flush which re-enters the handler again. - Avoid DEV_ONLY_SetSnapshotEntryName on standalone lazy bundle. ([#2184](#2184)) - Add alog and trace for BTS event handlers. ([#2102](#2102)) - fix: Main thread functions cannot access properties on `this` before hydration completes. ([#2194](#2194)) This fixes the `cannot convert to object` error. - Remove element api calls alog by default, and only enable it when `__ALOG_ELEMENT_API__` is defined to `true` or environment variable `REACT_ALOG_ELEMENT_API` is set to `true`. ([#2192](#2192)) - fix: captured variables in main thread functions within class components do not update correctly ([#2197](#2197)) ## @lynx-js/rspeedy@0.13.4 ### Patch Changes - Bump ts-blank-space v0.7.0 ([#2238](#2238)) - Bump Rsbuild v1.7.3 with Rspack v1.7.5. ([#2189](#2189)) - Updated dependencies \[]: - @lynx-js/web-rsbuild-server-middleware@0.19.8 ## @lynx-js/qrcode-rsbuild-plugin@0.4.5 ### Patch Changes - Only register console shortcuts when running in TTY environments ([#2202](#2202)) ## @lynx-js/react-rsbuild-plugin@0.12.8 ### Patch Changes - Updated dependencies \[[`4240138`](4240138)]: - @lynx-js/react-webpack-plugin@0.7.4 - @lynx-js/react-alias-rsbuild-plugin@0.12.8 - @lynx-js/use-sync-external-store@1.5.0 - @lynx-js/react-refresh-webpack-plugin@0.3.4 - @lynx-js/template-webpack-plugin@0.10.3 ## @lynx-js/testing-environment@0.1.11 ### Patch Changes - Remove element api calls alog by default, and only enable it when `__ALOG_ELEMENT_API__` is defined to `true` or environment variable `REACT_ALOG_ELEMENT_API` is set to `true`. ([#2192](#2192)) ## @lynx-js/web-constants@0.19.8 ### Patch Changes - Updated dependencies \[]: - @lynx-js/web-worker-rpc@0.19.8 ## @lynx-js/web-core@0.19.8 ### Patch Changes - fix: avoid error when LynxView is removed immediately after connected ([#2182](#2182)) - Updated dependencies \[]: - @lynx-js/web-constants@0.19.8 - @lynx-js/web-mainthread-apis@0.19.8 - @lynx-js/web-worker-rpc@0.19.8 - @lynx-js/web-worker-runtime@0.19.8 ## @lynx-js/web-core-wasm@0.0.3 ### Patch Changes - Updated dependencies \[[`e0972ef`](e0972ef), [`3bc017e`](3bc017e), [`e2d349e`](e2d349e), [`d924b6a`](d924b6a)]: - @lynx-js/web-elements@0.11.2 - @lynx-js/web-worker-rpc@0.19.8 ## @lynx-js/web-elements@0.11.2 ### Patch Changes - Add scrollHeight/scrollWidth getters to XList. ([#2156](#2156)) - Inherit padding styles for x-input elements. ([#2199](#2199)) - Remove the default lazy-loading attribute from x-image elements. ([#2186](#2186)) - Fix x-input number type forwarding to the inner input element. ([#2193](#2193)) ## @lynx-js/web-mainthread-apis@0.19.8 ### Patch Changes - Updated dependencies \[]: - @lynx-js/web-constants@0.19.8 ## @lynx-js/web-worker-runtime@0.19.8 ### Patch Changes - Updated dependencies \[]: - @lynx-js/web-constants@0.19.8 - @lynx-js/web-mainthread-apis@0.19.8 - @lynx-js/web-worker-rpc@0.19.8 ## @lynx-js/react-webpack-plugin@0.7.4 ### Patch Changes - Remove element api calls alog by default, and only enable it when `__ALOG_ELEMENT_API__` is defined to `true` or environment variable `REACT_ALOG_ELEMENT_API` is set to `true`. ([#2192](#2192)) ## create-rspeedy@0.13.4 ## @lynx-js/react-alias-rsbuild-plugin@0.12.8 ## upgrade-rspeedy@0.13.4 ## @lynx-js/web-core-server@0.19.8 ## @lynx-js/web-rsbuild-server-middleware@0.19.8 ## @lynx-js/web-worker-rpc@0.19.8 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Add missing scroll metrics to
x-listso consumers can read container dimensions directly, aligning with existing scrollTop/scrollLeft behavior.XList API
scrollHeightandscrollWidthgetters delegating to the internal scroll container.Test coverage
get-scroll-container-infoto assert both getters match reported container metrics.Release metadata
@lynx-js/web-elements.Example:
Original prompt
scrollHeightgetter for XList</issue_title><issue_description></issue_description>
<agent_instructions>1. See packages/web-platform/web-elements/src/elements/XList/XList.ts
2. like
scrollTop, we should add a new getter forscrollHeight3. add tests at packages/web-platform/web-elements/tests/web-elements.spec.ts</agent_instructions>
Comments on the Issue (you are @copilot in this section)
Original prompt
scrollHeightgetter for XList #2155💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.