<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright 2016 The Cobalt Authors. All Rights Reserved.

  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.
-->

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="dev.cobalt.coat">

  <uses-feature android:name="android.hardware.microphone" android:required="false"/>
  <uses-feature android:name="android.software.leanback" android:required="false"/>
  <uses-feature android:name="android.hardware.touchscreen" android:required="false"/>
  <uses-feature android:glEsVersion="0x00020000" android:required="true"/>

  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
  <uses-permission android:name="android.permission.USE_CREDENTIALS" android:maxSdkVersion="22"/>
  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
  <uses-permission android:name="android.permission.RECORD_AUDIO"/>

  <application
    android:name="dev.cobalt.app.CobaltApplication"
    android:icon="@mipmap/ic_app"
    android:banner="@drawable/app_banner"
    android:label="${applicationName}">

    <activity android:name="dev.cobalt.app.MainActivity"
      android:launchMode="singleTask"
      android:configChanges="keyboard|keyboardHidden|navigation|orientation|screenSize|uiMode"
      android:screenOrientation="sensorLandscape"
      android:theme="@style/CobaltTheme">
      <meta-data android:name="cobalt.APP_URL" android:value="https://www.youtube.com/tv"/>
      <meta-data android:name="cobalt.SPLASH_URL" android:value="h5vcc-embedded://cobalt_splash_screen.html"/>
      <meta-data android:name="android.app.lib_name" android:value="coat"/>
      <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
        <category android:name="android.intent.category.LEANBACK_LAUNCHER"/>
        <category android:name="android.intent.category.DEFAULT"/>
      </intent-filter>
      <intent-filter>
        <action android:name="android.intent.action.VIEW"/>
        <action android:name="android.media.action.MEDIA_PLAY_FROM_SEARCH"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <category android:name="android.intent.category.BROWSABLE"/>
        <data android:scheme="http"/>
        <data android:scheme="https"/>
        <data android:host="youtube.com"/>
        <data android:host="www.youtube.com"/>
        <data android:host="m.youtube.com"/>
        <data android:host="youtu.be"/>
        <data android:pathPattern=".*"/>
      </intent-filter>
    </activity>

  </application>

</manifest>
