diff options
author | Kujtim Shala <kshala@ford.com> | 2019-09-09 16:44:16 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-09 16:44:16 +0200 |
commit | bf727a48873096afcd8f08e55d7b194ee6a0f639 (patch) | |
tree | 1696e4ded6a58911ac15f3a6e6af90efdee95730 | |
parent | 5af489c8823de930df19b0949eff11f178245a7b (diff) | |
download | sdl_ios-bf727a48873096afcd8f08e55d7b194ee6a0f639.tar.gz |
Apply suggestions from code review
Co-Authored-By: Joel Fischer <joeljfischer@gmail.com>
-rwxr-xr-x | SmartDeviceLink/SDLSystemCapability.h | 2 | ||||
-rw-r--r-- | SmartDeviceLink/SDLSystemCapabilityManager.h | 4 | ||||
-rw-r--r-- | SmartDeviceLink/SDLSystemCapabilityManager.m | 34 |
3 files changed, 20 insertions, 20 deletions
diff --git a/SmartDeviceLink/SDLSystemCapability.h b/SmartDeviceLink/SDLSystemCapability.h index 283f35667..f0ac7b2d8 100755 --- a/SmartDeviceLink/SDLSystemCapability.h +++ b/SmartDeviceLink/SDLSystemCapability.h @@ -69,7 +69,7 @@ NS_ASSUME_NONNULL_BEGIN /** Convenience init for DisplayCapability list - @param capabilities Contain the display related information and all windows related to that display + @param capabilities Contains capabilities related to a physical screen and any associated windows @return A SDLSystemCapability object */ - (instancetype)initWithDisplayCapabilities:(NSArray<SDLDisplayCapability *> *)capabilities; diff --git a/SmartDeviceLink/SDLSystemCapabilityManager.h b/SmartDeviceLink/SDLSystemCapabilityManager.h index 109b34efb..7eedb7025 100644 --- a/SmartDeviceLink/SDLSystemCapabilityManager.h +++ b/SmartDeviceLink/SDLSystemCapabilityManager.h @@ -269,7 +269,7 @@ typedef void (^SDLCapabilityUpdateHandler)(SDLSystemCapability *capability); - (void)unsubscribeFromCapabilityType:(SDLSystemCapabilityType)type withObserver:(id)observer; /** - * Returns the window capability object of the primary display with the specified window ID. This method is a convenient method to easily access capabilities of windows for instance widget windows. + * Returns the window capability object of the primary display with the specified window ID. This is a convenient method to easily access capabilities of windows for instance widget windows of the main display. * * @param windowID The ID of the window to get capabilities * @returns The window capability object representing the window capabilities of the window with the specified window ID or nil if the window is not known or no window capabilities exist. @@ -277,7 +277,7 @@ typedef void (^SDLCapabilityUpdateHandler)(SDLSystemCapability *capability); - (nullable SDLWindowCapability *)windowCapabilityWithWindowID:(NSUInteger)windowID; /** - * Returns the window capability object of the default main window which is always pre-created by the connected system. This method is a convenient method to easily access capabilities of the default main window. + * Returns the window capability object of the default main window which is always pre-created by the connected system. This is a convenience method for easily accessing the capabilities of the default main window. * * @returns The window capability object representing the default main window capabilities or nil if no window capabilities exist. */ diff --git a/SmartDeviceLink/SDLSystemCapabilityManager.m b/SmartDeviceLink/SDLSystemCapabilityManager.m index 20bf167c5..050ecb580 100644 --- a/SmartDeviceLink/SDLSystemCapabilityManager.m +++ b/SmartDeviceLink/SDLSystemCapabilityManager.m @@ -173,7 +173,7 @@ typedef NSString * SDLServiceID; SDLRegisterAppInterfaceResponse *response = (SDLRegisterAppInterfaceResponse *)notification.response; if (!response.success.boolValue) { return; } - self.convertDeprecatedDisplayCapabilitiesNeeded = YES; // reset the flag + self.convertDeprecatedDisplayCapabilitiesNeeded = YES; self.displays = [self sdl_createDisplayCapabilityListFromRegisterResponse:response]; #pragma clang diagnostic push @@ -272,6 +272,7 @@ typedef NSString * SDLServiceID; if (capabilities == nil || capabilities.count == 0) { return nil; } + SDLDisplayCapability *display = capabilities[0]; for (SDLWindowCapability *windowCapability in display.windowCapabilities) { if (windowCapability.windowID.unsignedIntegerValue == windowID) { @@ -287,7 +288,6 @@ typedef NSString * SDLServiceID; - (NSArray<SDLDisplayCapability *> *)sdl_createDisplayCapabilityList:(SDLDisplayCapabilities *)display buttons:(NSArray<SDLButtonCapabilities *> *)buttons softButtons:(NSArray<SDLSoftButtonCapabilities *> *)softButtons { // Based on deprecated Display capabilities we don't know if widgets are supported, - // The Default MAIN window is the only window we know is supported SDLWindowTypeCapabilities *windowTypeCapabilities = [[SDLWindowTypeCapabilities alloc] initWithType:SDLWindowTypeMain maximumNumberOfWindows:1]; SDLDisplayCapability *displayCapability = [[SDLDisplayCapability alloc] initWithDisplayName:(display ? display.displayName: nil)]; @@ -296,8 +296,8 @@ typedef NSString * SDLServiceID; // Create a window capability object for the default MAIN window SDLWindowCapability *defaultWindowCapability = [[SDLWindowCapability alloc] init]; defaultWindowCapability.windowID = @(SDLPredefinedWindowsDefaultWindow); - defaultWindowCapability.buttonCapabilities = buttons.copy; - defaultWindowCapability.softButtonCapabilities = softButtons.copy; + defaultWindowCapability.buttonCapabilities = [buttons copy]; + defaultWindowCapability.softButtonCapabilities = [softButtons copy]; // return if display capabilities don't exist. if (display == nil) { @@ -305,11 +305,11 @@ typedef NSString * SDLServiceID; return @[displayCapability]; } - // copy all available display capabilities - defaultWindowCapability.templatesAvailable = display.templatesAvailable.copy; - defaultWindowCapability.numCustomPresetsAvailable = display.numCustomPresetsAvailable.copy; - defaultWindowCapability.textFields = display.textFields.copy; - defaultWindowCapability.imageFields = display.imageFields.copy; + // Copy all available display capability properties + defaultWindowCapability.templatesAvailable = [display.templatesAvailable copy]; + defaultWindowCapability.numCustomPresetsAvailable = [display.numCustomPresetsAvailable copy]; + defaultWindowCapability.textFields = [display.textFields copy]; + defaultWindowCapability.imageFields = [display.imageFields copy]; if (display.graphicSupported.boolValue) { defaultWindowCapability.imageTypeSupported = @[SDLImageTypeStatic, SDLImageTypeDynamic]; @@ -339,8 +339,8 @@ typedef NSString * SDLServiceID; convertedCapabilities.displayType = SDLDisplayTypeGeneric; //deprecated but it is mandatory... #pragma clang diagnostic pop convertedCapabilities.displayName = displayName; - convertedCapabilities.textFields = windowCapability.textFields.copy; - convertedCapabilities.imageFields = windowCapability.imageFields.copy; + convertedCapabilities.textFields = [windowCapability.textFields copy]; + convertedCapabilities.imageFields = [windowCapability.imageFields copy]; convertedCapabilities.templatesAvailable = windowCapability.templatesAvailable; convertedCapabilities.numCustomPresetsAvailable = windowCapability.numCustomPresetsAvailable; convertedCapabilities.mediaClockFormats = @[SDLMediaClockFormatClock3]; // mandatory field... @@ -357,8 +357,8 @@ typedef NSString * SDLServiceID; return; } - // cover the deprecated capabilities for backward compatibility - self.displayCapabilities = [self sdl_createDisplayCapabilitiesWithDisplayName:self.displays[0].displayName windowCapability:defaultMainWindowCapabilities]; + // Create the deprecated capabilities for backward compatibility if developers try to access them + self.displayCapabilities = [self sdl_createDisplayCapabilitiesWithDisplayName:self.displays.firstObject.displayName windowCapability:defaultMainWindowCapabilities]; self.buttonCapabilities = defaultMainWindowCapabilities.buttonCapabilities; self.softButtonCapabilities = defaultMainWindowCapabilities.softButtonCapabilities; } @@ -372,10 +372,10 @@ typedef NSString * SDLServiceID; return; } - SDLDisplayCapability *oldDefaultDisplayCapabilities = oldCapabilities[0]; - NSMutableArray<SDLWindowCapability *> *copyWindowCapabilities = oldDefaultDisplayCapabilities.windowCapabilities.mutableCopy; + SDLDisplayCapability *oldDefaultDisplayCapabilities = oldCapabilities.firstObject; + NSMutableArray<SDLWindowCapability *> *copyWindowCapabilities = [oldDefaultDisplayCapabilities.windowCapabilities mutableCopy]; - SDLDisplayCapability *newDefaultDisplayCapabilities = newCapabilities[0]; + SDLDisplayCapability *newDefaultDisplayCapabilities = newCapabilities.firstObject; NSArray<SDLWindowCapability *> *newWindowCapabilities = newDefaultDisplayCapabilities.windowCapabilities; for (SDLWindowCapability *newWindow in newWindowCapabilities) { @@ -395,7 +395,7 @@ typedef NSString * SDLServiceID; } // replace the window capabilities array with the merged one. - newDefaultDisplayCapabilities.windowCapabilities = copyWindowCapabilities.copy; + newDefaultDisplayCapabilities.windowCapabilities = [copyWindowCapabilities copy]; self.displays = @[newDefaultDisplayCapabilities]; [self sdl_updateDeprecatedDisplayCapabilities]; } |