Skip to content

fix(cli): correct alternate buffer warning logic for JetBrains#26067

Merged
Adib234 merged 3 commits intomainfrom
adibakm/warning-alternate-buffer
Apr 27, 2026
Merged

fix(cli): correct alternate buffer warning logic for JetBrains#26067
Adib234 merged 3 commits intomainfrom
adibakm/warning-alternate-buffer

Conversation

@Adib234
Copy link
Copy Markdown
Contributor

@Adib234 Adib234 commented Apr 27, 2026

Summary

Fixes issue #24790 where the JetBrains alternate buffer warning was incorrectly firing when the user had terminalBuffer mode enabled but alternateBuffer mode disabled.

Details

The isAlternateBufferEnabled(config) helper returns true if either alternateBuffer or terminalBuffer is enabled. However, the terminal's physical alternate screen buffer is only entered when alternateBuffer is enabled. The scrolling and rendering issues specific to JetBrains are tied to the actual terminal alternate screen, so the warning should not fire for terminalBuffer mode.

Changed packages/cli/src/gemini.tsx to use config.getUseAlternateBuffer() for computing the useAlternateBuffer flag used in startup warnings.

Related Issues

Fixes #24790

How to Validate

  1. Open Gemini CLI settings.
  2. Enable terminalBuffer but ensure Use Alternate Screen Buffer is disabled.
  3. Run the CLI in a JetBrains IDE terminal.
  4. Verify that the JetBrains compatibility warning is NOT displayed at startup.
  5. Enable Use Alternate Screen Buffer and verify that the warning IS displayed.

Pre-Merge Checklist

  • Updated relevant documentation and README (if needed)
  • Added/updated tests (Verified existing core compatibility tests)
  • Noted breaking changes (if any)
  • Validated on required platforms/methods:
    • MacOS
      • npm run
      • npx
      • Docker
      • Podman
      • Seatbelt
    • Windows
      • npm run
      • npx
      • Docker
    • Linux
      • npm run
      • npx
      • Docker

Ensures that the JetBrains alternate screen buffer warning only fires
when the actual alternate buffer is enabled, not just terminalBuffer.

Fixes #24790
@Adib234 Adib234 requested a review from a team as a code owner April 27, 2026 19:23
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request addresses an issue where the JetBrains terminal compatibility warning was being triggered erroneously. By refining the logic used to determine if the alternate screen buffer is active, the change ensures that the warning only appears when the specific configuration requiring it is enabled, improving the user experience for those using alternative terminal configurations.

Highlights

  • Logic Correction: Updated the alternate buffer check to rely specifically on the 'alternateBuffer' configuration rather than a combined check that included 'terminalBuffer'.
  • Warning Suppression: Ensured that the JetBrains compatibility warning no longer triggers incorrectly when only 'terminalBuffer' mode is active.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request refactors the retrieval of the alternate buffer status in packages/cli/src/gemini.tsx by replacing the isAlternateBufferEnabled utility function with a direct call to config.getUseAlternateBuffer(). I have no feedback to provide.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 27, 2026

Size Change: -214 B (0%)

Total Size: 33.9 MB

