Skip to content

Icon for activity#109

Merged
kenrick95 merged 4 commits intomainfrom
feat/emoji
Feb 14, 2026
Merged

Icon for activity#109
kenrick95 merged 4 commits intomainfrom
feat/emoji

Conversation

@kenrick95
Copy link
Owner

@kenrick95 kenrick95 commented Feb 14, 2026

Fixes #107

Introduce idea of having customizable icon for activity, with emoji selector in activity form. Can be used to replace icon in map too

image image image

- add/edit/delete icon in activity
- show activity's icon in activity
- refactor other places to use useCallback too
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds customizable emoji icons for activities, addressing feature request #107. The implementation allows users to replace default map pins with custom emoji icons (e.g., 🍴 for restaurants) to improve visual identification on maps and throughout the UI.

Changes:

  • Introduces new EmojiTextField component with comprehensive keyboard navigation and accessibility features
  • Updates database schema to add optional icon field to activities
  • Refactors form event handlers across multiple components to use extracted useCallback hooks with proper TypeScript types
  • Integrates icon display throughout activity UI (forms, dialogs, lists, map markers)

Reviewed changes

Copilot reviewed 24 out of 25 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/common/EmojiTextField/EmojiTextField.tsx New comprehensive emoji picker component with keyboard navigation and ARIA support
src/common/EmojiTextField/EmojiTextField.module.css Styles for emoji picker including grid layout, accessibility classes, and responsive design
instant.schema.ts Adds optional icon string field to activity schema
src/Activity/db.ts Updates DbActivity type to include optional icon field with comment
src/Activity/ActivityForm/ActivityForm.tsx Integrates EmojiTextField component and handles icon in form submission
src/Activity/Activity.tsx Displays icon with activity title and includes icon in memo comparison
src/Activity/ActivityIdea/ActivityIdea.tsx Shows icon with activity title for idea items
src/Activity/ActivityDialog/*.tsx Updates dialog components to display icon with activity title
src/Map/marker.ts Uses custom icon for map markers when available
src/Map/constants.ts Adds customIcon field to MarkerLocation types
src/Map/TripMap.tsx Passes icon to map markers, null for destinations/accommodations
src/Map/popups/ActivityPopup.tsx Displays icon in activity popup title
src/Trip/store/types.ts Updates query return type to include icon field
package.json Adds @emoji-mart/data dependency, updates @types/react version
src/{Trip,Macroplan,Comment,Account,Accommodation}/Form*.tsx Refactors form handlers to extracted useCallback hooks

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@kenrick95 kenrick95 marked this pull request as ready for review February 14, 2026 12:59
@kenrick95 kenrick95 requested a review from Copilot February 14, 2026 13:00
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 24 out of 25 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@kenrick95 kenrick95 merged commit 38dd1ba into main Feb 14, 2026
7 checks passed
@kenrick95 kenrick95 deleted the feat/emoji branch February 14, 2026 13:05
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.

Feature request: changing map icons for activities

2 participants