The status of a secondary service does not change. For example:
cdemu-daemon depends upon dbus running
When the cdemu-daemon button is pressed the init script automatically starts dbus as well, but the status of dbus on services does not change until services is restarted.
Wrong status shown for daemon. For example:
haldaemon depends upon dbus running
haldaemon will not start unless dbus is started first (could be done in the init script such as in cdemu-daemon's). If dbus has not been started prior to pressing the haldaemon button, hal is not started but the status light turns green. When services is restarted the haldaemon is shown off.
Stopping a service that others depend on does not change status of others. For example:
haldaemon and cdemu-daemon are running.
When dbus is stopped cdemu-daemon is also stopped but the status does not change (hal continues to run even though it requires dbus to start?).
Proposed solution: get the status for each service after a button press. Similar to what is done upon startup of the app.