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

Artefact page improvements #196

Merged
merged 15 commits into from
Jul 31, 2024
Merged

Artefact page improvements #196

merged 15 commits into from
Jul 31, 2024

Conversation

omar-selo
Copy link
Collaborator

Description

A bunch of improvements to artefact page:

  • Remove top right legends and expand the test executions list to take up the space above
  • Remove artefact build expandables this means that now the list of test execution expandables will build and destroy widgets as you scroll to improve efficiency
  • Make expanding a test execution automatically expand failed tests (if there are any)
  • Make expanding a test execution automatically expand test events (if it didn't complete)
  • Prefetch test results so that expanding a test execution opens them immediately
  • Remove the animation of opening and closing an expandable to make the experience snappier
  • Replace horizontal scrolling of test events with tooltips

Resolved issues

Resolves https://warthogs.atlassian.net/browse/RTW-335

Documentation

None

Web service API changes

None

Tests

See video below for the overall experience:
Screencast from 2024-07-30 14-05-18.webm

Image below for test event tooltip:
Screenshot from 2024-07-30 14-08-09

@andrejvelichkovski
Copy link
Contributor

Since that now we don't have a legend, do you think we should add tooltips to the environment icons here:

Screenshot from 2024-07-31 10-10-46

Copy link
Contributor

@andrejvelichkovski andrejvelichkovski left a comment

Choose a reason for hiding this comment

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

Took me quite a while to go through all the changes, but I couldn't find anything that would break the main functionalities, as most of the changes are moving code around to optimize it. I really hope this will improve the review experience.

Comment on lines 25 to 40
child: Consumer(
builder: (context, ref, child) {
final artefactBuilds =
ref.watch(artefactBuildsProvider(artefact.id));

return artefactBuilds.when(
loading: () => const YaruCircularProgressIndicator(),
error: (e, stack) =>
Center(child: Text('Error:\n$e\nStackTrace:\n$stack')),
data: (artefactBuilds) => const PageFiltersView(
searchHint: 'Search by environment name',
width: double.infinity,
),
);
},
),
Copy link
Contributor

Choose a reason for hiding this comment

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

If I'm not wrong this code is rendering the side filter, do you think we can move it to a separate widget, perhaps a private one?

'Timestamp',
style: TextStyle(fontStyle: FontStyle.italic),
),
),
Copy link
Contributor

Choose a reason for hiding this comment

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

It seems that here we have some formatting changes, should we rebase to main to use the formatter you added in the previous PR?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

There's no formatting changes here (already merged with main). But I've removed the SingleChildScrollView

Copy link
Contributor

@andrejvelichkovski andrejvelichkovski left a comment

Choose a reason for hiding this comment

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

LGTM!

@omar-selo omar-selo merged commit 3363eb7 into main Jul 31, 2024
2 of 3 checks passed
@omar-selo omar-selo deleted the artefact-page-improvements branch July 31, 2024 13:55
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