Skip to content

User Interface Upgrade#84

Merged
Kallb123 merged 29 commits intoApollo-Protocol:mainfrom
Maxwell2Gyamfi:jon-minor-feedback
Feb 13, 2026
Merged

User Interface Upgrade#84
Kallb123 merged 29 commits intoApollo-Protocol:mainfrom
Maxwell2Gyamfi:jon-minor-feedback

Conversation

@Maxwell2Gyamfi
Copy link
Contributor

This pull request introduces a new interactive activity legend and improves the user interface and usability of the activity diagram view. The main changes include adding a searchable, scrollable legend for activities, supporting activity highlighting, and reorganizing the layout for better accessibility and clarity. It also refactors the button arrangement and adds new controls for hiding non-participating individuals.

User Interface Enhancements:

  • Added a new DiagramLegend component that displays a searchable, scrollable list of activities with color indicators, subtask counts, and quick access to the activity editor. The legend also supports activity highlighting. (editor-app/components/DiagramLegend.tsx, editor-app/components/ActivityDiagramWrap.tsx) [1] [2]
  • Refactored the main layout in ActivityDiagramWrap to use a three-column structure: legend, diagram, and controls. Buttons are now grouped into left, center, and right sections for improved usability and responsiveness. (editor-app/components/ActivityDiagramWrap.tsx) [1] [2] [3]

Activity Diagram Interactivity:

  • Added support for highlighting activities in the SVG diagram when selected in the legend, dimming other elements for focus. This is achieved via new props and a useEffect hook that manipulates SVG elements using D3. (editor-app/components/ActivityDiagram.tsx, editor-app/components/ActivityDiagramWrap.tsx) [1] [2] [3] [4]

Feature Additions:

  • Introduced a toggle (compactMode) to hide individuals who do not participate in any activities, with a new HideIndividuals control for this feature. (editor-app/components/ActivityDiagramWrap.tsx) [1] [2]

UI Refactoring and Cleanup:

  • Refactored the DiagramPersistence component to simplify the layout, grouping all persistence controls (load/save TTL, example dropdown, reference type toggle) into a single flex container and improving the reference types toggle UI. (editor-app/components/DiagramPersistence.tsx) [1] [2]

These changes collectively improve the discoverability, accessibility, and interactivity of the activity diagram view, making it easier for users to explore and manage activities and their relationships.

This branch was based on the max-dev-subtasks. I have addressed the build issue so it should hopefully build

…ection and display; update HideIndividuals tooltip and button text for clarity; refactor DrawActivities and DrawParticipations for improved rendering; add ArrowUp SVG component.
…nctionality; update DrawParticipations click handlers for better event management; enhance config structure with additional properties for axis and activity labels.
…order radius, and stroke properties; implement color darkening function for improved visual clarity.
…ivity, SetIndividual, and SetParticipation components.
…Participation components to improve UI responsiveness; enhance DrawActivities and DrawParticipations for better rendering and interaction.
… enhance DiagramLegend with search functionality and responsive design; update DiagramPersistence for cleaner UI; revamp Footer and NavBar styles for better aesthetics; add global styles for navbar and legend components.
- Implemented highlighting for selected activities in ActivityDiagram using D3.js.
- Added color selection functionality in SetActivity for custom activity colors.
- Updated DiagramLegend to support highlighting and display selected activity.
- Enhanced Activity and ActivityImpl interfaces to include optional color property.
- Introduced CSS styles for highlighted legend items.
…r selection; improve modal footer layout and styling; add individual order handling in ActivityLib; update global styles for better responsiveness and organization.
…to-reset for highlighted activity; enhance ExportSvg with activity labels; update ActivityLib to preserve individual order; streamline global styles for better responsiveness.
…dependencies for useEffect; enhance type safety for activities in ExportSvg.
…functionality, interaction mode toggle, and improve layout organization; introduce Target SVG for activity highlighting in DiagramLegend; update global styles for better responsiveness and mobile support.
…ility and add crosshair lines for better interaction feedback.
…mPersistence, SetActivity, SetIndividual, and SetParticipation for improved accessibility and keyboard navigation; add hover styles in global CSS for better user experience.
…r improved layout and responsiveness on smaller screens.
… better interaction feedback and accessibility; improve footer layout with new link styling for a more organized appearance.
Modify SVG export to append text labels to the correct group.
Prevent closing the modal while editing an activity type by modifying the onHide handler.
Prevent closing the Modal while editing a type name by modifying the handleModalHide function.
@Kallb123 Kallb123 changed the title Jon minor feedback User Interface Upgrade Feb 13, 2026
Copy link
Contributor

@Kallb123 Kallb123 left a comment

Choose a reason for hiding this comment

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

Significant improvements here

@Kallb123 Kallb123 merged commit f58d00a into Apollo-Protocol:main Feb 13, 2026
1 check passed
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.

2 participants