@@ -77,7 +77,12 @@ export class UsbDetector {
77
77
let bd = ArduinoContext . boardManager . installedBoards . get ( boardKey ) ;
78
78
if ( ! bd ) {
79
79
ArduinoContext . boardManager . updatePackageIndex ( deviceDescriptor . indexFile ) . then ( ( shouldLoadPackageContent ) => {
80
- vscode . window . showInformationMessage ( `Install board package for ${ deviceDescriptor . name } ` , "Yes" , "No" ) . then ( ( ans ) => {
80
+ const ignoreBoards = VscodeSettings . getInstance ( ) . ignoreBoards || [ ] ;
81
+ if ( ignoreBoards . indexOf ( deviceDescriptor . name ) >= 0 ) {
82
+ return ;
83
+ }
84
+ vscode . window . showInformationMessage ( `Install board package for ${
85
+ deviceDescriptor . name } `, "Yes" , "No" , "Don't ask again" ) . then ( ( ans ) => {
81
86
if ( ans === "Yes" ) {
82
87
ArduinoContext . arduinoApp . installBoard ( deviceDescriptor . package , deviceDescriptor . architecture )
83
88
. then ( ( ) => {
@@ -88,6 +93,9 @@ export class UsbDetector {
88
93
bd = ArduinoContext . boardManager . installedBoards . get ( boardKey ) ;
89
94
this . switchBoard ( bd , deviceDescriptor ) ;
90
95
} ) ;
96
+ } else if ( ans === "Don't ask again" ) {
97
+ ignoreBoards . push ( deviceDescriptor . name ) ;
98
+ VscodeSettings . getInstance ( ) . ignoreBoards = ignoreBoards ;
91
99
}
92
100
} ) ;
93
101
} ) ;
@@ -96,11 +104,18 @@ export class UsbDetector {
96
104
if ( currBoard . board !== deviceDescriptor . id
97
105
|| currBoard . platform . architecture !== deviceDescriptor . architecture
98
106
|| currBoard . getPackageName ( ) !== deviceDescriptor . package ) {
107
+ const ignoreBoards = VscodeSettings . getInstance ( ) . ignoreBoards || [ ] ;
108
+ if ( ignoreBoards . indexOf ( deviceDescriptor . name ) >= 0 ) {
109
+ return ;
110
+ }
99
111
vscode . window . showInformationMessage ( `Detected board ${ deviceDescriptor . name } . Would you like to switch to this board type?` ,
100
- "Yes" , "No" )
112
+ "Yes" , "No" , "Don't ask again" )
101
113
. then ( ( ans ) => {
102
114
if ( ans === "Yes" ) {
103
115
return this . switchBoard ( bd , deviceDescriptor ) ;
116
+ } else if ( ans === "Don't ask again" ) {
117
+ ignoreBoards . push ( deviceDescriptor . name ) ;
118
+ VscodeSettings . getInstance ( ) . ignoreBoards = ignoreBoards ;
104
119
}
105
120
} ) ;
106
121
} else {
0 commit comments