<?xml version="1.0" encoding="UTF-8" ?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you 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.
-->
<plugin xmlns="http://phonegap.com/ns/plugins/1.0"
    id="org.apache.appharness.AppHarnessUI"
    version="0.0.1">
  <engines>
    <engine name="cordova" version=">=3.0.0" />
  </engines>

  <name>AppHarnessUI</name>

  <js-module src="appharnessui.js" name="AppHarnessUI">
    <clobbers target="cordova.plugins.appharnessui" />
  </js-module>

  <platform name="android">
    <source-file src="android/AppHarnessUI.java" target-dir="src/org/apache/appharness" />
    <source-file src="android/CustomAndroidWebView.java" target-dir="src/org/apache/appharness" />
    <source-file src="android/CustomCordovaWebView.java" target-dir="src/org/apache/appharness" />
    <source-file src="android/TwoFingerDoubleTapGestureDetector.java" target-dir="src/org/apache/appharness" />

    <config-file target="config.xml" parent="/*">
      <feature name="AppHarnessUI">
        <param name="android-package" value="org.apache.appharness.AppHarnessUI"/>
      </feature>
    </config-file>
  </platform>

  <platform name="ios">
    <source-file src="AppHarnessUI.m" />

    <config-file target="config.xml" parent="/*">
      <feature name="AppHarnessUI">
        <param name="ios-package" value="AppHarnessUI"/>
      </feature>
    </config-file>
  </platform>
</plugin>
