Merge "Move SmsFacade and SignalStrengthFacade into .telephony"
diff --git a/sl4a/Common/src/com/googlecode/android_scripting/facade/EyesFreeFacade.java b/sl4a/Common/src/com/googlecode/android_scripting/facade/EyesFreeFacade.java
deleted file mode 100644
index 23aa92f..0000000
--- a/sl4a/Common/src/com/googlecode/android_scripting/facade/EyesFreeFacade.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright (C) 2016 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License"); you may not
- * use this file except in compliance with the License. You may obtain a copy of
- * the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-
-package com.googlecode.android_scripting.facade;
-
-import android.app.Service;
-import android.content.Intent;
-import android.content.pm.PackageManager;
-import android.content.pm.ResolveInfo;
-
-import com.googlecode.android_scripting.jsonrpc.RpcReceiver;
-import com.googlecode.android_scripting.rpc.Rpc;
-import com.googlecode.android_scripting.rpc.RpcParameter;
-
-import java.util.List;
-
-/**
- * Provides Text To Speech services for API 3 or less.
- */
-
-public class EyesFreeFacade extends RpcReceiver {
-
-  private final Service mService;
-  private final PackageManager mPackageManager;
-
-  public EyesFreeFacade(FacadeManager manager) {
-    super(manager);
-    mService = manager.getService();
-    mPackageManager = mService.getPackageManager();
-  }
-
-  @Rpc(description = "Speaks the provided message via TTS.")
-  public void ttsSpeak(@RpcParameter(name = "message") String message) {
-    Intent intent = new Intent("com.google.tts.makeBagel");
-    intent.putExtra("message", message);
-    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
-    List<ResolveInfo> infos = mPackageManager.queryIntentActivities(intent, 0);
-    if (infos.size() > 0) {
-      mService.startActivity(intent);
-    } else {
-      throw new RuntimeException("Eyes-Free is not installed.");
-    }
-  }
-
-  @Override
-  public void shutdown() {
-  }
-}
diff --git a/sl4a/ScriptingLayer/src/com/googlecode/android_scripting/facade/FacadeConfiguration.java b/sl4a/ScriptingLayer/src/com/googlecode/android_scripting/facade/FacadeConfiguration.java
index 005c72d..7d480dd 100644
--- a/sl4a/ScriptingLayer/src/com/googlecode/android_scripting/facade/FacadeConfiguration.java
+++ b/sl4a/ScriptingLayer/src/com/googlecode/android_scripting/facade/FacadeConfiguration.java
@@ -107,50 +107,34 @@
         sFacadeClassList.add(HttpFacade.class);
         sFacadeClassList.add(WifiManagerFacade.class);
         sFacadeClassList.add(UiFacade.class);
+        sFacadeClassList.add(TextToSpeechFacade.class);
+        sFacadeClassList.add(BluetoothFacade.class);
+        sFacadeClassList.add(BluetoothA2dpFacade.class);
+        sFacadeClassList.add(BluetoothAvrcpFacade.class);
+        sFacadeClassList.add(BluetoothConnectionFacade.class);
+        sFacadeClassList.add(BluetoothHspFacade.class);
+        sFacadeClassList.add(BluetoothHidFacade.class);
+        sFacadeClassList.add(BluetoothMapFacade.class);
+        sFacadeClassList.add(BluetoothRfcommFacade.class);
+        sFacadeClassList.add(SignalStrengthFacade.class);
+        sFacadeClassList.add(WebCamFacade.class);
+        sFacadeClassList.add(WifiP2pManagerFacade.class);
+        sFacadeClassList.add(BluetoothLeScanFacade.class);
+        sFacadeClassList.add(BluetoothLeAdvertiseFacade.class);
+        sFacadeClassList.add(GattClientFacade.class);
+        sFacadeClassList.add(GattServerFacade.class);
+        sFacadeClassList.add(ConnectivityManagerFacade.class);
+        sFacadeClassList.add(DisplayFacade.class);
+        sFacadeClassList.add(TelecomManagerFacade.class);
+        sFacadeClassList.add(WifiRttManagerFacade.class);
+        sFacadeClassList.add(WifiScannerFacade.class);
+        sFacadeClassList.add(SubscriptionManagerFacade.class);
+        sFacadeClassList.add(TelecomCallFacade.class);
+        sFacadeClassList.add(CarrierConfigFacade.class);
 
-        if (sSdkLevel >= 4) {
-            sFacadeClassList.add(TextToSpeechFacade.class);
-        } else {
-            sFacadeClassList.add(EyesFreeFacade.class);
-        }
-
-        if (sSdkLevel >= 5) {
-            sFacadeClassList.add(BluetoothFacade.class);
-            sFacadeClassList.add(BluetoothA2dpFacade.class);
-            sFacadeClassList.add(BluetoothAvrcpFacade.class);
-            sFacadeClassList.add(BluetoothConnectionFacade.class);
-            sFacadeClassList.add(BluetoothHspFacade.class);
-            sFacadeClassList.add(BluetoothHidFacade.class);
-            sFacadeClassList.add(BluetoothMapFacade.class);
-            sFacadeClassList.add(BluetoothRfcommFacade.class);
-        }
-
-        if (sSdkLevel >= 7) {
-            sFacadeClassList.add(SignalStrengthFacade.class);
-        }
-
-        if (sSdkLevel >= 8) {
-            sFacadeClassList.add(WebCamFacade.class);
-        }
-
-        if (sSdkLevel >= 14) {
-            sFacadeClassList.add(WifiP2pManagerFacade.class);
-        }
-
-        if (sSdkLevel >= 19) {
-            sFacadeClassList.add(BluetoothLeScanFacade.class);
-            sFacadeClassList.add(BluetoothLeAdvertiseFacade.class);
-            sFacadeClassList.add(GattClientFacade.class);
-            sFacadeClassList.add(GattServerFacade.class);
-            sFacadeClassList.add(ConnectivityManagerFacade.class);
-            sFacadeClassList.add(DisplayFacade.class);
-            sFacadeClassList.add(TelecomManagerFacade.class);
-            sFacadeClassList.add(WifiRttManagerFacade.class);
-            sFacadeClassList.add(WifiScannerFacade.class);
-            sFacadeClassList.add(SubscriptionManagerFacade.class);
-            sFacadeClassList.add(TelecomCallFacade.class);
-            sFacadeClassList.add(CarrierConfigFacade.class);
-
+        /*Compatibility reset to >= Marshmallow */
+        if( sSdkLevel > 23 ) {
+            //add new facades here
         }
 
         for (Class<? extends RpcReceiver> recieverClass : sFacadeClassList) {
diff --git a/sl4n/Android.mk b/sl4n/Android.mk
index 286453c..bf99596 100644
--- a/sl4n/Android.mk
+++ b/sl4n/Android.mk
@@ -22,7 +22,7 @@
 LOCAL_MODULE := sl4n
 
 LOCAL_C_INCLUDES += \
-  $(ANDROID_BUILD_TOP)/system/bt \
+  $(LOCAL_PATH)/../../../../../system/bt \
   $(LOCAL_PATH)/rapidjson/include \
   $(LOCAL_PATH)/facades