Skip to content

[Bugfix:InstructorUI] Refactor Student Details Buttons#12348

Merged
bmcutler merged 6 commits intomainfrom
display-flex-row
Jan 27, 2026
Merged

[Bugfix:InstructorUI] Refactor Student Details Buttons#12348
bmcutler merged 6 commits intomainfrom
display-flex-row

Conversation

@JManion32
Copy link
Contributor

@JManion32 JManion32 commented Jan 23, 2026

Why is this Change Important & Necessary?

The layout of the buttons at the top of student details page is redundant, and unintuitive.

  1. The Regrade Active Versions for all Students button is clickable, and has a dropdown. The text bloated, and difficult to read. The dropdown button looks like a separate button.
  2. There is a Collapse All Sections and an Expand All Sections button
  3. The Toggle Columns button has a different font from the rest of the buttons.
  4. There is no container to explicitly set the spacing of the buttons.
image

What is the New Behavior?

  1. The Regrade Active Versions for all Students button has been changed to Regrade All Students, and no longer calls any function on click, instead opening the dropdown where the user can select between Active Versions Only and All Versions.
image
  1. The Collapse All Sections and an Expand All Sections button has been combined, with the JS logic determining what function to call based on the cookie.
  2. The Toggle Columns button now has the same font-family as the other buttons.
  3. The buttons are now inside of a flex container where they are easily spaced.
image

What steps should a reviewer take to reproduce or test the bug or new feature?

ON MAIN

Login as instructor and navigate to the sample course's gradeable page. Click the PREVIEW GRADING on any gradeable. Observe the problems listed above.

ON TOPIC BRANCH

Observe new changes. Specifically: The regrade button now triggers a dropdown rather than being clickable, the collapse/expand button works correctly, even after cookies are cleared, buttons now have consistent font, and are evenly spaced.

Automated Testing & Documentation

Adjusted the ta_grading_details_spec.js test to check that the correct text is displayed for the toggle expand/collapse button.

Other information

This is not a breaking change

Flex container with consistent gaps between buttons
@codecov
Copy link

codecov bot commented Jan 23, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 21.67%. Comparing base (f2fc7e1) to head (19a8e9d).
⚠️ Report is 4 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##               main   #12348   +/-   ##
=========================================
  Coverage     21.67%   21.67%           
  Complexity     9618     9618           
=========================================
  Files           268      268           
  Lines         36158    36158           
  Branches        486      486           
=========================================
  Hits           7837     7837           
  Misses        27839    27839           
  Partials        482      482           
Flag Coverage Δ
autograder 21.39% <ø> (ø)
js 2.04% <ø> (ø)
migrator 100.00% <ø> (ø)
php 20.69% <ø> (ø)
python_submitty_utils 80.08% <ø> (ø)
submitty_daemon_jobs 90.72% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Contributor

@Rkoester47 Rkoester47 left a comment

Choose a reason for hiding this comment

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

The changes on this branch successfully made the spacing between these buttons consistent. Its a small change, but one that improves the look of the page overall. I tested on both light and dark mode on Firefox, and the buttons looked good.

@github-project-automation github-project-automation bot moved this from Seeking Reviewer to Awaiting Maintainer Review in Submitty Development Jan 23, 2026
@Eli-J-Schwartz Eli-J-Schwartz self-assigned this Jan 23, 2026
@Eli-J-Schwartz
Copy link
Contributor

Visiting the page on this branch, I observed that the buttons were evenly spaced, in both light and dark mode. This change seems to have functioned properly, and quite improves the look of the page.

@John-Roy123
Copy link
Contributor

Checking out the page on this branch, the spacing remains consistent and buttons wrap even when zooming in up to 200% and out to 30%. The page looks better with this change.

Copy link
Contributor

@williamschen23 williamschen23 left a comment

Choose a reason for hiding this comment

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

I dont thin kthat the toggle dropdown should be its own button.
From what I can remember, at some point, we didn't even have a toggle dropdown button. The toggle dropdown button used to be a little arrow on the side of the regrade button, sorta like what I have attached below. Having a different button that is related to a former button does not really make since UX wise.

Image

@github-project-automation github-project-automation bot moved this from Awaiting Maintainer Review to Work in Progress in Submitty Development Jan 25, 2026
1. Rather than an expand and collapse button, it is not combined into a single button, with a function to determine which function to call. 2. The regrade button had a confusing UI, with a clickable button and a dropdown that had only 1 entry. Now, it is a dropdown with 2 each. I'll update the PR with the new details to give reviewers a better understanding.
JS lint, failing cypress, and updated id names
@JManion32 JManion32 changed the title [Bugfix:InstructorUI] Consistent Student Details Buttons [Bugfix:InstructorUI] Refactor Student Details Buttons Jan 25, 2026
@automateprojectmangement automateprojectmangement bot moved this from Work in Progress to In Review in Submitty Development Jan 25, 2026
@JManion32
Copy link
Contributor Author

I dont thin kthat the toggle dropdown should be its own button. From what I can remember, at some point, we didn't even have a toggle dropdown button. The toggle dropdown button used to be a little arrow on the side of the regrade button, sorta like what I have attached below. Having a different button that is related to a former button does not really make since UX wise.

Image

Thank you for pointing this out. I noticed some other bad UI with these buttons and decided to rework the PR to address them. Let me know what you think!

The refactored regrade button was causing this test to fail. I added testing ids to fix.
Copy link
Contributor

@Rkoester47 Rkoester47 left a comment

Choose a reason for hiding this comment

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

I tested the updates you've made to this PR, and I believe all changes are working as intended. The appearance of the buttons has been improved, and is much more cohesive and consistent. Also, the drop-down button is a nice solution, and works correctly for me. I tested the "collapse all sections" button and it is working as intended. As far as I can see, the changes made on this branch match the PR description and I think this was a good direction to go for this page.

@github-project-automation github-project-automation bot moved this from In Review to Awaiting Maintainer Review in Submitty Development Jan 27, 2026
@bmcutler bmcutler merged commit 70c0370 into main Jan 27, 2026
26 checks passed
@bmcutler bmcutler deleted the display-flex-row branch January 27, 2026 18:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

6 participants