diff --git a/VoidLink/HostCardView.m b/VoidLink/HostCardView.m index 061394de..5b130af8 100644 --- a/VoidLink/HostCardView.m +++ b/VoidLink/HostCardView.m @@ -522,6 +522,7 @@ static const float REFRESH_CYCLE = 2.0f; backgroundLayer.hidden = !(host.state == StateOnline && host.pairState == PairStatePaired); BOOL hostPaired = host.pairState == PairStatePaired; + bool hasValidMac = host.mac != nil && ![host.mac isEqualToString:@"00:00:00:00:00:00"]; switch (host.state) { case StateOnline: @@ -628,8 +629,8 @@ static const float REFRESH_CYCLE = 2.0f; } else { // Fallback on earlier versions } - self.wakeupButton.backgroundColor = hostPaired ? [ThemeManager textTintColorWithAlpha] : [[ThemeManager textColorGray] colorWithAlphaComponent:0.2]; - [self.wakeupButton setTitleColor: hostPaired ? defaultBlue : [ThemeManager textColorGray] forState:UIControlStateNormal]; + self.wakeupButton.backgroundColor = hasValidMac ? [ThemeManager textTintColorWithAlpha] : [[ThemeManager textColorGray] colorWithAlphaComponent:0.2]; + [self.wakeupButton setTitleColor: hasValidMac ? defaultBlue : [ThemeManager textColorGray] forState:UIControlStateNormal]; break; default:break; } diff --git a/VoidLink/ViewControllers/MainFrameViewController.m b/VoidLink/ViewControllers/MainFrameViewController.m index 1394bd0f..3f067a41 100644 --- a/VoidLink/ViewControllers/MainFrameViewController.m +++ b/VoidLink/ViewControllers/MainFrameViewController.m @@ -409,10 +409,13 @@ static NSMutableSet* hostList; - (void)wakeupButtonTappedForHost:(TemporaryHost *)host{ _selectedHost = host; - if ((host.state == StateOffline || host.state == StateUnknown) && host.pairState == PairStatePaired) { + bool hasValidMac = host.mac != nil && ![host.mac isEqualToString:@"00:00:00:00:00:00"]; + + if ((host.state == StateOffline || host.state == StateUnknown)) { UIAlertController* wolAlert = [UIAlertController alertControllerWithTitle:[LocalizationHelper localizedStringForKey:@"Wake-On-LAN"] message:@"" preferredStyle:UIAlertControllerStyleAlert]; [wolAlert addAction:[UIAlertAction actionWithTitle:[LocalizationHelper localizedStringForKey:@"Ok"] style:UIAlertActionStyleDefault handler:nil]]; - if (host.mac == nil || [host.mac isEqualToString:@"00:00:00:00:00:00"]) { + + if (!hasValidMac) { wolAlert.message = [LocalizationHelper localizedStringForKey: @"Host MAC unknown, unable to send WOL Packet"]; } else { dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{