NoMan: Allow SysUI to register as listener

Expand ACL of INotificationManger.registerListener() from
system only to system or SysUI.

Also call onListenerConnected() on listeners connected via
INotificationManger.registerListener().

Bug: 15131411
Change-Id: I8f2ce34325ad72c7740b383de2ebb9fb88dea5d3
diff --git a/services/core/java/com/android/server/notification/ManagedServices.java b/services/core/java/com/android/server/notification/ManagedServices.java
index 584145f..b94ea62 100644
--- a/services/core/java/com/android/server/notification/ManagedServices.java
+++ b/services/core/java/com/android/server/notification/ManagedServices.java
@@ -175,7 +175,10 @@
 
     public void registerService(IInterface service, ComponentName component, int userid) {
         checkNotNull(service);
-        registerServiceImpl(service, component, userid);
+        ManagedServiceInfo info = registerServiceImpl(service, component, userid);
+        if (info != null) {
+            onServiceAdded(info);
+        }
     }
 
     /**
@@ -464,7 +467,7 @@
         }
     }
 
-    private void registerServiceImpl(final IInterface service,
+    private ManagedServiceInfo registerServiceImpl(final IInterface service,
             final ComponentName component, final int userid) {
         synchronized (mMutex) {
             try {
@@ -472,10 +475,12 @@
                         true /*isSystem*/, null, Build.VERSION_CODES.L);
                 service.asBinder().linkToDeath(info, 0);
                 mServices.add(info);
+                return info;
             } catch (RemoteException e) {
                 // already dead
             }
         }
+        return null;
     }
 
     /**