leafygreen-ui icon indicating copy to clipboard operation
leafygreen-ui copied to clipboard

PD-1969 improve menu event handling

Open TheSonOfThomp opened this issue 2 years ago • 1 comments

✍️ Proposed changes

Adds a call to event.nativeEvent.stopPropagation() on trigger click, preventing the native event from propagating, while still allowing the React synthetic event to bubble. This ensures clicks on the trigger do not close the menu in hybrid/multi-framework apps

🎟 Jira ticket: PD-1969

🛠 Types of changes

  • [ ] Tooling (updates to workspace config or internal tooling)
  • [x] Bugfix (non-breaking change which fixes an issue)
  • [ ] New feature (non-breaking change which adds functionality)
  • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • [ ] Style change (purely visual updates; if this is the case, attach a screenshot below!)

✅ Checklist

  • [x] I have added tests that prove my fix is effective or that my feature works
  • [ ] I have added necessary documentation (if appropriate)
  • [x] I have run yarn changeset and documented my changes
  • [ ] I have added my new package to the global tsconfig
  • [ ] I have added my new package to the Table of Contents on the global README

🧪 How to test changes

💬 Further comments

Feedback Levels

Please try to mark your comments with one of these levels

  1. Praise (👏 🚀 🔥 🍾)
  2. Opinions, Ideas, Suggestions (💡 👀)
  3. Let’s discuss @ Code review (🤷 🤔 🧐 )
  4. Doesn’t meet agreed upon standards (😬 ⚠️ ‼️)
  5. Missing an edge case (🛑 🙅 ❌)
  6. Missing core functionality (⛔️ ☣️ 🚧 🌋 💀)

(Note: Use ⌘-⌃-␣ to open the Emoji keyboard!)

TheSonOfThomp avatar Aug 04 '22 19:08 TheSonOfThomp

Size Change: +69 B (0%)

Total Size: 383 kB

Filename Size Change
packages/menu/dist/index.js 8.01 kB +69 B (0%)
ℹ️ View Unchanged
Filename Size Change
packages/a11y/dist/index.js 1.77 kB 0 B
packages/badge/dist/index.js 1.38 kB 0 B
packages/banner/dist/index.js 2.25 kB 0 B
packages/box/dist/index.js 701 B 0 B
packages/button/dist/index.js 4.71 kB 0 B
packages/callout/dist/index.js 1.93 kB 0 B
packages/card/dist/index.js 1.56 kB 0 B
packages/checkbox/dist/index.js 4.07 kB 0 B
packages/code/dist/index.js 9.9 kB 0 B
packages/combobox/dist/index.js 11.7 kB 0 B
packages/confirmation-modal/dist/index.js 2.6 kB 0 B
packages/copyable/dist/index.js 2.87 kB 0 B
packages/emotion/dist/index.js 557 B 0 B
packages/expandable-card/dist/index.js 2.57 kB 0 B
packages/form-footer/dist/index.js 1.35 kB 0 B
packages/hooks/dist/index.js 2.77 kB 0 B
packages/icon-button/dist/index.js 2.49 kB 0 B
packages/icon/dist/ActivityFeed.js 1.81 kB 0 B
packages/icon/dist/AddFile.js 1.59 kB 0 B
packages/icon/dist/Apps.js 1.27 kB 0 B
packages/icon/dist/Array.js 1.39 kB 0 B
packages/icon/dist/ArrowDown.js 1.51 kB 0 B
packages/icon/dist/ArrowLeft.js 1.52 kB 0 B
packages/icon/dist/ArrowRight.js 1.51 kB 0 B
packages/icon/dist/ArrowUp.js 1.51 kB 0 B
packages/icon/dist/Beaker.js 1.93 kB 0 B
packages/icon/dist/Bell.js 1.48 kB 0 B
packages/icon/dist/Building.js 1.46 kB 0 B
packages/icon/dist/Bulb.js 1.5 kB 0 B
packages/icon/dist/Calendar.js 1.47 kB 0 B
packages/icon/dist/CaretDown.js 1.34 kB 0 B
packages/icon/dist/CaretLeft.js 1.34 kB 0 B
packages/icon/dist/CaretRight.js 1.34 kB 0 B
packages/icon/dist/CaretUp.js 1.34 kB 0 B
packages/icon/dist/Charts.js 1.41 kB 0 B
packages/icon/dist/Checkmark.js 1.47 kB 0 B
packages/icon/dist/CheckmarkWithCircle.js 1.53 kB 0 B
packages/icon/dist/ChevronDown.js 1.44 kB 0 B
packages/icon/dist/ChevronLeft.js 1.44 kB 0 B
packages/icon/dist/ChevronRight.js 1.46 kB 0 B
packages/icon/dist/ChevronUp.js 1.44 kB 0 B
packages/icon/dist/Clock.js 1.49 kB 0 B
packages/icon/dist/ClockWithArrow.js 1.76 kB 0 B
packages/icon/dist/Clone.js 1.37 kB 0 B
packages/icon/dist/Cloud.js 1.54 kB 0 B
packages/icon/dist/Code.js 1.74 kB 0 B
packages/icon/dist/Connect.js 1.79 kB 0 B
packages/icon/dist/Copy.js 1.73 kB 0 B
packages/icon/dist/CreditCard.js 1.3 kB 0 B
packages/icon/dist/CurlyBraces.js 1.89 kB 0 B
packages/icon/dist/Cursor.js 1.43 kB 0 B
packages/icon/dist/Database.js 1.84 kB 0 B
packages/icon/dist/Diagram.js 1.51 kB 0 B
packages/icon/dist/Diagram2.js 1.51 kB 0 B
packages/icon/dist/Diagram3.js 1.5 kB 0 B
packages/icon/dist/Disconnect.js 1.73 kB 0 B
packages/icon/dist/Download.js 1.52 kB 0 B
packages/icon/dist/Edit.js 1.46 kB 0 B
packages/icon/dist/Ellipsis.js 1.37 kB 0 B
packages/icon/dist/Export.js 1.64 kB 0 B
packages/icon/dist/Favorite.js 1.6 kB 0 B
packages/icon/dist/File.js 1.41 kB 0 B
packages/icon/dist/Filter.js 1.39 kB 0 B
packages/icon/dist/Folder.js 1.31 kB 0 B
packages/icon/dist/FullScreenEnter.js 1.56 kB 0 B
packages/icon/dist/FullScreenExit.js 1.57 kB 0 B
packages/icon/dist/GlobeAmericas.js 1.51 kB 0 B
packages/icon/dist/GovernmentBuilding.js 1.55 kB 0 B
packages/icon/dist/Home.js 1.62 kB 0 B
packages/icon/dist/ImportantWithCircle.js 1.41 kB 0 B
packages/icon/dist/index.js 17.7 kB 0 B
packages/icon/dist/InfoWithCircle.js 1.44 kB 0 B
packages/icon/dist/InviteUser.js 1.73 kB 0 B
packages/icon/dist/Key.js 1.48 kB 0 B
packages/icon/dist/Laptop.js 1.52 kB 0 B
packages/icon/dist/Link.js 1.9 kB 0 B
packages/icon/dist/Lock.js 1.5 kB 0 B
packages/icon/dist/MagnifyingGlass.js 1.48 kB 0 B
packages/icon/dist/Megaphone.js 1.45 kB 0 B
packages/icon/dist/Menu.js 1.36 kB 0 B
packages/icon/dist/Minus.js 1.32 kB 0 B
packages/icon/dist/NotAllowed.js 1.43 kB 0 B
packages/icon/dist/Note.js 1.45 kB 0 B
packages/icon/dist/OpenNewTab.js 1.72 kB 0 B
packages/icon/dist/Pause.js 1.35 kB 0 B
packages/icon/dist/Person.js 1.51 kB 0 B
packages/icon/dist/PersonGroup.js 1.72 kB 0 B
packages/icon/dist/PersonWithLock.js 1.73 kB 0 B
packages/icon/dist/Play.js 1.35 kB 0 B
packages/icon/dist/Plus.js 1.37 kB 0 B
packages/icon/dist/PlusWithCircle.js 1.4 kB 0 B
packages/icon/dist/QuestionMarkWithCircle.js 1.76 kB 0 B
packages/icon/dist/Redo.js 1.69 kB 0 B
packages/icon/dist/Refresh.js 1.75 kB 0 B
packages/icon/dist/Relationship.js 1.46 kB 0 B
packages/icon/dist/ReplicaSet.js 1.61 kB 0 B
packages/icon/dist/Save.js 1.95 kB 0 B
packages/icon/dist/Serverless.js 1.6 kB 0 B
packages/icon/dist/Settings.js 2.03 kB 0 B
packages/icon/dist/ShardedCluster.js 1.98 kB 0 B
packages/icon/dist/Shell.js 1.52 kB 0 B
packages/icon/dist/SortAscending.js 1.56 kB 0 B
packages/icon/dist/SortDescending.js 1.55 kB 0 B
packages/icon/dist/SplitHorizontal.js 1.33 kB 0 B
packages/icon/dist/SplitVertical.js 1.33 kB 0 B
packages/icon/dist/Stitch.js 1.37 kB 0 B
packages/icon/dist/Support.js 1.56 kB 0 B
packages/icon/dist/Sweep.js 1.58 kB 0 B
packages/icon/dist/Table.js 1.36 kB 0 B
packages/icon/dist/TimeSeries.js 1.71 kB 0 B
packages/icon/dist/Trash.js 1.39 kB 0 B
packages/icon/dist/Undo.js 1.69 kB 0 B
packages/icon/dist/University.js 1.88 kB 0 B
packages/icon/dist/Unlock.js 1.57 kB 0 B
packages/icon/dist/Unsorted.js 1.61 kB 0 B
packages/icon/dist/UpDownCarets.js 1.46 kB 0 B
packages/icon/dist/Upload.js 1.66 kB 0 B
packages/icon/dist/VerticalEllipsis.js 1.38 kB 0 B
packages/icon/dist/Visibility.js 1.69 kB 0 B
packages/icon/dist/VisibilityOff.js 2.08 kB 0 B
packages/icon/dist/Warning.js 1.46 kB 0 B
packages/icon/dist/X.js 1.49 kB 0 B
packages/icon/dist/XWithCircle.js 1.44 kB 0 B
packages/inline-definition/dist/index.js 1.26 kB 0 B
packages/interaction-ring/dist/index.js 2.23 kB 0 B
packages/leafygreen-provider/dist/index.js 1.66 kB 0 B
packages/lib/dist/index.js 1.54 kB 0 B
packages/logo/dist/index.js 43.6 kB 0 B
packages/marketing-modal/dist/index.js 3.65 kB 0 B
packages/modal/dist/index.js 4 kB 0 B
packages/palette/dist/index.js 771 B 0 B
packages/pipeline/dist/index.js 5.58 kB 0 B
packages/popover/dist/index.js 4.92 kB 0 B
packages/portal/dist/index.js 1.08 kB 0 B
packages/radio-box-group/dist/index.js 2.99 kB 0 B
packages/radio-group/dist/index.js 3.73 kB 0 B
packages/ripple/dist/index.js 1.05 kB 0 B
packages/segmented-control/dist/index.js 5.35 kB 0 B
packages/select/dist/index.js 9.07 kB 0 B
packages/side-nav/dist/index.js 7 kB 0 B
packages/stepper/dist/index.js 3.67 kB 0 B
packages/table/dist/index.js 7.24 kB 0 B
packages/tabs/dist/index.js 4.21 kB 0 B
packages/testing-lib/dist/index.js 1.6 kB 0 B
packages/text-area/dist/index.js 2.72 kB 0 B
packages/text-input/dist/index.js 4.44 kB 0 B
packages/toast/dist/index.js 3.13 kB 0 B
packages/toggle/dist/index.js 3.76 kB 0 B
packages/tokens/dist/index.js 847 B 0 B
packages/tooltip/dist/index.js 4.24 kB 0 B
packages/typography/dist/index.js 4.63 kB 0 B

compressed-size-action

github-actions[bot] avatar Aug 04 '22 19:08 github-actions[bot]