Send transaction callbacks even when no BSL

The current transaction callback logic only accounts for 2 cases:
1. If there's a BSL in the transaction
2. If there are no layers in the transaction

However, this doesn't account for cases where there's other layer types
in the transaction that are not BSL. In those cases, we fail to invoke
the transaction callbacks.

Test: LayerCallbackTest
Fixes: 229578553
Change-Id: I7483235617218a759bc9b1ea335e9fef80275728
diff --git a/services/surfaceflinger/Layer.h b/services/surfaceflinger/Layer.h
index 565a6ff..ecea744 100644
--- a/services/surfaceflinger/Layer.h
+++ b/services/surfaceflinger/Layer.h
@@ -431,9 +431,7 @@
     virtual bool setApi(int32_t /*api*/) { return false; };
     virtual bool setSidebandStream(const sp<NativeHandle>& /*sidebandStream*/) { return false; };
     virtual bool setTransactionCompletedListeners(
-            const std::vector<sp<CallbackHandle>>& /*handles*/) {
-        return false;
-    };
+            const std::vector<sp<CallbackHandle>>& /*handles*/);
     virtual bool addFrameEvent(const sp<Fence>& /*acquireFence*/, nsecs_t /*postedTime*/,
                                nsecs_t /*requestedPresentTime*/) {
         return false;