A GNOME shell extension for quickly switching Claude Code API providers with enhanced performance and reliability.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
Version | Status |
---|---|
1.4.2 (11) | Unreviewed |
1.4.2 (10) | Rejected |
1.4.2 (9) | Rejected |
1.4.1 (8) | Rejected |
1.4.0 (7) | Rejected |
1.4.0 (6) | Rejected |
1.2.0 (5) | Active |
1.1.0 (4) | Active |
1.0.0 (3) | Active |
1.0.0 (2) | Rejected |
1.0.0 (1) | Rejected |
1. As mentioned before, use the ESM import for gettext: ```js import {gettext as _} from 'gettext'; ``` 2. Also #6 from previous review needs to be answered here.
Regarding lines 503 and 521 in extension.js: Line 503: This is within the _generateClaudeConfig() async method, which is part of the configuration generation process. Line 521: This is within the same _generateClaudeConfig() method, handling proxy URL construction. Call Trace: - _generateClaudeConfig() is called by syncToLocalFile() (line 665) - syncToLocalFile() is called in: - Initial setup: line 301 in enable() - Debounced sync: line 285 via GLib.idle_add Resource Management in disable(): All async operations and resources are properly cleaned up in the disable() method (lines 306-340): 1. GLib timeout sources: Line 318-321 removes _syncTimeoutId using GLib.source_remove() 2. Signal connections: Line 324-334 disconnects all settings signal handlers 3. Interface cleanup: Line 308-315 destroys the Claude Hook Interface 4. Async operations: All async operations use fire-and-forget pattern with .catch() error handling, no ongoing promises need cancellation The extension follows proper lifecycle management - all resources created in enable() are cleaned up in disable().
Ok. I see that you are calling `destroy()`on line 310 but what I'm actually asking is that, when the you open a gjs file with `gjs -m` command in `lib/claudeHookInterface.js`, where do you actually cancel the process on destroy? I'm asking that because we need whatever you opened with`gjs -m` command be closed or cancelled on disable.