Codex app file viewer should preserve scroll position and support Page Up/Page Down
What variant of Codex are you using?
Codex app
What feature would you like to see?
I would like the Codex app's in-app file viewer to preserve scroll position and support keyboard paging.
Currently, when reviewing longer files, the file viewer often jumps back to the beginning of the file. I have noticed this when:
- the file is edited
- Codex modifies the file
- I switch to another chat/thread and then return
- the file view refreshes
This makes it difficult to continue reviewing from the same section in long Markdown, code, or planning files.
I would like the file viewer to:
- remember the last scroll position for each open file where possible
- avoid resetting to the top after edits or when returning to a chat
- support
Page UpandPage Downwhen the file viewer has focus
This would make long-file review much smoother, especially when checking Codex edits across large documents.
Additional information
The current behavior creates a lot of friction in review workflows. When the file jumps back to the top, Page Up and Page Down also do not appear to work in the file viewer, so I have to manually scroll back to the relevant section with the mouse.
Expected behavior:
- file scroll position is preserved after edits where possible
- switching away from and back to a chat does not reset the file viewer to the top
Page Up/Page Downscroll the file viewer when focused
Actual behavior:
- the file viewer resets to the beginning
- keyboard paging does not work
- recovering the previous location requires manual mouse scrolling
4 Comments
page up page down + up and down should also work to scroll the chat window
@kendonB Good point, seems like the page up / down behavior is also finicky and inconsistent at the moment with chats. Hope they patch this soon 🙏
+1. I’m hitting this specifically in the app diff/file viewer while Codex is still working.
It is useful to keep a diff open and review the current changes while Codex continues editing, so I can steer if the change is going off track. When the file/diff view refreshes after updates, it resets back to the top and I lose the section I was reviewing.
The ideal behavior would be: refresh the displayed content when Codex edits the file, but preserve the current scroll anchor/position where possible instead of remounting or resetting the viewer to the top.
For anyone else running into this, hit the thumbs-up reaction on the issue as well; that is used for prioritization signal.
Adding a current Windows reproduction of the diff-pane variant. This makes the Review pane effectively unusable for a large working tree.
Environment
26.707.9981.00.144.210.0.262002.55.0.windows.2Reproduction
The scroll reset repeats, so it is not practically possible to review anything below the first part of the diff.
Additional evidence
I checked whether actual repository changes explained the refresh. Over a six-second observation window, both the complete porcelain status fingerprint and the tracked binary-diff fingerprint remained identical. Despite that stable Git state, a separate 15-second process trace observed 95 new
git.exeprocesses and 108 newconhost.exeprocesses. A shorter trace observed 18git.exeprocesses in six seconds, with 10 directly parented byChatGPT.exe.That process churn appears related to the repeated Git polling reported in #26812 and may be the trigger for the diff-pane refresh, although the exact UI cause still needs maintainer confirmation.
Expected behavior
The diff content may update when repository state genuinely changes, but the viewer should preserve the current scroll anchor/position. An unchanged repository state should not remount or reset the diff viewer.
Actual behavior
The pane repeatedly refreshes and resets to the first diff, even while the working-tree status and diff content are unchanged.
Workaround
I did not find a durable workaround in the docs or existing issue comments. The only practical options are to close the Review pane while Codex is active, review after the task stops, or use an external diff viewer.