diff options
author | Joel Fischer <joeljfischer@gmail.com> | 2019-09-30 10:57:00 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-30 10:57:00 -0400 |
commit | 86dac92214a927f3ca9f0dbf451810c0e9038a77 (patch) | |
tree | fd6ab570a3adec2b1ddbe46bad1ed4af0149c5b2 | |
parent | 50cd95a53f9aad8c9ac20cb3fe844a12d6f84885 (diff) | |
parent | 1ecc597fe0c06a97f2fe416bb0570c1d652fb834 (diff) | |
download | sdl_ios-86dac92214a927f3ca9f0dbf451810c0e9038a77.tar.gz |
Merge pull request #1405 from smartdevicelink/bug/issue-1404-SliderScrollableNotSupportedAlert
Slider/Scrollable Message Alert if unsupported
-rw-r--r-- | Example Apps/Example ObjC/MenuManager.m | 14 | ||||
-rw-r--r-- | Example Apps/Example Swift/MenuManager.swift | 16 |
2 files changed, 24 insertions, 6 deletions
diff --git a/Example Apps/Example ObjC/MenuManager.m b/Example Apps/Example ObjC/MenuManager.m index 44adcc223..fc97ceb24 100644 --- a/Example Apps/Example ObjC/MenuManager.m +++ b/Example Apps/Example ObjC/MenuManager.m @@ -135,14 +135,22 @@ NS_ASSUME_NONNULL_BEGIN + (SDLMenuCell *)sdlex_sliderMenuCellWithManager:(SDLManager *)manager { return [[SDLMenuCell alloc] initWithTitle:ACSliderMenuName icon:nil voiceCommands:@[ACSliderMenuName] handler:^(SDLTriggerSource _Nonnull triggerSource) { SDLSlider *sliderRPC = [[SDLSlider alloc] initWithNumTicks:3 position:1 sliderHeader:@"Select a letter" sliderFooters:@[@"A", @"B", @"C"] timeout:10000]; - [manager sendRequest:sliderRPC]; + [manager sendRequest:sliderRPC withResponseHandler:^(__kindof SDLRPCRequest * _Nullable request, __kindof SDLRPCResponse * _Nullable response, NSError * _Nullable error) { + if(![response.resultCode isEqualToEnum:SDLResultSuccess]) { + [manager sendRequest:[AlertManager alertWithMessageAndCloseButton:@"Slider could not be displayed" textField2:nil iconName:nil]]; + } + }]; }]; } + (SDLMenuCell *)sdlex_scrollableMessageMenuCellWithManager:(SDLManager *)manager { return [[SDLMenuCell alloc] initWithTitle:ACScrollableMessageMenuName icon:nil voiceCommands:@[ACScrollableMessageMenuName] handler:^(SDLTriggerSource _Nonnull triggerSource) { - SDLScrollableMessage *messageRPC = [[SDLScrollableMessage alloc] initWithMessage:@"This is a scrollable message\nIt can contain many lines" timeout:10000 softButtons:nil]; - [manager sendRequest:messageRPC]; + SDLScrollableMessage *messageRPC = [[SDLScrollableMessage alloc] initWithMessage:@"This is a scrollable message\nIt can contain many lines" timeout:10000 softButtons:nil cancelID:5]; + [manager sendRequest:messageRPC withResponseHandler:^(__kindof SDLRPCRequest * _Nullable request, __kindof SDLRPCResponse * _Nullable response, NSError * _Nullable error) { + if(![response.resultCode isEqualToEnum:SDLResultSuccess]) { + [manager sendRequest:[AlertManager alertWithMessageAndCloseButton:@"Scrollable Message could not be displayed" textField2:nil iconName:nil]]; + } + }]; }]; } diff --git a/Example Apps/Example Swift/MenuManager.swift b/Example Apps/Example Swift/MenuManager.swift index 7cd5dd9de..bb7c5cb20 100644 --- a/Example Apps/Example Swift/MenuManager.swift +++ b/Example Apps/Example Swift/MenuManager.swift @@ -179,15 +179,25 @@ private extension MenuManager { private class func sliderMenuCell(with manager: SDLManager) -> SDLMenuCell { return SDLMenuCell(title: ACSliderMenuName, icon: nil, voiceCommands: [ACSliderMenuName], handler: { _ in - let slider = SDLSlider(numTicks: 3, position: 1, sliderHeader: "Select a letter", sliderFooters: ["A", "B", "C"], timeout: 10000) - manager.send(slider) + let slider = SDLSlider(numTicks: 3, position: 1, sliderHeader: "Select a letter", sliderFooters: ["A", "B", "C"], timeout: 3000) + manager.send(request: slider, responseHandler: { (request, response, error) in + guard let response = response, response.resultCode == .success else { + manager.send(AlertManager.alertWithMessageAndCloseButton("Slider could not be displayed")) + return + } + }) }) } private class func scrollableMessageMenuCell(with manager: SDLManager) -> SDLMenuCell { return SDLMenuCell(title: ACScrollableMessageMenuName, icon: nil, voiceCommands: [ACScrollableMessageMenuName], handler: { _ in let scrollableMessage = SDLScrollableMessage(message: "This is a scrollable message\nIt can contain many lines", timeout: 10000, softButtons: nil) - manager.send(scrollableMessage) + manager.send(request: scrollableMessage, responseHandler: { (request, response, error) in + guard let response = response, response.resultCode == .success else { + manager.send(AlertManager.alertWithMessageAndCloseButton("Scrollable could not be displayed")) + return + } + }) }) } } |