Skip to content

Button: not-allowed cursor on disabled state (parity with Icon Button) #4145

Description

@twjeffery

Info

Follow-up from #3858 / PR #4128. Icon Button's disabled state now shows cursor: not-allowed so disabled controls read as unavailable instead of inert.

Button still uses the old pattern (pointer-events: none plus the default arrow cursor), so the two components behave differently when you hover a disabled control.

One note from the Icon Button work: pointer-events: none has to come off for any cursor to render. That means hover styling needs explicit suppression (:not(:disabled) guards on the hover rules), and title tooltips start appearing on disabled hover. That side effect should be a deliberate decision here too.

Acceptance Criteria:

  1. Disabled Button (all types and variants) shows cursor: not-allowed on hover
  2. No hover styling applies while disabled; click/submit behaviour unchanged
  3. Browser test covering the computed cursor and no event dispatch (pattern exists in icon-button.browser.spec.tsx)

Metadata

Metadata

Assignees

No one assigned

    Labels

    2.0ButtonP3Priority 3 (nice to have): Valuable, but safe to release after launch.

    Type

    No type

    Projects

    Status
    🔖 Ready

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions