Hi all - this is in reference to the earlier post dealing with the same issue at 1.3 and 2.3:
Web AppBuilder 1.2 Search/Geocoder widget color/style question
but thought I'd start a new thread because the changes in the Search widget's Widget.js code at 2.6 have rendered the earlier fix (that worked up through 2.5) when starting a new app in the 2.6 Developer edition
As in earlier 2.x versions, to change the default highlight symbol I add in the jsonUtils to the define function and alias:
<SPAN class="token function">define</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">[</SPAN>
<SPAN class="string token">'dojo/_base/declare'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/_base/lang'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/_base/array'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/_base/html'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/when'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/on'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/aspect'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/query'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/keys'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/Deferred'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'dojo/promise/all'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'jimu/BaseWidget'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'jimu/LayerInfos/LayerInfos'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'jimu/utils'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'esri/dijit/Search'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'esri/tasks/locator'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'esri/layers/FeatureLayer'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'esri/InfoTemplate'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'esri/lang'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'./utils'</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">'esri/symbols/jsonUtils'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="comment token">//for highlight change</SPAN>
<SPAN class="string token">'dojo/NodeList-dom'</SPAN>
<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="keyword token">function</SPAN><SPAN class="punctuation token">(</SPAN>declare<SPAN class="punctuation token">,</SPAN> lang<SPAN class="punctuation token">,</SPAN> array<SPAN class="punctuation token">,</SPAN> html<SPAN class="punctuation token">,</SPAN> when<SPAN class="punctuation token">,</SPAN> on<SPAN class="punctuation token">,</SPAN> aspect<SPAN class="punctuation token">,</SPAN> query<SPAN class="punctuation token">,</SPAN> keys<SPAN class="punctuation token">,</SPAN> Deferred<SPAN class="punctuation token">,</SPAN> all<SPAN class="punctuation token">,</SPAN>
BaseWidget<SPAN class="punctuation token">,</SPAN> LayerInfos<SPAN class="punctuation token">,</SPAN> jimuUtils<SPAN class="punctuation token">,</SPAN> Search<SPAN class="punctuation token">,</SPAN> Locator<SPAN class="punctuation token">,</SPAN>
FeatureLayer<SPAN class="punctuation token">,</SPAN> InfoTemplate<SPAN class="punctuation token">,</SPAN> esriLang<SPAN class="punctuation token">,</SPAN> utils<SPAN class="punctuation token">,</SPAN> jsonUtils<SPAN class="punctuation token">)</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
On about line 330 in the code, I add the highlight symbol property to the convertedSource var inside the _convertConfig function:
<SPAN class="keyword token">var</SPAN> convertedSource <SPAN class="operator token">=</SPAN> <SPAN class="punctuation token">{</SPAN>
featureLayer<SPAN class="punctuation token">:</SPAN> flayer<SPAN class="punctuation token">,</SPAN>
outFields<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="string token">"*"</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
searchFields<SPAN class="punctuation token">:</SPAN> fNames<SPAN class="punctuation token">,</SPAN>
displayField<SPAN class="punctuation token">:</SPAN> source<SPAN class="punctuation token">.</SPAN>displayField <SPAN class="operator token">||</SPAN> <SPAN class="string token">""</SPAN><SPAN class="punctuation token">,</SPAN>
exactMatch<SPAN class="punctuation token">:</SPAN> <SPAN class="operator token">!</SPAN><SPAN class="operator token">!</SPAN>source<SPAN class="punctuation token">.</SPAN>exactMatch<SPAN class="punctuation token">,</SPAN>
name<SPAN class="punctuation token">:</SPAN> jimuUtils<SPAN class="punctuation token">.</SPAN><SPAN class="token function">stripHTML</SPAN><SPAN class="punctuation token">(</SPAN>source<SPAN class="punctuation token">.</SPAN>name <SPAN class="operator token">||</SPAN> <SPAN class="string token">""</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN>
placeholder<SPAN class="punctuation token">:</SPAN> jimuUtils<SPAN class="punctuation token">.</SPAN><SPAN class="token function">stripHTML</SPAN><SPAN class="punctuation token">(</SPAN>source<SPAN class="punctuation token">.</SPAN>placeholder <SPAN class="operator token">||</SPAN> <SPAN class="string token">""</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN>
maxSuggestions<SPAN class="punctuation token">:</SPAN> source<SPAN class="punctuation token">.</SPAN>maxSuggestions <SPAN class="operator token">||</SPAN> <SPAN class="number token">6</SPAN><SPAN class="punctuation token">,</SPAN>
maxResults<SPAN class="punctuation token">:</SPAN> source<SPAN class="punctuation token">.</SPAN>maxResults <SPAN class="operator token">||</SPAN> <SPAN class="number token">6</SPAN><SPAN class="punctuation token">,</SPAN>
zoomScale<SPAN class="punctuation token">:</SPAN> source<SPAN class="punctuation token">.</SPAN>zoomScale <SPAN class="operator token">||</SPAN> <SPAN class="number token">50000</SPAN><SPAN class="punctuation token">,</SPAN>
infoTemplate<SPAN class="punctuation token">:</SPAN> template<SPAN class="punctuation token">,</SPAN>
useMapExtent<SPAN class="punctuation token">:</SPAN> <SPAN class="operator token">!</SPAN><SPAN class="operator token">!</SPAN>source<SPAN class="punctuation token">.</SPAN>searchInCurrentMapExtent<SPAN class="punctuation token">,</SPAN>
_featureLayerId<SPAN class="punctuation token">:</SPAN> source<SPAN class="punctuation token">.</SPAN>layerId<SPAN class="punctuation token">,</SPAN>
highlightSymbol<SPAN class="punctuation token">:</SPAN> jsonUtils<SPAN class="punctuation token">.</SPAN><SPAN class="token function">fromJson</SPAN><SPAN class="punctuation token">(</SPAN>source<SPAN class="punctuation token">.</SPAN>highlightSymbol<SPAN class="punctuation token">)</SPAN> <SPAN class="comment token">//to add highlight symbol from json</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">;</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>the highlightSymbol is set for each of the layers in the config.json:
<SPAN class="string token">"highlightSymbol"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="string token">"color"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">100</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="number token">100</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="number token">100</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="number token">25</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"outline"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="string token">"color"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">102</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="number token">204</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>
<SPAN class="string token">"width"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="number token">5</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">"type"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"esriSLS"</SPAN> <SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"style"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"esriSLSSolid"</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">"type"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"esriSFS"</SPAN> <SPAN class="punctuation token">,</SPAN><SPAN class="string token">"style"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"esriSFSSolid"</SPAN><SPAN class="punctuation token">}</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>and returns my settings to me in the console.log, but still reverts to the default highlight color and thickness, regardless:

So what should be a thick purple outline comes back in the default setting. I've gone through the code to try to find what would be preventing the earlier method from working but have not had success. Here are the changes, the comments here are the esri developer's comments:
On about line 137, a new promise(?) and handler for the infoWindow is added, not present in earlier 2.x:
<SPAN class="comment token">// attatch original feature layer's id.</SPAN>
<SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">own</SPAN><SPAN class="punctuation token">(</SPAN>
aspect<SPAN class="punctuation token">.</SPAN><SPAN class="token function">before</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>map<SPAN class="punctuation token">.</SPAN>infoWindow<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'setFeatures'</SPAN><SPAN class="punctuation token">,</SPAN> lang<SPAN class="punctuation token">.</SPAN><SPAN class="token function">hitch</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'_attatchOriLayerId'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="comment token">// this.map.infoWindow has two different implementations (esri/dijit/Popup and esri/dijit/PopupMobile)</SPAN>
<SPAN class="comment token">// after screen size changed. map switch it automatically.</SPAN>
<SPAN class="comment token">// here make sure fun:setFeatures be binded</SPAN>
<SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_mapInfoWindow_ <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>map<SPAN class="punctuation token">.</SPAN>infoWindow<SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> _winResizeHandler <SPAN class="operator token">=</SPAN> <SPAN class="token function">on</SPAN><SPAN class="punctuation token">(</SPAN>window<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'resize'</SPAN><SPAN class="punctuation token">,</SPAN> lang<SPAN class="punctuation token">.</SPAN><SPAN class="token function">hitch</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="keyword token">function</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_mapInfoWindow_ <SPAN class="operator token">!==</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>map<SPAN class="punctuation token">.</SPAN>infoWindow<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN><SPAN class="token function">own</SPAN><SPAN class="punctuation token">(</SPAN>
aspect<SPAN class="punctuation token">.</SPAN><SPAN class="token function">before</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>map<SPAN class="punctuation token">.</SPAN>infoWindow<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'setFeatures'</SPAN><SPAN class="punctuation token">,</SPAN> lang<SPAN class="punctuation token">.</SPAN><SPAN class="token function">hitch</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'_attatchOriLayerId'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
_winResizeHandler<SPAN class="punctuation token">.</SPAN><SPAN class="token function">remove</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>at about line 182, a 'show,hide' on event that I previously used to persist a graphic on-screen after the infoWindow closes has been commented out (a separate behavior):
<SPAN class="comment token">// this.own(</SPAN>
<SPAN class="comment token">// on(this.map.infoWindow, 'show,hide', lang.hitch(this, function() {</SPAN>
<SPAN class="comment token">// if (this.searchDijit &&</SPAN>
<SPAN class="comment token">// this.map.infoWindow.getSelectedFeature() ===</SPAN>
<SPAN class="comment token">// this.searchDijit.highlightGraphic) {</SPAN>
<SPAN class="comment token">// this.searchDijit.clearGraphics();</SPAN>
<SPAN class="comment token">// query('li', this.searchResultsNode).removeClass('result-item-selected');</SPAN>
<SPAN class="comment token">// }</SPAN>
<SPAN class="comment token">// }))</SPAN>
<SPAN class="comment token">// );</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>The next changes begin on about line 677 as part of the _onSelectedSeachResult function:
<SPAN class="comment token">// clear before select.</SPAN>
<SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>searchDijit<SPAN class="punctuation token">.</SPAN><SPAN class="token function">clearGraphics</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN></SPAN>
Then more commented code as part of the _onSelectResult function at line 683:
_onSelectResult<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">function</SPAN><SPAN class="punctuation token">(</SPAN>e<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="keyword token">var</SPAN> result <SPAN class="operator token">=</SPAN> e<SPAN class="punctuation token">.</SPAN>result<SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="operator token">!</SPAN><SPAN class="punctuation token">(</SPAN>result <SPAN class="operator token">&&</SPAN> result<SPAN class="punctuation token">.</SPAN>name<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="keyword token">return</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="keyword token">var</SPAN> dataSourceIndex <SPAN class="operator token">=</SPAN> e<SPAN class="punctuation token">.</SPAN>sourceIndex<SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> sourceResults <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>searchResults<SPAN class="punctuation token">[</SPAN>dataSourceIndex<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> dataIndex <SPAN class="operator token">=</SPAN> <SPAN class="number token">0</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="comment token">// var that = this;</SPAN>
<SPAN class="comment token">// var getGraphics = function(layer, fid) {</SPAN>
<SPAN class="comment token">// var graphics = layer.graphics;</SPAN>
<SPAN class="comment token">// var gs = array.filter(graphics, function(g) {</SPAN>
<SPAN class="comment token">// return g.attributes[layer.objectIdField] === fid;</SPAN>
<SPAN class="comment token">// });</SPAN>
<SPAN class="comment token">// return gs;</SPAN>
<SPAN class="comment token">// };</SPAN>
<SPAN class="comment token">// var showPopupByFeatures = function(features) {</SPAN>
<SPAN class="comment token">// var location = null;</SPAN>
<SPAN class="comment token">// that.map.infoWindow.setFeatures(features);</SPAN>
<SPAN class="comment token">// if (features[0].geometry.type === "point") {</SPAN>
<SPAN class="comment token">// location = features[0].geometry;</SPAN>
<SPAN class="comment token">// } else {</SPAN>
<SPAN class="comment token">// location = features[0].geometry.getExtent().getCenter();</SPAN>
<SPAN class="comment token">// }</SPAN>
<SPAN class="comment token">// that.map.infoWindow.show(location, {</SPAN>
<SPAN class="comment token">// closetFirst: true</SPAN>
<SPAN class="comment token">// });</SPAN>
<SPAN class="comment token">// };</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>and again beginning at line 733:
<SPAN class="comment token">// var layer = this.map.getLayer(e.source._featureLayerId);</SPAN>
<SPAN class="comment token">// if (layer && this.config.showInfoWindowOnSelect) {</SPAN>
<SPAN class="comment token">// var gs = getGraphics(layer, e.result.feature.__attributes[layer.objectIdField]);</SPAN>
<SPAN class="comment token">// if (gs.length > 0) {</SPAN>
<SPAN class="comment token">// showPopupByFeatures(gs);</SPAN>
<SPAN class="comment token">// } else {</SPAN>
<SPAN class="comment token">// var handle = on(layer, 'update-end', lang.hitch(this, function() {</SPAN>
<SPAN class="comment token">// if (this.domNode) {</SPAN>
<SPAN class="comment token">// var gs = getGraphics(layer, e.result.feature.__attributes[layer.objectIdField]);</SPAN>
<SPAN class="comment token">// if (gs.length > 0) {</SPAN>
<SPAN class="comment token">// showPopupByFeatures(gs);</SPAN>
<SPAN class="comment token">// }</SPAN>
<SPAN class="comment token">// }</SPAN>
<SPAN class="comment token">// if (handle && handle.remove) {</SPAN>
<SPAN class="comment token">// handle.remove();</SPAN>
<SPAN class="comment token">// }</SPAN>
<SPAN class="comment token">// }));</SPAN>
<SPAN class="comment token">// this.own(handle);</SPAN>
<SPAN class="comment token">// }</SPAN>
<SPAN class="comment token">// }</SPAN>
<SPAN class="comment token">// publish select result to other widgets</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>Finally, I believe this new code at line 760 may be where the highlightSymbol graphic may be NOT drawing, but I can't be certain:
<SPAN class="comment token">// hide the graphic in map's default graphiclayer.</SPAN>
<SPAN class="keyword token">var</SPAN> _searchGL <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>searchDijit<SPAN class="punctuation token">.</SPAN>graphicsLayer <SPAN class="operator token">||</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>map<SPAN class="punctuation token">.</SPAN>graphics<SPAN class="punctuation token">;</SPAN>
_searchGL<SPAN class="punctuation token">.</SPAN>graphics<SPAN class="punctuation token">.</SPAN><SPAN class="token function">forEach</SPAN><SPAN class="punctuation token">(</SPAN>lang<SPAN class="punctuation token">.</SPAN><SPAN class="token function">hitch</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="keyword token">function</SPAN><SPAN class="punctuation token">(</SPAN>item<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>item <SPAN class="operator token">&&</SPAN> lang<SPAN class="punctuation token">.</SPAN><SPAN class="token function">getObject</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"_wabProperties.referToFeatureLayerId"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="keyword token">false</SPAN><SPAN class="punctuation token">,</SPAN> item<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="comment token">// this.searchDijit.clearGraphics();</SPAN>
_searchGL<SPAN class="punctuation token">.</SPAN><SPAN class="token function">remove</SPAN><SPAN class="punctuation token">(</SPAN>item<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN>
_attatchOriLayerId<SPAN class="punctuation token">:</SPAN> <SPAN class="keyword token">function</SPAN><SPAN class="punctuation token">(</SPAN>fs<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="comment token">// Summary: attatchOriLayerId _attatch original featureLayer's ID.</SPAN>
<SPAN class="comment token">// Condition:</SPAN>
<SPAN class="comment token">// 1. Search dijit of JSAPI create new graphic and add it to map's default graphicslayer</SPAN>
<SPAN class="comment token">// if no graphicslayer configured, map contains two same graphic at the same time.</SPAN>
<SPAN class="comment token">// 2. Attach original flayer's id as a property to graphic(map's default featurelayer),</SPAN>
<SPAN class="comment token">// WAB can create related records with .</SPAN>
<SPAN class="comment token">// fs is an array, it's item could be 'esri.Graphic' or 'dojo.deferred'</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>fs <SPAN class="operator token">&&</SPAN> fs<SPAN class="punctuation token">.</SPAN>length <SPAN class="operator token">&&</SPAN> fs<SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">.</SPAN>declaredClass <SPAN class="operator token">===</SPAN> <SPAN class="string token">"esri.Graphic"</SPAN> <SPAN class="operator token">&&</SPAN>
esriLang<SPAN class="punctuation token">.</SPAN><SPAN class="token function">isDefined</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_currentSelectSourceIdx<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="comment token">// iterator every item</SPAN>
fs<SPAN class="punctuation token">.</SPAN><SPAN class="token function">forEach</SPAN><SPAN class="punctuation token">(</SPAN>lang<SPAN class="punctuation token">.</SPAN><SPAN class="token function">hitch</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="keyword token">function</SPAN><SPAN class="punctuation token">(</SPAN>item<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="comment token">// only type 'esri.Graphic'</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>item<SPAN class="punctuation token">.</SPAN>declaredClass <SPAN class="operator token">===</SPAN> <SPAN class="string token">"esri.Graphic"</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="comment token">// original featurelayer id</SPAN>
<SPAN class="keyword token">var</SPAN> _featureLayerId <SPAN class="operator token">=</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>searchDijit<SPAN class="punctuation token">.</SPAN>sources<SPAN class="punctuation token">[</SPAN><SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>_currentSelectSourceIdx<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">.</SPAN>_featureLayerId<SPAN class="punctuation token">;</SPAN>
<SPAN class="comment token">// get original featurelayer if exists.</SPAN>
<SPAN class="keyword token">var</SPAN> layer <SPAN class="operator token">=</SPAN> _featureLayerId <SPAN class="operator token">&&</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>layerInfosObj<SPAN class="punctuation token">.</SPAN><SPAN class="token function">getLayerInfoById</SPAN><SPAN class="punctuation token">(</SPAN>_featureLayerId<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="comment token">// if original featurelayer added to map</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>layer <SPAN class="operator token">&&</SPAN> <SPAN class="keyword token">this</SPAN><SPAN class="punctuation token">.</SPAN>config<SPAN class="punctuation token">.</SPAN>showInfoWindowOnSelect<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="comment token">// attatch original featurelayer's ID to this feature</SPAN>
lang<SPAN class="punctuation token">.</SPAN><SPAN class="token function">setObject</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">"_wabProperties.referToFeatureLayerId"</SPAN><SPAN class="punctuation token">,</SPAN> _featureLayerId<SPAN class="punctuation token">,</SPAN> item<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>So if anyone has any suggestions as to where I can add/remove or otherwise comment code in order to be able to draw a custom highlight upon a result selection that would certainly help, because I just can't see it.
As an fyi I did not see any other changes to any other js or json files contained with the Search. The only changes appear to be in the Widget.js
Thanks,
David