Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Be able to provide helpful hints in a contextual, non-intrusive manner using tooltips #3611

Closed
5 tasks done
nikku opened this issue May 15, 2023 · 6 comments · Fixed by #3847
Closed
5 tasks done

Be able to provide helpful hints in a contextual, non-intrusive manner using tooltips #3611

nikku opened this issue May 15, 2023 · 6 comments · Fixed by #3847
Assignees
Labels
Milestone

Comments

@nikku
Copy link
Member

nikku commented May 15, 2023

Problem you would like to solve

As a user of the modeler I have issues navigating the properties panel and understanding individual items due to the lack or overload of information:

  • Too little information: In some places, the properties panel showcases a very small amount of information. This leads to me not being able to understand how a certain feature works (Simplify multi instance configuration #3588).
  • Too much information: In some places we show large amounts of information, specifically in connectors or timer definitions (cf. additional context). Much of that is duplicate and tends to become irrelevant once you know. Such wall of text can distract users from quickly skipping through the properties panel to discover or re-identify relevant information.

Proposed solution

Structure helpful hints in a manner that it is non-intrusive using tooltips:

  • Tooltip shows structured information (code snippets, external links)
  • Tooltip presence is indicated on the UI (on element/section hover/focus)
  • Tooltip displays on demand (when user hovers/focuses a certain section)
  • Tooltip can be focused to copy from, but also follow links presented in there
  • Tooltips can be populated in different ways:
    • via bpmn-js-properties-panel and such
    • via element templates

Alternatives considered

None.

Additional context

Product hub epic: https://github.com/camunda/product-hub/issues/893

Current UI in connectors, meant to be user friendly; assistive documentation highlighted:


Breakdown:
1st iteration:

2nd:

Follow ups and improvements:

@nikku nikku added the enhancement New feature or request label May 15, 2023
@nikku
Copy link
Member Author

nikku commented May 15, 2023

A quick sketch on tooltip discovery:

capture rpWSb7_optimized

Another one on overall tooltip UI (bpmn-io/properties-panel#202):

image

@nikku
Copy link
Member Author

nikku commented May 15, 2023

Context provided by @YanaSegal: We already have an existing tooltip component in web modeler. To be clarified if we want to use that one, move to a new one (Carbon).

Cf. existing component, used in Web Modeler:

image

@Nitish-u
Copy link

Hello @nikku, Is this issue still open? I wanted to know about this issue can you please tell me, where it is occurring and what adjustments you want. Actually i'm new to opensource contribution, till now i've contributed to my personal repo only.

@nikku
Copy link
Member Author

nikku commented May 17, 2023

If you want to contribute @Nitish-u, please checkout issues flagged accordingly as well as our contributing guide.

@nikku nikku added the backlog Queued in backlog label May 17, 2023
@smbea smbea self-assigned this Jun 29, 2023
@smbea smbea added the ready Ready to be worked on label Jun 29, 2023 — with bpmn-io-tasks
@smbea smbea removed the backlog Queued in backlog label Jun 29, 2023
@smbea
Copy link
Contributor

smbea commented Jul 14, 2023

While bpmn-io/properties-panel#202 is being reviewed, I will try to identify places where we might want to replace the description with a tooltip or add one.

This will also help me figure out if there is a need to allow tooltip population by context/tooltip provider like we do for description for now.

@smbea
Copy link
Contributor

smbea commented Jul 19, 2023

[tooltips via context and tooltips for group headers]

In order to provide tooltip content as context, we need to provide ids for the trigger element. If we combine this with supporting tooltips on group headers, then we need to provide some id. The group id sometimes coincides with a field id (ex: documentation group and element documentation field; implementations group and field).

A way to avoid potential breaking changes by altering some of the ids so they don't match, is to use the data-group-id which adds the group- prefix. In a tooltip provider, this would look like:

- businessRuleImplementation: (element) => return <TOOLTIP_CONTENT>;

// for implementation field
+ businessRuleImplementation: (element) => return <TOOLTIP_CONTENT>; 
// for implementation group
+ `group-businessRuleImplementation`: (element) => return <TOOLTIP_CONTENT>; 

smbea added a commit to bpmn-io/properties-panel that referenced this issue Jul 21, 2023
smbea added a commit to bpmn-io/properties-panel that referenced this issue Jul 21, 2023
@nikku nikku added the backlog Queued in backlog label Aug 28, 2023 — with bpmn-io-tasks
@nikku nikku removed the ready Ready to be worked on label Aug 28, 2023
@nikku nikku added the ready Ready to be worked on label Aug 28, 2023 — with bpmn-io-tasks
@nikku nikku removed the backlog Queued in backlog label Aug 28, 2023
@smbea smbea added fixed upstream Requires integration of upstream change and removed ready Ready to be worked on labels Sep 11, 2023
smbea added a commit that referenced this issue Sep 12, 2023
@bpmn-io-tasks bpmn-io-tasks bot added needs review Review pending and removed fixed upstream Requires integration of upstream change labels Sep 12, 2023
smbea added a commit that referenced this issue Sep 12, 2023
@bpmn-io-tasks bpmn-io-tasks bot removed the needs review Review pending label Sep 12, 2023
@nikku nikku modified the milestones: M69, M68 Sep 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants