<!--
    Copyright (C) 2016 The Android Open Source Project

    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.
-->
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <LinearLayout
        android:id="@+id/graph_label_group"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal"
        android:clipChildren="false"
        android:clipToPadding="false">

        <LinearLayout
            android:id="@+id/label_group"
            android:layout_width="@dimen/usage_graph_labels_width"
            android:layout_height="match_parent"
            android:orientation="vertical">

            <include android:id="@+id/label_top"
                layout="@layout/usage_side_label" />

            <Space
                android:id="@+id/space1"
                android:layout_width="wrap_content"
                android:layout_height="0dp"
                android:layout_weight="1" />

            <include android:id="@+id/label_middle"
                layout="@layout/usage_side_label" />

            <Space
                android:id="@+id/space2"
                android:layout_width="wrap_content"
                android:layout_height="0dp"
                android:layout_weight="1" />

            <include android:id="@+id/label_bottom"
                layout="@layout/usage_side_label" />

        </LinearLayout>

        <com.android.settings.graph.UsageGraph
            android:id="@+id/usage_graph"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:layout_marginTop="@dimen/usage_graph_margin_top_bottom"
            android:layout_marginBottom="@dimen/usage_graph_margin_top_bottom" />

    </LinearLayout>

    <LinearLayout
        android:id="@+id/bottom_label_group"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <Space
            android:id="@+id/bottom_label_space"
            android:layout_width="@dimen/usage_graph_labels_width"
            android:layout_height="wrap_content"/>
        <com.android.settings.graph.BottomLabelLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="horizontal"
            android:layoutDirection="ltr">
            <include android:id="@+id/label_start"
                     layout="@layout/usage_side_label" />

            <Space
                android:id="@+id/spacer"
                android:layout_width="40dp"
                android:layout_height="wrap_content"
                android:layout_weight="1" />

            <include android:id="@+id/label_end"
                     layout="@layout/usage_side_label" />
        </com.android.settings.graph.BottomLabelLayout>
    </LinearLayout>

</LinearLayout>
