@@ -67,7 +67,6 @@ public MainForm()
6767 Text = Updater . ApplicationTitle ;
6868 Icon = Icon . ExtractAssociatedIcon ( Updater . CurrentFileLocation ) ;
6969 portableModeMenuItem . Checked = _settings . IsPortable ;
70- resetOnPowerChangedMenuItem . Checked = _settings . GetValue ( "resetOnPowerChangedMenuItem" , false ) ;
7170
7271 // make sure the buffers used for double buffering are not disposed
7372 // after each draw call
@@ -442,7 +441,7 @@ public MainForm()
442441 FormClosed += CloseApplication ;
443442 // Make sure the settings are saved when the user logs off
444443 Microsoft . Win32 . SystemEvents . SessionEnded += ( _ , _ ) => CloseApplication ( null , EventArgs . Empty ) ;
445- Microsoft . Win32 . SystemEvents . PowerModeChanged += PowerModeChanged ;
444+ // Microsoft.Win32.SystemEvents.PowerModeChanged += PowerModeChanged;
446445 }
447446
448447 private void StopFileHardwareMenuFromClosing ( object sender , ToolStripDropDownClosingEventArgs e )
@@ -474,18 +473,14 @@ private void BackgroundUpdater_DoWork(object sender, DoWorkEventArgs e)
474473
475474 private void PowerModeChanged ( object sender , Microsoft . Win32 . PowerModeChangedEventArgs eventArgs )
476475 {
477- if ( eventArgs . Mode == Microsoft . Win32 . PowerModes . Resume || resetOnPowerChangedMenuItem . Checked )
476+ if ( eventArgs . Mode == Microsoft . Win32 . PowerModes . Resume && _computer . IsBatteryEnabled )
478477 {
479- _computer . Reset ( ) ;
478+ _computer . IsBatteryEnabled = false ;
479+ _computer . IsBatteryEnabled = true ;
480+ //_computer.Reset();
480481 }
481482 }
482483
483- private void ResetOnPowerChangedMenuItem_Click ( object sender , EventArgs eventArgs )
484- {
485- resetOnPowerChangedMenuItem . Checked = ! resetOnPowerChangedMenuItem . Checked ;
486- _settings . SetValue ( "resetOnPowerChangedMenuItem" , resetOnPowerChangedMenuItem . Checked ) ;
487- }
488-
489484 private void InitializeTheme ( )
490485 {
491486 mainMenu . Renderer = new ThemedToolStripRenderer ( ) ;
@@ -535,14 +530,10 @@ private void HardwareAdded(IHardware hardware)
535530
536531 private void HardwareRemoved ( IHardware hardware )
537532 {
538- List < HardwareNode > nodesToRemove = new ( ) ;
539- foreach ( Node node in _root . Nodes )
540- {
541- if ( node is HardwareNode hardwareNode && hardwareNode . Hardware == hardware )
542- nodesToRemove . Add ( hardwareNode ) ;
543- }
544-
545- foreach ( HardwareNode hardwareNode in nodesToRemove )
533+ var nodesToRemove = _root . Nodes
534+ . Where ( node => node is HardwareNode hardwareNode && hardwareNode . Hardware == hardware )
535+ . ToArray ( ) ;
536+ foreach ( var hardwareNode in nodesToRemove )
546537 {
547538 _root . Nodes . Remove ( hardwareNode ) ;
548539 }
0 commit comments