smartdevicelink / sdl_evolution

Tracking and proposing changes to SDL's public APIs.
https://smartdevicelink.github.io/sdl_evolution/
BSD 3-Clause "New" or "Revised" License
33 stars 122 forks source link

Revise SDL-0334 - Transform SetDisplayLayout requests into UI.Show for HMIs #1145

Closed ShobhitAd closed 3 years ago

ShobhitAd commented 3 years ago

Introduction

This is a revision to an accepted, but not yet implemented proposal. The suggested revision is to remove the deprecated UI.SetDisplayLayout RPC from the HMI_API.

Motivation

The original proposal requires core to transform all incoming mobile SetDisplayLayout requests to UI.Show requests to be forwarded to the HMI. Since core will no longer send UI.SetDisplayLayout requests to the HMI, the RPC can be removed from HMI_API spec.

Proposed Solution

The proposed solution is to remove the deprecated SetDisplayLayout RPC from the HMI_API.

...
-  <function name="SetDisplayLayout" messagetype="request">
-    <description>This RPC is deprecated. Use Show RPC to change layout.</description>
-    <param name="displayLayout" type="String" maxlength="500" mandatory="true">
-      <description>
-        Predefined or dynamically created screen layout.
-        Currently only predefined screen layouts are defined.
-      </description>
-    </param>
-    <param name="appID" type="Integer" mandatory="true">
-      <description>ID of application related to this RPC.</description>
-    </param>
-    <param name="dayColorScheme" type="Common.TemplateColorScheme" mandatory="false"></param>
-    <param name="nightColorScheme" type="Common.TemplateColorScheme" mandatory="false"></param>
-  </function>

-  <function name="SetDisplayLayout" messagetype="response">
-    <description>This RPC is deprecated. Use Show RPC to change layout.</description>
-    <param name="displayCapabilities" type="Common.DisplayCapabilities" mandatory="false">
-      <description>See DisplayCapabilities</description>
-    </param>
-    <param name="buttonCapabilities" type="Common.ButtonCapabilities" minsize="1" maxsize="100" array="true" mandatory="false">
-      <description>See ButtonCapabilities</description >
-    </param>
-    <param name="softButtonCapabilities" type="Common.SoftButtonCapabilities" minsize="1" maxsize="100" array="true" mandatory="false">
-      <description>If returned, the platform supports on-screen SoftButtons; see SoftButtonCapabilities.</description >
-    </param>
-    <param name="presetBankCapabilities" type="Common.PresetBankCapabilities" mandatory="false">
-      <description>If returned, the platform supports custom on-screen Presets; see PresetBankCapabilities.</description >
-    </param>
-  </function>
...

Potential Downsides

The author does not foresee any potential downsides.

Impact On Existing Code

Only removes the RPC from HMI_API.xml. No changes are required on the mobile side.

ShobhitAd commented 3 years ago

@theresalech Ready for review