Skip to content

[ShapeAppearanceModel] Automatically handle RTL layout #2723

Open
@MuntashirAkon

Description

@MuntashirAkon

Is your feature request related to a problem? Please describe.
Consider the following style using MaterialCardView:

    <style name="Widget.AppTheme.CardView.Outlined.DiagonallyRounded" parent="Widget.Material3.CardView.Outlined">
        <item name="shapeAppearance">@style/ShapeAppearance.AppTheme.DiagonallyRounded</item>
    </style>

    <style name="ShapeAppearance.AppTheme.DiagonallyRounded" parent="">
        <item name="cornerSize">24dp</item>
        <item name="cornerFamily">rounded</item>
        <item name="cornerSizeBottomRight">0dp</item>
        <item name="cornerSizeTopLeft">0dp</item>
    </style>

Clearly, this will display a card rounded in the top-right and bottom-left corners (since others are set to 0). When the layout is set to RTL, it should swap the positions (it does not here since it correctly handles left or right instead of start or end).

Describe the solution you'd like
It should be logical to rename the existing options or provide new options such as cornerSizeBottomEnd, cornerSizeTopStart which would handle RTL layouts.

Describe alternatives you've considered
Handle it myself programmatically.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions