3838import android .support .annotation .NonNull ;
3939
4040import com .smartdevicelink .managers .CompletionListener ;
41+ import com .smartdevicelink .managers .ManagerUtility ;
4142import com .smartdevicelink .managers .file .FileManager ;
4243import com .smartdevicelink .managers .file .MultipleFileCompletionListener ;
4344import com .smartdevicelink .managers .file .filetypes .SdlArtwork ;
4647import com .smartdevicelink .proxy .rpc .Choice ;
4748import com .smartdevicelink .proxy .rpc .CreateInteractionChoiceSet ;
4849import com .smartdevicelink .proxy .rpc .Image ;
49- import com .smartdevicelink .proxy .rpc .ImageField ;
50- import com .smartdevicelink .managers .ManagerUtility ;
51- import com .smartdevicelink .proxy .rpc .TextField ;
5250import com .smartdevicelink .proxy .rpc .WindowCapability ;
51+ import com .smartdevicelink .proxy .rpc .enums .DisplayType ;
5352import com .smartdevicelink .proxy .rpc .enums .ImageFieldName ;
5453import com .smartdevicelink .proxy .rpc .enums .Result ;
5554import com .smartdevicelink .proxy .rpc .enums .TextFieldName ;
@@ -68,16 +67,18 @@ class PreloadChoicesOperation extends AsynchronousOperation {
6867 private WeakReference <ISdl > internalInterface ;
6968 private WeakReference <FileManager > fileManager ;
7069 private WindowCapability defaultMainWindowCapability ;
70+ private String displayName ;
7171 private HashSet <ChoiceCell > cellsToUpload ;
7272 private CompletionListener completionListener ;
7373 private boolean isRunning ;
7474 private boolean isVROptional ;
7575
76- PreloadChoicesOperation (ISdl internalInterface , FileManager fileManager , WindowCapability defaultMainWindowCapability ,
76+ PreloadChoicesOperation (ISdl internalInterface , FileManager fileManager , String displayName , WindowCapability defaultMainWindowCapability ,
7777 Boolean isVROptional , HashSet <ChoiceCell > cellsToPreload , CompletionListener listener ){
7878 super ();
7979 this .internalInterface = new WeakReference <>(internalInterface );
8080 this .fileManager = new WeakReference <>(fileManager );
81+ this .displayName = displayName ;
8182 this .defaultMainWindowCapability = defaultMainWindowCapability ;
8283 this .isVROptional = isVROptional ;
8384 this .cellsToUpload = cellsToPreload ;
@@ -229,53 +230,46 @@ private CreateInteractionChoiceSet choiceFromCell(ChoiceCell cell){
229230 }
230231
231232 // HELPERS
232-
233- /**
234- * Check WindowCapability for setting MenuName
235- * @return true if capability is null or capability exist, false if capability is not there
236- */
237- boolean shouldSendChoiceText () {
238- return ( defaultMainWindowCapability != null && defaultMainWindowCapability . getTextFields () != null ) ? ManagerUtility . WindowCapabilityUtility . hasTextFieldOfName ( defaultMainWindowCapability , TextFieldName . menuName ) : true ;
233+ private boolean shouldSendChoiceText () {
234+ if ( this . displayName != null && this . displayName . equals ( DisplayType . GEN3_8_INCH )){
235+ return true ;
236+ }
237+ return ( defaultMainWindowCapability != null && defaultMainWindowCapability . getTextFields () != null )
238+ ? ManagerUtility . WindowCapabilityUtility . hasTextFieldOfName ( defaultMainWindowCapability , TextFieldName . menuName )
239+ : true ;
239240 }
240241
241- /**
242- * Check WindowCapability for setting MenuName
243- * @return true if capability is null or capability exist, false if capability is not there
244- */
245- boolean shouldSendChoiceSecondaryText () {
246- return (defaultMainWindowCapability != null && defaultMainWindowCapability .getTextFields () != null ) ? ManagerUtility .WindowCapabilityUtility .hasTextFieldOfName (defaultMainWindowCapability , TextFieldName .secondaryText ) : true ;
242+ private boolean shouldSendChoiceSecondaryText () {
243+ return (defaultMainWindowCapability != null && defaultMainWindowCapability .getTextFields () != null )
244+ ? ManagerUtility .WindowCapabilityUtility .hasTextFieldOfName (defaultMainWindowCapability , TextFieldName .secondaryText )
245+ : true ;
247246 }
248247
249- /**
250- * Check WindowCapability for setting tertiaryText
251- * @return true if capability is null or capability exist, false if capability is not there
252- */
253- boolean shouldSendChoiceTertiaryText () {
254- return (defaultMainWindowCapability != null && defaultMainWindowCapability .getTextFields () != null ) ? ManagerUtility .WindowCapabilityUtility .hasTextFieldOfName (defaultMainWindowCapability , TextFieldName .tertiaryText ) : true ;
248+ private boolean shouldSendChoiceTertiaryText () {
249+ return (defaultMainWindowCapability != null && defaultMainWindowCapability .getTextFields () != null )
250+ ? ManagerUtility .WindowCapabilityUtility .hasTextFieldOfName (defaultMainWindowCapability , TextFieldName .tertiaryText )
251+ : true ;
255252 }
256253
257- /**
258- * Check WindowCapability for setting choiceImage
259- * @return true if capability is null or capability exist, false if capability is not there
260- */
261- boolean shouldSendChoicePrimaryImage () {
262- return (defaultMainWindowCapability != null && defaultMainWindowCapability .getImageFields () != null ) ? ManagerUtility .WindowCapabilityUtility .hasImageFieldOfName (defaultMainWindowCapability , ImageFieldName .choiceImage ) : true ;
254+ private boolean shouldSendChoicePrimaryImage () {
255+ return (defaultMainWindowCapability != null && defaultMainWindowCapability .getImageFields () != null )
256+ ? ManagerUtility .WindowCapabilityUtility .hasImageFieldOfName (defaultMainWindowCapability , ImageFieldName .choiceImage )
257+ : true ;
263258 }
264259
265- /**
266- * Check WindowCapability for setting choiceSecondaryImage
267- * @return true if capability is null or capability exist, false if capability is not there
268- */
269- boolean shouldSendChoiceSecondaryImage () {
270- return (defaultMainWindowCapability != null && defaultMainWindowCapability .getImageFields () != null ) ? ManagerUtility .WindowCapabilityUtility .hasImageFieldOfName (defaultMainWindowCapability , ImageFieldName .choiceSecondaryImage ) : true ;
260+ private boolean shouldSendChoiceSecondaryImage () {
261+ return (defaultMainWindowCapability != null && defaultMainWindowCapability .getImageFields () != null )
262+ ? ManagerUtility .WindowCapabilityUtility .hasImageFieldOfName (defaultMainWindowCapability , ImageFieldName .choiceSecondaryImage )
263+ : true ;
271264 }
265+
272266 List <SdlArtwork > artworksToUpload (){
273- List <SdlArtwork > artworksToUpload = new ArrayList <>(cellsToUpload . size () );
267+ List <SdlArtwork > artworksToUpload = new ArrayList <>();
274268 for (ChoiceCell cell : cellsToUpload ){
275- if (ManagerUtility . WindowCapabilityUtility . hasImageFieldOfName ( defaultMainWindowCapability , ImageFieldName . choiceImage ) && artworkNeedsUpload (cell .getArtwork ())){
269+ if (shouldSendChoicePrimaryImage ( ) && artworkNeedsUpload (cell .getArtwork ())){
276270 artworksToUpload .add (cell .getArtwork ());
277271 }
278- if (ManagerUtility . WindowCapabilityUtility . hasImageFieldOfName ( defaultMainWindowCapability , ImageFieldName . choiceSecondaryImage ) && artworkNeedsUpload (cell .getSecondaryArtwork ())){
272+ if (shouldSendChoiceSecondaryImage ( ) && artworkNeedsUpload (cell .getSecondaryArtwork ())){
279273 artworksToUpload .add (cell .getSecondaryArtwork ());
280274 }
281275 }
@@ -288,30 +282,4 @@ boolean artworkNeedsUpload(SdlArtwork artwork){
288282 }
289283 return false ;
290284 }
291-
292- @ Deprecated
293- boolean hasImageFieldOfName (ImageFieldName name ){
294- if (defaultMainWindowCapability == null ){ return false ; }
295- if (defaultMainWindowCapability .getImageTypeSupported () == null || defaultMainWindowCapability .getImageTypeSupported ().isEmpty ()) { return false ; }
296- if (defaultMainWindowCapability .getImageFields () != null ){
297- for (ImageField field : defaultMainWindowCapability .getImageFields ()){
298- if (field != null && field .getName () != null && field .getName ().equals (name )){
299- return true ;
300- }
301- }
302- }
303- return false ;
304- }
305- @ Deprecated
306- boolean hasTextFieldOfName (TextFieldName name ){
307- if (defaultMainWindowCapability == null ){ return false ; }
308- if (defaultMainWindowCapability .getTextFields () != null ){
309- for (TextField field : defaultMainWindowCapability .getTextFields ()){
310- if (field != null && field .getName () != null && field .getName ().equals (name )){
311- return true ;
312- }
313- }
314- }
315- return false ;
316- }
317285}
0 commit comments