-
Notifications
You must be signed in to change notification settings - Fork 43
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
Feature/sdl 0189 restructuring on reset timeout #575
Feature/sdl 0189 restructuring on reset timeout #575
Conversation
- Basic implementation of ResetTimeoutPopUp
- Updated ALertManeuverPopUp model - Updated AlertPopUp model - Updated SubtleAlertPopUp model - Updated TTSPopUp model
Updated RPC models
Updated InteractionChoicesView Models for PI requests
Added reset timeout input field
- Updated ScrollableMessage Model - Updated SliderView model
Minor fixes
Reset timeout to default if value in input field is out of bound
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.
More changes are needed as per this SDL_Core
comment: smartdevicelink/sdl_core#3726 (comment)
@ValeriiMalkov , @LitvinenkoIra - Please let me know when the PR is ready to be reviewed again after above mentioned changes. |
All required changes have been provided in 99c82a9 |
@theresalech This PR is ready for Livio review. Thank you! |
When UI interactions are deactivated for reason other than timeout, they must be removed from |
Many components had their "timeout timers" moved to the ResetTimeoutPopup component like this:
But many of these same components still have a "timer" that seems to be for timeout in the components themselves. These duplicate timers should be removed. |
It will be common for apps to have multiple pending requests at the same time. The
|
I recommend consolidating the objects indexed by
And it may be easier to use in code like this:
There are two reasons:
|
Where applicable, it would be much easier to follow these changes if the code for setting up the timeout callbacks was placed within interaction components. For example, I believe all the changes from |
Please merge in develop and feel free to message me on slack if you have any questions! |
Note that this is a significant refactoring and it will require a full testing cycle. |
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.
There is one comment above that I think was missed: #575 (comment)
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.
Updates look great, thank you for the quick responses.
app/view/sdl/ResetTimeoutPopUp.js
Outdated
this.resetTimeoutRPCs[requestID].callback(); | ||
document.getElementById(this.resetTimeoutRPCs[requestID].method + 'checkBox').disabled = true; | ||
} else { | ||
if(TIME_OUT_EXPIRATION_SECONDS === this.resetTimeoutRPCs[requestID].timeoutSeconds) { |
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.
This is checked when the key is added to timeoutExpired
, i think this check is redundant.
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.
Removed timeout decrement. Currently this logic implemented the SDL side
@iCollin Implemented according a comment in commit e9d199d |
It seems resetting the timeout for |
If an app sends a ScrollableMessage with a timeout of 50000ms, and then clicks the scroll bar to scroll down after say 10 seconds, the SDL HMI will send an OnResetTimeout(resetPeriod=10000ms), essentially now shortening the timeout of the ScrollableMessage to 20000ms. To solve this we could add a line like this to the object created in
And then check for this value when resetting the timeout. |
Added originalTimeout value to exclude case when the reset period is less than requested timeout
@iCollin Implemented in commit 22d6fb1 |
@ValeriiMalkov Keep context soft buttons are not resetting the timeout. Cases for some UI Components need to be re-added to |
|
Implements #376
This PR is [ready] for review.
Testing Plan
0189_Restructuring OnResetTimeout_HMI_instruction.xlsx
Summary
The ability to send OnResetTimeout for RPS with different interfaces has been added.
CLA