There's a few kinds of autorefresh, but you can address this particular problem no matter which one you're using.
1) If you're using refresh=300 or the like, up in the <view> tag at the top of the page, well this will simply refresh the whole page every N seconds. So the page will return to its initial state and any selections will be removed.
However, if at the top of the xml hierarchy you have a Sideview URLLoader module, and furthermore if you have set <param name="keepURLUpdated">True</param> then whenever the Pulldown's selection (or any other sideview form element module) is changed, the URL will update to reflect that selection. Then when refresh=300 comes along, those explicit selection states will be reloaded. There is a page of docs dedicated to this param in URLLoader and you'll find it at "Key Techniques > Enabling the Back Button".
2) If you're using the Sideview AutoRefresh module instead, then you aren't really subject to this problem in the first place. By default the AutoRefresh module works by just refreshing the modules downstream from it, every N seconds. But by doing this without reloading the page, selection states in all those downstream modules are preserved. I recommend using the AutoRefresh module, just because it's a more precise tool and reduces a lot of unwanted flashing that comes from reloading the entire page.
UPDATE.
I took the liberty of taking your posted XML from your update and updating it below. The biggest problem with the XML was that you had nested an autoRun="True" module inside another autoRun="True" module, and that often results in a buggy UI. When you see "AutoRun" read it as "start pushing data downstream from this point when the page loads", and it'll be more clear why you never want one such point downstream from another.
Other minor things in the edited XML below - Gimp module does nothing in advanced xml so I removed it. Likewise HiddenFieldPicker wasn't doing anything so I removed it. Also since the ValueSetter module can set any key rather than just "charting.*" keys, I recommend using ValueSetter over HiddenChartFormatter. And lastly the value of "autoCancelInterval" was the default value so I removed it.
<view isVisible="true" onunloadCancelJobs="true" refresh="90" template="dashboard.html">
<label>Line Resources Overview</label>
<module name="SideviewUtils" layoutPanel="appHeader" />
<module name="AppBar" layoutPanel="navigationHeader"/>
<module name="TitleBar" layoutPanel="viewHeader">
<param name="showActionsMenu">False</param>
</module>
<module name="Message" layoutPanel="navigationHeader">
<param name="filter">splunk.search.job</param>
<param name="clearOnJobDispatch">True</param>
<param name="maxSize">1</param>
<param name="level">warn</param>
</module>
<module name="URLLoader" layoutPanel="appHeader" autoRun="True">
<param name="keepURLUpdated" >True</param>
<module name="Pulldown" layoutPanel="viewHeader">
<param name="name">selectedLine</param>
<param name="label">Line</param>
<param name="float">left</param>
<param name="staticOptions">
<list>
<param name="label">E1</param>
<param name="value">e1</param>
</list>
<list>
<param name="label">D1</param>
<param name="value">d1</param>
</list>
<list>
<param name="label">D2</param>
<param name="value">d2</param>
</list>
</param>
<module name="Pulldown" layoutPanel="viewHeader">
<param name="name">selectedType</param>
<param name="label">Type</param>
<param name="float">left</param>
<param name="staticOptions">
<list>
<param name="label">Apache</param>
<param name="value">w</param>
</list>
<list>
<param name="label">Tomcat</param>
<param name="value">t</param>
</list>
<list>
<param name="label">SysEng</param>
<param name="value">sys</param>
</list>
</param>
<module name="Search" layoutPanel="panel_row1_col1" group="Load Average (1m)">
<param name="search">'LRO_load_average($selectedLine$,$selectedType$)'</param>
<module name="ValueSetter">
<param name="arg.charting.chart">line</param>
<param name="arg.charting.legend.placement">right</param>
<param name="arg.charting.axisTitleX">none</param>
<param name="arg.charting.axisTitleY">none</param>
<param name="arg.charting.chart.nullValueMode">connect</param>
<param name="arg.charting.layout.splitSeries">false</param>
<module name="FlashChart">
<param name="width">100%</param>
<module name="ConvertToDrilldownSearch">
<module name="ViewRedirector">
<param name="viewTarget">flashtimeline</param>
</module>
</module>
</module>
<module name="ViewRedirectorLink">
<param name="viewTarget">flashtimeline</param>
</module>
</module>
</module>
</module>
</module>
</module>
</view>
... View more