66import vscode from 'vscode'
77import {
88 AuthUtil ,
9- CodeSuggestionsState ,
10- CodeWhispererCodeCoverageTracker ,
119 CodeWhispererConstants ,
12- CodeWhispererSettings ,
13- ConfigurationEntry ,
14- DefaultCodeWhispererClient ,
15- invokeRecommendation ,
1610 isInlineCompletionEnabled ,
17- KeyStrokeHandler ,
18- RecommendationHandler ,
1911 runtimeLanguageContext ,
2012 TelemetryHelper ,
2113 UserWrittenCodeTracker ,
2214 vsCodeState ,
2315} from 'aws-core-vscode/codewhisperer'
24- import { Commands , getLogger , globals , sleep } from 'aws-core-vscode/shared'
16+ import { globals , sleep } from 'aws-core-vscode/shared'
2517
2618export async function activate ( ) {
27- const codewhispererSettings = CodeWhispererSettings . instance
28- const client = new DefaultCodeWhispererClient ( )
29-
3019 if ( isInlineCompletionEnabled ( ) ) {
3120 await setSubscriptionsforInlineCompletion ( )
3221 await AuthUtil . instance . setVscodeContextProps ( )
3322 }
3423
35- function getAutoTriggerStatus ( ) : boolean {
36- return CodeSuggestionsState . instance . isSuggestionsEnabled ( )
37- }
38-
39- async function getConfigEntry ( ) : Promise < ConfigurationEntry > {
40- const isShowMethodsEnabled : boolean =
41- vscode . workspace . getConfiguration ( 'editor' ) . get ( 'suggest.showMethods' ) || false
42- const isAutomatedTriggerEnabled : boolean = getAutoTriggerStatus ( )
43- const isManualTriggerEnabled : boolean = true
44- const isSuggestionsWithCodeReferencesEnabled = codewhispererSettings . isSuggestionsWithCodeReferencesEnabled ( )
45-
46- // TODO:remove isManualTriggerEnabled
47- return {
48- isShowMethodsEnabled,
49- isManualTriggerEnabled,
50- isAutomatedTriggerEnabled,
51- isSuggestionsWithCodeReferencesEnabled,
52- }
53- }
54-
5524 async function setSubscriptionsforInlineCompletion ( ) {
56- RecommendationHandler . instance . subscribeSuggestionCommands ( )
57-
5825 /**
5926 * Automated trigger
6027 */
6128 globals . context . subscriptions . push (
62- vscode . window . onDidChangeActiveTextEditor ( async ( editor ) => {
63- await RecommendationHandler . instance . onEditorChange ( )
64- } ) ,
65- vscode . window . onDidChangeWindowState ( async ( e ) => {
66- await RecommendationHandler . instance . onFocusChange ( )
67- } ) ,
68- vscode . window . onDidChangeTextEditorSelection ( async ( e ) => {
69- await RecommendationHandler . instance . onCursorChange ( e )
70- } ) ,
7129 vscode . workspace . onDidChangeTextDocument ( async ( e ) => {
7230 const editor = vscode . window . activeTextEditor
7331 if ( ! editor ) {
@@ -80,7 +38,6 @@ export async function activate() {
8038 return
8139 }
8240
83- CodeWhispererCodeCoverageTracker . getTracker ( e . document . languageId ) ?. countTotalTokens ( e )
8441 UserWrittenCodeTracker . instance . onTextDocumentChange ( e )
8542 /**
8643 * Handle this keystroke event only when
@@ -105,19 +62,6 @@ export async function activate() {
10562 * Then this event can be processed by our code.
10663 */
10764 await sleep ( CodeWhispererConstants . vsCodeCursorUpdateDelay )
108- if ( ! RecommendationHandler . instance . isSuggestionVisible ( ) ) {
109- await KeyStrokeHandler . instance . processKeyStroke ( e , editor , client , await getConfigEntry ( ) )
110- }
111- } ) ,
112- // manual trigger
113- Commands . register ( { id : 'aws.amazonq.invokeInlineCompletion' , autoconnect : true } , async ( ) => {
114- invokeRecommendation (
115- vscode . window . activeTextEditor as vscode . TextEditor ,
116- client ,
117- await getConfigEntry ( )
118- ) . catch ( ( e ) => {
119- getLogger ( ) . error ( 'invokeRecommendation failed: %s' , ( e as Error ) . message )
120- } )
12165 } )
12266 )
12367 }
0 commit comments