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

Add WorkflowBox to Activity bar Side Panel #15944

Merged

Conversation

ahmedhamidawan
Copy link
Member

@ahmedhamidawan ahmedhamidawan commented Apr 17, 2023

Add a "WorkflowBox" to the new ActivityBar side panel:
It has links to workflow activities/routes, as well as an advanced search workflow menu for the WorkflowList

Screen.Recording.2023-06-06.at.1.20.12.PM.mov



Alternative Ideas for the future:

A WorkflowBox identical (in terms of UI) to the ToolBox with all workflows (with just their names) in the client side search:

Screen.Recording.2023-05-05.at.3.08.15.PM.mov

Only showing the bookmarked workflows in the panel (with more details for each workflow in view)

Screen.Recording.2023-05-25.at.7.11.01.PM.mov

How to test the changes?

(Select all options that apply)

  • I've included appropriate automated tests.
  • This is a refactoring of components with existing test coverage.
  • Instructions for manual testing are as follows:
    1. [add testing steps and prerequisites here if you didn't write automated tests covering all your changes]

License

  • I agree to license these and all my past contributions to the core galaxy codebase under the MIT license.

@ahmedhamidawan ahmedhamidawan force-pushed the add_workflowpanel_activity_bar branch 2 times, most recently from 4d95ba8 to 35e1c38 Compare April 25, 2023 17:08
@ahmedhamidawan ahmedhamidawan force-pushed the add_workflowpanel_activity_bar branch from 35e1c38 to 9f6ef60 Compare May 5, 2023 14:51
@ahmedhamidawan
Copy link
Member Author

ahmedhamidawan commented May 5, 2023

Future idea? 🤔

In the future (if we have the ActivityBar permanent), we could remove the search bar from the WorkflowList since we will already have a simple Workflow panel search as well as an advanced search that shows results in the center, like so:

Screen.Recording.2023-05-05.at.2.27.02.PM.mov

We could hence, also get rid of the Workflow button from the Masthead since we'll already provide ways to navigate to that view through the panel. We would also remove the search from the WorkflowList, since the advanced search in the panel would be fulfilling that purpose anyways.

@ahmedhamidawan ahmedhamidawan marked this pull request as ready for review May 6, 2023 19:21
@github-actions github-actions bot added this to the 23.1 milestone May 6, 2023
@mvdbeek
Copy link
Member

mvdbeek commented May 8, 2023

I tested this and I think this suffers from a similar problem as @guerler's favorite workflow tooltip implementation: There's not enough context to differentiate workflows from each other. I think tags, description and update time are probably always required, and maybe the sharing status if this is to include public workflows. Could we simply not show the toolbox if we're not on the tool activity for now ?

As an alternative, could the workflow activity function as an extended search interface that is synced up to the current workflow list component ?

@ahmedhamidawan
Copy link
Member Author

ahmedhamidawan commented May 8, 2023

@mvdbeek Thanks for taking a look!

I tested this and I think this suffers from a similar problem as @guerler's favorite workflow tooltip implementation: There's not enough context to differentiate workflows from each other. I think tags, description and update time are probably always required, and maybe the sharing status if this is to include public workflows.

More fields could easily be displayed in the panel if needed, so stuff like tags or update_time could be added (don't know about description since we have only so much space in the left panel). This would also mean that the UI for the Workflow Panel would look very different from the Tool Panel; so we could then add panel_section names appearing like tags (and also add other tool fields) to the tools in the Tool Panel as well, to match the UIs.

Could we simply not show the toolbox if we're not on the tool activity for now ?

By tool "activity", if you mean the active tab (like "analysis", "workflow" etc.), that could be done, but only concern might be that this would be a drastic change from the familiar UI where Tools are always toggled into view by default in the left panel when you load up Galaxy. But yes, we could definitely make it so that depending on what activity/tab you are on, the relevant panel is toggled into view by default. Keep in mind that even with the current implementation, the toggled state is saved if you refresh etc.

As an alternative, could the workflow activity function as an extended search interface that is synced up to the current workflow list component ?

Did you manage to take a look at this from the comment i left above: #15944 (comment)
It's basically the same idea as the current ToolsList produced by the Advanced Tool Search. This would be a step taken when we decide to remove the Workflow button from the Masthead.

@mvdbeek
Copy link
Member

mvdbeek commented May 8, 2023

This would also mean that the UI for the Workflow Panel would look very different from the Tool Panel; so we could then add panel_section names appearing like tags (and also add other tool fields) to the tools in the Tool Panel as well, to match the UIs.

I don't think it's a problem that we deviate from how the tool panel looks like, I'd be more worried that you need to scroll more in the vertical direction if you stuff this all in the left side, and there are a whole bunch of actions that probably make more sense if the center panel has a list of workflows (edit, delete, download, share ...).

I'm hoping that eventually we could also sort workflows hierarchically using tags, which I think would also speak for a full-width workflow list.

But yes, we could definitely make it so that depending on what activity/tab you are on, the relevant panel is toggled into view by default. Keep in mind that even with the current implementation, the toggled state is saved if you refresh etc.

👍 I think that's fine and what you would expect.

Did you manage to take a look at this from the comment i left above: #15944 (comment)

yes, the search looks pretty cool. Maybe you could have a first row with "Create new", "Import" and "Search" and then make that the default if you've clicked on the "Workflow activity" ?

@ahmedhamidawan
Copy link
Member Author

Screen.Recording.2023-05-25.at.7.11.01.PM.mov

Maybe you could have a first row with "Create new", "Import" and "Search" and then make that the default if you've clicked on the "Workflow activity" ?

@mvdbeek Is this better in that case.

So in this view, I'm still showing the favorited/bookmarked workflows, should we even show those? Or just for the bookmarked workflows, I think it also looks better to retain the same appearance as the Toolbox tools (like in the screencast at the top) with just the workflow names (again, only showing the config.stored_workflow_menu_entries).

@mvdbeek
Copy link
Member

mvdbeek commented May 30, 2023

The 3 buttons are nice (and maybe you could keep the search expanded), but I personally don't like the workflows being displayed in the activity bar. I just can't imagine how I would use this and find it more useful than the center panel view.

Maybe one way to fill the screen estate is to have collapsible sections that correspond to workflow tags, so if you click on a tag it applies a filter in the center panel, similar to how file browsing works in the OSX finder (imagine that tags could act like folders):

Screenshot 2023-05-30 at 17 21 52

Copy link
Contributor

@guerler guerler left a comment

Choose a reason for hiding this comment

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

Thanks for the adjustments. Works well!

@guerler guerler merged commit 51a17f2 into galaxyproject:dev Jun 6, 2023
17 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

Successfully merging this pull request may close these issues.

None yet

3 participants