Update the call composer capability if user setting changes in IMS

Test: Treehugger
Bug: 173437870
Change-Id: If0ef303390df2d9ed720fbd018be905c23b0c1aa
Merged-In: If0ef303390df2d9ed720fbd018be905c23b0c1aa
(cherry picked from commit 284ae75ff474d4a8d78aec42abe1412f0630205c)
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index a831e94..b8f87ea 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -6536,9 +6536,13 @@
                 if (defaultPhone != null && defaultPhone.getPhoneType() == PHONE_TYPE_IMS) {
                     ImsPhone imsPhone = (ImsPhone) defaultPhone;
                     imsPhone.setCallComposerStatus(status);
+                    ImsManager.getInstance(mApp, getSlotIndexOrException(subId))
+                            .updateImsServiceConfig();
                 }
             }
-        } finally {
+        } catch (ImsException e) {
+            throw new ServiceSpecificException(e.getCode());
+        }  finally {
             Binder.restoreCallingIdentity(identity);
         }
     }