-
Notifications
You must be signed in to change notification settings - Fork 103
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
2093 - Soft button manager image upload fix #2094
2093 - Soft button manager image upload fix #2094
Conversation
* Soft button manager will now only upload soft button images if the `RAIR.displayCapabilities.graphicSupported` bool is `NO`
* Fix soft button images not working with head units that don't send `displayCapabilities` (intra-PR fix)
Codecov Report
@@ Coverage Diff @@
## develop #2094 +/- ##
===========================================
- Coverage 85.38% 85.35% -0.03%
===========================================
Files 447 447
Lines 22598 22646 +48
===========================================
+ Hits 19295 19330 +35
- Misses 3303 3316 +13 |
* Fix soft button operation not supporting text and static image soft buttons after the dynamic image fix
* Add tests for static only capabilities
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
iOS App: SmokeTester
SDL Version: Branch Develop
SYNC Version: 2.0
BUG #1
If we send 2 softButtons, one with a staticImage and the other with a dynamicImage to screenManager.softButtonObjects
both buttons will not be displayed on HMI.
STEPS:
1.Send [softButtonWithStaticImageA, softButtonWithDynamicImageA].
Expected Behavior:
Both buttons displayed on HMI.
Observed Behavior:
No buttons displayed.
BUG #2
If we send 1 softButton with a dynamicImage to screenManager.softButtonObjects
, button will not be displayed on HMI.
STEPS:
1.Send [softButtonWithDynamicImageA].
Expected Behavior:
Button displayed on HMI.
Observed Behavior:
No button displayed.
BUG #3
If we send 1 softButton that has 2 or more states, where every state contain a staticImage to screenManager.softButtonObjects
, button will not be displayed on HMI.
STEPS:
1.Send [softButtonWithStaticImageAnd2States].
Expected Behavior:
Button displayed on HMI.
Observed Behavior:
No button displayed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Update var graphicsEnabled
-> isDynamicGraphicSupported
, to align with the java suite PR.
I suggested the changes where the var is defined, the remaining changes should be noticeable when xcode flags the errors for using an unknown var
* Change `graphicsEnabled` name to `dynamicGraphicSupported` to match Android lib
Fixes #2093
Risk
This PR makes no API changes.
Testing Plan
Unit Tests
Unit test added for
softButtonCapabilities.imageSupported = YES
anddisplayCapabilities.graphicEnabled = NO
, as well as visa-versa.Core Tests
Tested that existing behavior continues to
Core version / branch / commit hash / module tested against: Sync 3.4 TDK (19353_DEVTEST)
HMI name / version / branch / commit hash / module tested against: Sync 3.4 TDK (19353_DEVTEST)
Summary
This PR works around a bug when connecting to Sync 2.0 head units that causes the app to attempt to upload soft button images that will never work. This wastes bandwidth and time.
The issues happens because Sync 2.0 doesn't support
softButtonCapabilities
, so the library assumes all capabilities are available. However, Sync 2.0 does report that all graphics are unsupported inRAIR.displayCapabilities.graphicSupported
.Changelog
Bug Fixes
Tasks Remaining:
n/a
CLA