<!DOCTYPE html>
<!--

 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.

-->


<html>
  <head>
    <!-- Inject CSP -->
    <script type="text/javascript" src="../csp-incl.js"></script>

    <meta name="viewport" content="width=device-width,height=device-height,user-scalable=no,maximum-scale=1.0,initial-scale=1.0" />
    <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <!-- ISO-8859-1 -->
    <title>Cordova Mobile Spec</title>
    <link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title" charset="utf-8">
    <script type="text/javascript" charset="utf-8" src="../cordova-incl.js"></script>      
    <script type="text/javascript" charset="utf-8" src="./index.js"></script>      

  </head>
  <body id="stage" class="theme">
  
    <h1>Display Other Content</h1>
    <div id="info">
    </div>
    <h2>Action</h2>
    <div class="btn large telLocation">Call 411</div>
    <a href="mailto:bob@abc.org?subject=My Subject&body=This is the body.%0D%0ANew line." class="btn large">Send Mail</a>
    <a href="sms:5125551234?body=The SMS message." class="btn large">Send SMS</a>
    <a href="http://www.google.com" class="btn large">Load Web Site</a>
    <!--  Need new URL -->
    <!-- a href="http://handle.library.cornell.edu/control/authBasic/authTest/" class="btn large">Basic Auth: test/this</a -->
    <a href="page2.html" class="btn large">Load a page with iframes</a>
    <a href="page2.html?me=test" class="btn large">Load page with query param</a>
    <a href="page3.html#foo" class="btn large">Page with hash</a>
    <a href="page3.html?hash1#gah" class="btn large">Page with hash change on load</a>
    <a href="page3.html?hash2#gah" class="btn large">Page with hash replace on load</a>
    <a href="page3.html?hash1&changeURL#gah" class="btn large">Page with replaceState & hash change</a>
    <a href="page3.html?iframe#gah" class="btn large">Page iframe hash change</a>
    <h2>Android Only</h2>
    <a href="geo:0,0?q=11400 Burnet Rd, Austin, TX" class="btn large">Map of IBM @ Austin TX</a>
    <a href="market://search?q=google" class="btn large">Search Android market</a>
    <a href="content://media/external/images/media" class="btn large">View image app</a>

    <h2> </h2><div class="backBtn">Back</div>
  </body>
</html>      