Filename Size Change
./bundle/chunk-4CVZUYRJ.js 0 B -2.73 MB (removed) 🏆
./bundle/chunk-B3EYFBKT.js 0 B -673 kB (removed) 🏆
./bundle/chunk-K2RDI73X.js 0 B -3.43 kB (removed) 🏆
./bundle/chunk-LY3KCUQ4.js 0 B -14.7 MB (removed) 🏆
./bundle/chunk-OJEKVHIT.js 0 B -49.2 kB (removed) 🏆
./bundle/chunk-T7MH3XA4.js 0 B -3.8 kB (removed) 🏆
./bundle/core-S6MP6ORN.js 0 B -48.1 kB (removed) 🏆
./bundle/devtoolsService-LTGRRG33.js 0 B -27.8 kB (removed) 🏆
./bundle/gemini-QPTRGS6O.js 0 B -573 kB (removed) 🏆
./bundle/interactiveCli-E7EY3CON.js 0 B -1.31 MB (removed) 🏆
./bundle/liteRtServerManager-ZBV4TWIW.js 0 B -2.08 kB (removed) 🏆
./bundle/oauth2-provider-5OJ3MRIA.js 0 B -9.16 kB (removed) 🏆
./bundle/chunk-5AF5XEN7.js 3.8 kB +3.8 kB (new file) 🆕
./bundle/chunk-ADBEWBIH.js 673 kB +673 kB (new file) 🆕
./bundle/chunk-ISN2MNB7.js 3.43 kB +3.43 kB (new file) 🆕
./bundle/chunk-JUXXKWRE.js 14.7 MB +14.7 MB (new file) 🆕
./bundle/chunk-RGTJR2GT.js 2.73 MB +2.73 MB (new file) 🆕
./bundle/chunk-TEQLQZ2K.js 49.2 kB +49.2 kB (new file) 🆕
./bundle/core-65Y3BNI3.js 48.1 kB +48.1 kB (new file) 🆕
./bundle/devtoolsService-6DPM6HAX.js 27.8 kB +27.8 kB (new file) 🆕
./bundle/gemini-TAATF5LW.js 573 kB +573 kB (new file) 🆕
./bundle/interactiveCli-O642SWO7.js 1.31 MB +1.31 MB (new file) 🆕
./bundle/liteRtServerManager-CFS4OGVC.js 2.08 kB +2.08 kB (new file) 🆕
./bundle/oauth2-provider-XKMYGHWL.js 9.16 kB +9.16 kB (new file) 🆕
ℹ️ View Unchanged
Filename Size Change
./bundle/bundled/third_party/index.js 8 MB 0 B
./bundle/chunk-34MYV7JD.js 2.45 kB 0 B
./bundle/chunk-5AUYMPVF.js 858 B 0 B
./bundle/chunk-5PS3AYFU.js 1.18 kB 0 B
./bundle/chunk-664ZODQF.js 124 kB 0 B
./bundle/chunk-DAHVX5MI.js 206 kB 0 B
./bundle/chunk-IUUIT4SU.js 56.5 kB 0 B
./bundle/chunk-MTD736U4.js 1.97 MB 0 B
./bundle/chunk-RJTRUG2J.js 39.8 kB 0 B
./bundle/cleanup-CJTFXBW2.js 0 B -932 B (removed) 🏆
./bundle/devtools-36NN55EP.js 696 kB 0 B
./bundle/dist-T73EYRDX.js 356 B 0 B
./bundle/events-XB7DADIJ.js 418 B 0 B
./bundle/examples/hooks/scripts/on-start.js 188 B 0 B
./bundle/examples/mcp-server/example.js 1.43 kB 0 B
./bundle/gemini.js 4.97 kB 0 B
./bundle/getMachineId-bsd-TXG52NKR.js 1.55 kB 0 B
./bundle/getMachineId-darwin-7OE4DDZ6.js 1.55 kB 0 B
./bundle/getMachineId-linux-SHIFKOOX.js 1.34 kB 0 B
./bundle/getMachineId-unsupported-5U5DOEYY.js 1.06 kB 0 B
./bundle/getMachineId-win-6KLLGOI4.js 1.72 kB 0 B
./bundle/memoryDiscovery-NSOLCG4U.js 980 B 0 B
./bundle/multipart-parser-KPBZEGQU.js 11.7 kB 0 B
./bundle/node_modules/@google/gemini-cli-devtools/dist/client/main.js 222 kB 0 B
./bundle/node_modules/@google/gemini-cli-devtools/dist/src/_client-assets.js 229 kB 0 B
./bundle/node_modules/@google/gemini-cli-devtools/dist/src/index.js 13.4 kB 0 B
./bundle/node_modules/@google/gemini-cli-devtools/dist/src/types.js 132 B 0 B
./bundle/sandbox-macos-permissive-open.sb 890 B 0 B
./bundle/sandbox-macos-permissive-proxied.sb 1.31 kB 0 B
./bundle/sandbox-macos-restrictive-open.sb 3.36 kB 0 B
./bundle/sandbox-macos-restrictive-proxied.sb 3.56 kB 0 B
./bundle/sandbox-macos-strict-open.sb 4.82 kB 0 B
./bundle/sandbox-macos-strict-proxied.sb 5.02 kB 0 B
./bundle/src-QVCVGIUX.js 47 kB 0 B
./bundle/start-BDL2W2TU.js 0 B -622 B (removed) 🏆
./bundle/tree-sitter-7U6MW5PS.js 274 kB 0 B
./bundle/tree-sitter-bash-34ZGLXVX.js 1.84 MB 0 B
./bundle/cleanup-DVM673OE.js 932 B +932 B (new file) 🆕
./bundle/start-UJYLLOW4.js 622 B +622 B (new file) 🆕

compressed-size-action

@Adib234 Adib234 enabled auto-merge April 27, 2026 19:51
@gemini-cli gemini-cli Bot added the area/core Issues related to User Interface, OS Support, Core Functionality label Apr 27, 2026
@Adib234 Adib234 added this pull request to the merge queue Apr 27, 2026
Merged via the queue into main with commit 31337b9 Apr 27, 2026
27 checks passed
@Adib234 Adib234 deleted the adibakm/warning-alternate-buffer branch April 27, 2026 20:14
Bojun-Vvibe added a commit to Bojun-Vvibe/oss-contributions that referenced this pull request Apr 30, 2026
- BerriAI/litellm#26843 (merge-after-nits) — invite-link onboarding token hardening

- google-gemini/gemini-cli#26067 (merge-after-nits) — JetBrains alt-buffer respects user setting

- QwenLM/qwen-code#3622 (merge-as-is) — rewind E2E assertion update post isRealUserTurn

- QwenLM/qwen-code#3609 (merge-after-nits) — zero-width-space placeholder unification

- aaif-goose/goose#8796 (merge-as-is) — newSession _meta wire-protocol field rename
TirthNaik-99 pushed a commit to TirthNaik-99/gemini-cli that referenced this pull request May 4, 2026
kimjune01 pushed a commit to kimjune01/gemini-cli-claude that referenced this pull request May 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/core Issues related to User Interface, OS Support, Core Functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Warning about alternate buffer mode incorrectly fires when the user is just in terminalBuffer mode.

2 participants