GitHub: a pull request file is no longer marked Viewed
After you finish reviewing a file on the Files changed tab, you can mark it as viewed, and the file collapses. If the file changes after you view it, it is unmarked as viewed (GitHub's reviewing proposed changes in a pull request, checked October 27, 2026). So a push that changes a file you already viewed brings it back unmarked.
Files changed > Viewed the file collapses the file changes later unmarked as viewed viewerViewedState VIEWED | UNVIEWED | DISMISSED markFileAsViewed pullRequestId, path unmarkFileAsViewed pullRequestId, path
What the mark is
- Yours: in the GraphQL API, each file changed in a pull request has
viewerViewedState, the state of the file for the viewer (GitHub's PullRequestChangedFile). - Three states:
VIEWED, the file has been marked as viewed;UNVIEWED, it has not;DISMISSED, the file has new changes since last viewed (GitHub's FileViewedState). - Progress: the progress bar in the pull request header shows how many files you have viewed.
What to do
- Review it again: the file is back because it changed after you viewed it. Look at it again, then select Viewed on the right of the file header to mark it.
- Narrow the list: on Files changed, filter the files, or use the file tree to go to a specific file.
- Mark or unmark from the API:
markFileAsViewedtakes the Node ID of the pull request aspullRequestIdand thepathof the file;unmarkFileAsViewedtakes the same two (GitHub's markFileAsViewed and unmarkFileAsViewed). - Find the changed files from the API: read
viewerViewedStateon the files of the pull request;DISMISSEDmarks the ones that changed since you viewed them.
In IntelliJ IDEA: the mark is GitHub's, and only VIEWED counts
How the GitHub support built into IntelliJ IDEA reads and changes the Viewed mark, in its source (checked October 31, 2026; IntelliJ IDEA: pullRequestFiles.graphql, GHPRFilesServiceImpl.kt, GHPullRequestChangedFile.kt, GHPRChangeListViewModel.kt, GHPRViewedStateToggleAction.kt, GHPRViewedStateDataProviderImpl.kt, markFileAsViewed.graphql, unmarkFileAsViewed.graphql, CollaborationToolsBundle.properties):
- Where the mark comes from: GitHub. It reads the pull request's files with
viewerViewedStatethrough GraphQL, 100 files a page. A file counts as viewed only when the state isVIEWED:DISMISSED, which GitHub sets when the file changed after you viewed it, counts as not viewed, asUNVIEWEDdoes. So a file GitHub unmarked after a push is not viewed in the IDE either. - Where you can change it: Mark as Viewed and Mark as Not Viewed (Mark All as Viewed and Mark All as Not Viewed for several files) on the files of the whole pull request. The file list of a single commit has no Viewed mark, because, as the source notes, the mark describes a file as a whole. In an open file or diff: Mark File as Viewed and Mark File as Not Viewed.
- What it sends: GraphQL
markFileAsViewedorunmarkFileAsViewedwith the pull request's id and the file's path, one request per file, all at once. The new mark shows at once. If a request fails, the source passes no error on (handling it is marked as still to do): it writes the error to the IDE's log and loads the marks from GitHub again, so the files show GitHub's state.
GitHub pull requests in IntelliJ IDEA
Pull Request Inbox for GitHub, a plugin by Lesstep for JetBrains IDEs 2024.1 or later, shows a pull request's reviews, checks and conversations next to the diff, and merges it with the methods the target branch allows. It keeps its own viewed marks in the IDE: GitHub's Viewed boxes are not read or changed. A mark is made at the head commit; after a push it stays on the files the push did not touch, and a file the push changed loses its mark, much as on GitHub. When GitHub does not say which files a push changed (more than 300 files, or the earlier commit is gone after a force push), the marks on that pull request are cleared, and the Files tab says so. The review inbox, diffs and conversations are free; approving, commenting, resolving and merging are Pro (US$1.50 a month, with a 30-day trial).
GitHub is a trademark of GitHub, Inc.; IntelliJ IDEA is a trademark of JetBrains s.r.o. This page is not affiliated with or endorsed by GitHub, Inc. or JetBrains.
More: GitHub merge refused (405, 409) · GitHub review refused (422) · GitHub search 422 "Validation Failed" · "Resource not accessible by personal access token" · 401 "Bad credentials" · "Resource protected by organization SAML enforcement" · "API rate limit exceeded" · GitHub diff 406 "too_large", 3,000 files · GitHub line comment 422 "must be part of the diff" · GitHub branch update refused (422) · GitHub pull request not created (422, 403) · GitHub auto-merge refused · GitHub draft, ready for review or close refused · GitHub conversation not resolved · GitHub checks not shown (check runs 403) · GitHub file contents not read · GitHub compare refused (404, 422) · GitHub comment or reply refused (403 locked, archived) · GitHub merge method not allowed (405) · GitHub branch not found (404, 301) · GitHub Enterprise Server not reached · GitHub review request not shown · GitHub pull request list incomplete · GitHub 404 Not Found, renamed repositories (301, 307) · GitHub line comment outdated or not on the diff · GitHub pull requests not updating, notifications late · GitHub suggested change cannot be applied · GitHub required check stuck at "Expected" · GitHub code owner review required · GitHub merge blocked by unresolved conversations · GitHub merge blocked by unsigned commits · GitHub branch that merges through a merge queue · GitHub merge waiting for an approval of the most recent push · GitHub merge waiting for code scanning results · GitHub merge waiting for code quality results · GitHub merge blocked by a code coverage threshold · GitHub merge blocked by license compliance results · GitHub branch locked or its updates restricted · GitHub branch not deleted after merging · GitHub merge waiting for a team's approval (Required reviewers) · GitHub merge blocked by secret scanning alerts · GitHub stacked pull request not merging · GitHub push blocked by push rules · GitHub merge blocked by commit metadata rules · GitHub force push blocked · GitHub issue not closed by a merged pull request · GitHub pull request not checked out locally · GitHub pull request has merge conflicts · GitHub changes requested and dismissing a review · GitHub co-author not credited for a commit · GitHub dependency review check failed · GitHub Dependabot not rebasing its pull request · GitHub fork not syncing with upstream · GitHub pull request base branch not changing · GitHub pull request not reverting · GitHub pull request template not showing · GitHub pull request labels or assignees not added · GitHub pull request not closing or reopening · GitHub push blocked by push protection · GitHub pull request comment hidden · GitHub pull request blocked until deployments succeed · GitHub team review request replaced by members · GitHub pull request marked merged without being merged · GitHub Copilot review does not count as an approval · GitHub checks not running on a pull request a workflow created · GitHub Update branch button not shown on a pull request · GitHub checks failing on a Dependabot pull request · GitHub checks failing on a pull request from a fork · GitHub checks skipped by [skip ci] in a commit message · GitHub checks gone after the retention period · GitHub code review limits in a public repository · GitHub pull requests turned off or limited in a repository · GitHub checks run on every pull request in a stack · GitHub pull request showing commits already squash merged · GitHub pull request not showing a file diff · GitHub push to a pull request branch from a fork refused · GitHub check cancelled on a pull request · GitHub Rebase and merge not available · GitHub merge commit message not what you expected · GitHub pull request shows every line changed · GitHub API request timed out · GitHub pull request image or document diff not shown · GitHub review request refused (422) · GitHub pull request from Copilot: checks not running, approval not counted · GitHub push refused: GH006 and GH013 on a protected branch · GitHub "At least 1 approving review is required", approvals that do not count · GitHub pull request plugins for IntelliJ IDEA, compared · 日本語