Skip to content

SingleClickable#175

Merged
JaesungLeee merged 5 commits into
developfrom
feature/#174-single-clickable
Feb 8, 2026
Merged

SingleClickable#175
JaesungLeee merged 5 commits into
developfrom
feature/#174-single-clickable

Conversation

@JaesungLeee
Copy link
Copy Markdown
Owner

@JaesungLeee JaesungLeee commented Feb 8, 2026

Issue

์ž‘์—… ๋‚ด์—ญ (Required)

  • singleClickable, noRippleClickable, noRippleSingleClickable
  • migrate composed lambda to Modifier Node API

๊ด€๋ จ ๋งํฌ

Summary by CodeRabbit

๋ฆด๋ฆฌ์Šค ๋…ธํŠธ

  • ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ

    • ๋ฒ„ํŠผ, ์นฉ, ์ฒดํฌ๋ฐ•์Šค, ๋ผ๋””์˜ค ๋ฒ„ํŠผ ์ปดํฌ๋„ŒํŠธ์˜ ํด๋ฆญ ์ฒ˜๋ฆฌ ๋ฐ ์ธํ„ฐ๋ž™์…˜ ๊ฐœ์„ 
    • ์ฒดํฌ๋ฐ•์Šค ๋ฐ ๋ผ๋””์˜ค ๋ฒ„ํŠผ์— onClick ์ฝœ๋ฐฑ ์ถ”๊ฐ€๋กœ ์ƒํ˜ธ์ž‘์šฉ์„ฑ ํ–ฅ์ƒ
    • ์ ‘๊ทผ์„ฑ ๋ฐ ์‹œ๋งจํ‹ฑ์Šค ๊ฐœ์„ ์œผ๋กœ ๋” ๋‚˜์€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ์ œ๊ณต
  • ํ…Œ์ŠคํŠธ

    • SolidButton ์ปดํฌ๋„ŒํŠธ UI ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ถ”๊ฐ€

@JaesungLeee JaesungLeee self-assigned this Feb 8, 2026
@JaesungLeee JaesungLeee merged commit 6478a2b into develop Feb 8, 2026
1 check failed
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Feb 8, 2026

Caution

Review failed

The pull request is closed.

๊ฐœ์š” (Walkthrough)

์ด ๋ณ€๊ฒฝ์‚ฌํ•ญ๋“ค์€ ๋””์ž์ธ ์‹œ์Šคํ…œ์— SingleClickable ๋ชจ๋””ํŒŒ์ด์–ด ๋…ธ๋“œ ์‹œ์Šคํ…œ์„ ๋„์ž…ํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด MultipleEventsCutter ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ํ†ตํ•ด 500๋ฐ€๋ฆฌ์ดˆ ๊ฐ„๊ฒฉ์˜ ์ค‘๋ณต ํด๋ฆญ์„ ํ•„ํ„ฐ๋งํ•˜๊ณ , ์„ธ ๊ฐœ์˜ ํด๋ฆญ ๊ฐ€๋Šฅ ํ™•์žฅ ํ•จ์ˆ˜(noRippleClickable, noRippleSingleClickable, singleClickable)๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด Button, Chip, CheckBox, RadioButton ์ปดํฌ๋„ŒํŠธ๋“ค์ด ์ด ์ƒˆ๋กœ์šด singleClickable ๋ชจ๋””ํŒŒ์ด์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๋ฆฌํŒฉํ† ๋ง๋˜๋ฉฐ, ๋” ๋‚˜์€ ์ ‘๊ทผ์„ฑ๊ณผ ์ƒํ˜ธ์ž‘์šฉ ์ฒ˜๋ฆฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์‹œํ€€์Šค ๋‹ค์ด์–ด๊ทธ๋žจ (Sequence Diagram)

sequenceDiagram
    participant User as ์‚ฌ์šฉ์ž
    participant Component as UI Component
    participant SingleClickable as SingleClickableNode
    participant Cutter as MultipleEventsCutter
    participant Interaction as InteractionSource
    participant Semantics as ์ ‘๊ทผ์„ฑ ์‹œ์Šคํ…œ

    User->>Component: ํด๋ฆญ
    activate Component
    Component->>SingleClickable: ํฌ์ธํ„ฐ ์ž…๋ ฅ ๊ฐ์ง€
    activate SingleClickable
    
    SingleClickable->>SingleClickable: onPress: ์ƒํ˜ธ์ž‘์šฉ ๋ฐฉ์ถœ
    SingleClickable->>Interaction: Press ์ƒํ˜ธ์ž‘์šฉ ๋ฐœ์ƒ
    activate Interaction
    
    User->>Component: ์†๊ฐ€๋ฝ ๋–ผ๊ธฐ
    Component->>SingleClickable: onTap ์‹ ํ˜ธ
    
    SingleClickable->>Cutter: processEvent(onClick)
    activate Cutter
    
    alt ๋งˆ์ง€๋ง‰ ์ด๋ฒคํŠธ ์ดํ›„ >= 500ms
        Cutter->>Cutter: onClick ์‹คํ–‰
        Cutter->>SingleClickable: ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ ์™„๋ฃŒ
    else ์ค‘๋ณต ํด๋ฆญ
        Cutter->>Cutter: ์ด๋ฒคํŠธ ๋ฌด์‹œ
    end
    deactivate Cutter
    
    SingleClickable->>Interaction: Release ์ƒํ˜ธ์ž‘์šฉ ๋ฐฉ์ถœ
    deactivate Interaction
    
    SingleClickable->>Semantics: onClick ์‹œ๋งจํ‹ฑ์Šค ์ ์šฉ
    activate Semantics
    Semantics->>User: ์ ‘๊ทผ์„ฑ ์ •๋ณด ์ œ๊ณต
    deactivate Semantics
    
    deactivate SingleClickable
    deactivate Component
Loading

์˜ˆ์ƒ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๋‚œ์ด๋„

๐ŸŽฏ 4 (๋ณต์žกํ•จ) | โฑ๏ธ ~60๋ถ„

์‹œ (Poem)

๐Ÿฐ ํด๋ฆญ์ด ์ถค์„ ์ถ”๋Š” ์ƒˆ๋กœ์šด ๋ฐฉ์‹,
์ค‘๋ณต์€ ๊ฑฐ๋ฅด๊ณ  ์˜๋ฏธ๋Š” ์‚ด๋ฆฌ๊ณ ,
์ ‘๊ทผ์„ฑ๊ณผ ์†์ง“์ด ๋งŒ๋‚˜ ํ•˜๋‚˜๋กœ,
SingleClickable์˜ ๋งˆ๋ฒ•์ด ํŽผ์ณ์ง€๋„ค!
โœจ ๋ˆ„๋ฅด๋ฉด ๋ฐ˜์‘ํ•˜๊ณ , ๋‘ ๋ฒˆ ๋ˆ„๋ฅด๋ฉด ํ•œ ๋ฒˆ๋งŒ! ๐ŸŽฏ

โœจ Finishing touches
  • ๐Ÿ“ Generate docstrings
๐Ÿงช Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/#174-single-clickable

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

โค๏ธ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@JaesungLeee JaesungLeee deleted the feature/#174-single-clickable branch February 9, 2026 06:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

SingleClickable

1 participant