Skip to content

[UI/UX:System] Add fullscreen button vue component#12936

Merged
bmcutler merged 19 commits into
mainfrom
fullscreen
Jun 24, 2026
Merged

[UI/UX:System] Add fullscreen button vue component#12936
bmcutler merged 19 commits into
mainfrom
fullscreen

Conversation

@dagemcn

@dagemcn dagemcn commented Jun 19, 2026

Copy link
Copy Markdown
Member

Why is this Change Important & Necessary?

Closes #12269

Credit to @Akarshkushwaha for initial implementation and making the initial PR.

What is the New Behavior?

A new vue component FullScreenButton.vue has been added. The issue requested for fullscreen buttons to be added to a few specific pages, and possibly more in the future, so making an importable component to use moving forward will streamline the development process.

Furthermore, a toggleable fullscreen button has been added to the discussion forum, live chat, and simple grading (checkpoint) type gradeables. Shown below:
Discussion Forum:
image
Chatroom:
image
Simple Grading:
image

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

Visit each page and make sure the fullscreen button works as intended as well as the functionality of each page remaining the same while in fullscreen mode and non-fullscreen mode.

Automated Testing & Documentation

Not tested, Cypress test to come in this PR.

Other information

Not a breaking change.
No migrations.
No known security concerns.

@automateprojectmangement automateprojectmangement Bot moved this from Seeking Reviewer to Work in Progress in Submitty Development Jun 19, 2026
@codecov

codecov Bot commented Jun 19, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 21.41%. Comparing base (39bfc3d) to head (9fd82e4).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff            @@
##               main   #12936   +/-   ##
=========================================
  Coverage     21.41%   21.41%           
  Complexity     9942     9942           
=========================================
  Files           268      268           
  Lines         37118    37118           
  Branches        495      495           
=========================================
  Hits           7948     7948           
  Misses        28679    28679           
  Partials        491      491           
Flag Coverage Δ
autograder 21.16% <ø> (ø)
js 2.01% <ø> (ø)
migrator 100.00% <ø> (ø)
php 20.45% <ø> (ø)
python_submitty_utils 80.08% <ø> (ø)
submitty_daemon_jobs 91.13% <ø> (ø)

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.

Comment thread site/public/css/simple-grading.css
Comment thread site/ts/full-screen.ts Outdated

@jndlansh jndlansh left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I know it is a draft, but here are some suggestions:

  • Deduplicate the .full-screen-mode CSS on one location
  • Remove the unused scoped styles in the Vue component if not going to be used in future
  • We could add an Escape key support to exit fullscreen.

Overall the component is really clean and the component works as described, good work!

@dagemcn

dagemcn commented Jun 23, 2026

Copy link
Copy Markdown
Member Author

I know it is a draft, but here are some suggestions:

  • Deduplicate the .full-screen-mode CSS on one location
  • Remove the unused scoped styles in the Vue component if not going to be used in future
  • We could add an Escape key support to exit fullscreen.

Overall the component is really clean and the component works as described, good work!

Thank you! I have made the requested changes. Let me know if there are any other changes to be made.

@dagemcn
dagemcn requested a review from jndlansh June 23, 2026 15:15
@jndlansh

Copy link
Copy Markdown
Contributor
Screenshot 2026-06-23 212841 I get this Server error when I enter the Course Settings, I don't see how your changes made this error, but I cannot duplicate this error on main

@dagemcn

dagemcn commented Jun 23, 2026

Copy link
Copy Markdown
Member Author

Screenshot 2026-06-23 212841 I get this Server error when I enter the Course Settings, I don't see how your changes made this error, but I cannot duplicate this error on main

I'm not sure what caused this, I was not able to replicate it on the branch or on main.

@dagemcn
dagemcn marked this pull request as ready for review June 23, 2026 16:57
@automateprojectmangement automateprojectmangement Bot moved this from Work in Progress to Seeking Reviewer in Submitty Development Jun 23, 2026
@github-project-automation github-project-automation Bot moved this from Seeking Reviewer to Awaiting Maintainer Review in Submitty Development Jun 23, 2026
@bmcutler
bmcutler merged commit 2c7268a into main Jun 24, 2026
51 of 53 checks passed
@bmcutler
bmcutler deleted the fullscreen branch June 24, 2026 18:52
jndlansh pushed a commit to jndlansh/Submitty that referenced this pull request Jul 1, 2026
### Why is this Change Important & Necessary?
Closes Submitty#12269 

Credit to @Akarshkushwaha for initial implementation and making the
initial PR.

### What is the New Behavior?
<!-- Include before & after screenshots/videos if the user interface has
changed. -->
A new vue component `FullScreenButton.vue` has been added. The issue
requested for fullscreen buttons to be added to a few specific pages,
and possibly more in the future, so making an importable component to
use moving forward will streamline the development process.

Furthermore, a toggleable fullscreen button has been added to the
discussion forum, live chat, and simple grading (checkpoint) type
gradeables. Shown below:
Discussion Forum:
<img width="2378" height="848" alt="image"
src="https://github.com/user-attachments/assets/1f02befa-c291-4a22-b3a3-2898eb9f54c3"
/>
Chatroom:
<img width="2264" height="1102" alt="image"
src="https://github.com/user-attachments/assets/03db80b2-ec61-451f-93cc-007a438d7848"
/>
Simple Grading:
<img width="2324" height="708" alt="image"
src="https://github.com/user-attachments/assets/e70f55d2-6415-4cdd-8e15-199e6280a25e"
/>

### What steps should a reviewer take to reproduce or test the bug or
new feature?
Visit each page and make sure the fullscreen button works as intended as
well as the functionality of each page remaining the same while in
fullscreen mode and non-fullscreen mode.

### Automated Testing & Documentation
Not tested, Cypress test to come in this PR.

### Other information
Not a breaking change.
No migrations.
No known security concerns.
prestoncarman added a commit that referenced this pull request Jul 1, 2026
* main: (78 commits)
  [Bugfix:TAGrading] Auto-open single file (#12625)
  [Feature:InstructorUI] Add sortable columns to manage students (#12957)
  [Dependency] Bump php-ds/php-ds from 1.7.0 to 2.0.1 in /site (#12827)
  [Refactor:TAGrading] Events Infrastructure & StatusBanner (#12941)
  [Dependency] Bump sqlalchemy from 2.0.48 to 2.0.51 in /.setup/pip (#12884)
  [Bugfix:Developer] trust hashicorp for vagrant install (#12968)
  [Feature:TAGrading] Backend for submission clustering (#12886)
  [Bugfix:InstructorUI] Missing Subsection in the Edit User form (#12955)
  [Bugfix:Submission] Warning Banners Accessibility Fix (#12956)
  [Bugfix:System] Preserve signup fields (#12939)
  [Bugfix:InstructorUI] Fix Csv Download of Subsections (#12954)
  [Bugfix:InstructorUI] Fix Manage Students Toggle Columns (#12953)
  [Feature:TAGrading] Persistent Auto-Open (#12931)
  [Bugfix:Submission] Dot File Upload (#12924)
  [Refactor:System] Declutter workers (#12815)
  [Bugfix:Developer] save/restore autograding_containers.json (#12952)
  [Bugfix:InstructorUI] Create Course Validation (#12949)
  [Testing:Notifications] Fix grade_inquiries.spec.js (#12950)
  [UI/UX:System] Add fullscreen button vue component (#12936)
  [Bugfix:TAGrading] Student Name Resize (#12946)
  ...

# Conflicts:
#	.pylintrc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

Add 'full screen' mode from TA grading to other pages

3 participants