tree a7b4e8ca8aec89523d875aaeb9d54736e40d47a5
parent de47a1a4a361343052222e42d44c5b68d8f3e32a
author Yanuar Harry <ai.the.smarties.physics@gmail.com> 1423664776 +0700
committer Yanuar Harry <ai.the.smarties.physics@gmail.com> 1424362319 +0700

[3/3] OmniGears: Ambient Display configurations

make simple options

PS17
-use ListPreference value as summary

fix dependency
change string

PS24
-reworked shake test handling

<!------------------------------------------------------------>

Note :

   since each minimum and maximum value for device is different
   (minimum and maximum value in this patch is for hammerhead and shamu)
   you must replace :

   1. doze_pulse_duration_in_entries and doze_pulse_duration_in_values
   2. doze_pulse_duration_visible_entries and doze_pulse_duration_visible_values

   and put in OmniGears overlay inside your device repo

<!------------------------------------------------------------>

Example :
   my device is falcon a.k.a Moto G, cant handle with value that present in this patch
   so i need to check which minimum and maximum value that working

   after that, i get minimum 1 s and maximum 2s for time in and out
   also i get minimum 2 s and maximum 4 s for visible time

   then i put value into overlay

    <string-array name="doze_pulse_duration_in_entries" translatable="false">
        <item>@string/one_second_default</item>
        <item>@string/onehalf_second</item>
        <item>@string/two_second</item>
    </string-array>

    <string-array name="doze_pulse_duration_in_values" translatable="false">
        <item>1000</item>
        <item>1500</item>
        <item>2000</item>
    </string-array>

    <string-array name="doze_pulse_duration_visible_entries" translatable="false">
        <item>@string/two_second</item>
        <item>@string/twohalf_second</item>
        <item>@string/three_second_default</item>
        <item>@string/threehalf_second</item>
        <item>@string/four_second</item>
    </string-array>

    <string-array name="doze_pulse_duration_visible_values" translatable="false">
        <item>2000</item>
        <item>2500</item>
        <item>3000</item>
        <item>3500</item>
        <item>4000</item>
    </string-array>

    make sure the you keep default value in the array
<!------------------------------------------------------------>

last patch: make sure option not showing in search mode if not support

Change-Id: I48e5f576af7a619b5ad6b030bf606aaee771a095
