// Path: phial-overlay/src/main/java/com/mindcoders/phial/PageView.java
// public interface PageView {
// 
//     /**
//      * Called when device back button has been pressed
//      * @return true if the event was consumed; false otherwise.
//      */
//     boolean onBackPressed();
// 
// }
// 
// Path: phial-overlay/src/main/java/com/mindcoders/phial/internal/util/Precondition.java
// public final class Precondition {
//     private Precondition() {
//         //to hide-
//     }
// 
//     public static <T> T notNull(T item, String message) {
//         if (item == null) {
//             throw new IllegalArgumentException(message);
//         }
// 
//         return item;
//     }
// 
//     public static void calledFromTools(View view) {
//         if (!view.isInEditMode()) {
//             throw new IllegalArgumentException("should be called only from AndroidStudioTools");
//         }
//     }
// 
//     public static void notImplemented(String what, Context context) {
//         Toast.makeText(context, what + " is NOT Implemented yet", Toast.LENGTH_SHORT).show();
//     }
// 
//     public static void isTrue(boolean condition, String message) {
//         if (!condition) {
//             throw new IllegalArgumentException(message);
//         }
//     }
// 
//     public static <T> void notEmpty(T[] array, String message) {
//         if (array == null || array.length == 0) {
//             throw new IllegalArgumentException(message);
//         }
//     }
// 
//     public static void notEmpty(int[] array, String message) {
//         if (array == null || array.length == 0) {
//             throw new IllegalArgumentException(message);
//         }
//     }
// }


import android.content.Context;
import android.support.annotation.NonNull;
import android.support.annotation.VisibleForTesting;
import android.view.LayoutInflater;
import android.widget.ExpandableListAdapter;
import android.widget.ExpandableListView;
import android.widget.FrameLayout;
import com.mindcoders.phial.PageView;
import com.mindcoders.phial.R;
import com.mindcoders.phial.internal.util.Precondition;
import java.util.List;
import java.util.Observable;
import java.util.Observer;
package com.mindcoders.phial.internal.keyvalue;





public final class KeyValueView extends FrameLayout implements Observer, PageView {
    private final KeyValueAdapter adapter;
    private final KVSaver kvSaver;
    private ExpandableListView listView;

    private boolean expandFirst = false;

    //only for Android Studio tests
    @VisibleForTesting
    public KeyValueView(@NonNull Context context) {
        super(context);
// Path: phial-overlay/src/main/java/com/mindcoders/phial/PageView.java
// public interface PageView {
// 
//     /**
//      * Called when device back button has been pressed
//      * @return true if the event was consumed; false otherwise.
//      */
//     boolean onBackPressed();
// 
// }
// 
// Path: phial-overlay/src/main/java/com/mindcoders/phial/internal/util/Precondition.java
// public final class Precondition {
//     private Precondition() {
//         //to hide-
//     }
// 
//     public static <T> T notNull(T item, String message) {
//         if (item == null) {
//             throw new IllegalArgumentException(message);
//         }
// 
//         return item;
//     }
// 
//     public static void calledFromTools(View view) {
//         if (!view.isInEditMode()) {
//             throw new IllegalArgumentException("should be called only from AndroidStudioTools");
//         }
//     }
// 
//     public static void notImplemented(String what, Context context) {
//         Toast.makeText(context, what + " is NOT Implemented yet", Toast.LENGTH_SHORT).show();
//     }
// 
//     public static void isTrue(boolean condition, String message) {
//         if (!condition) {
//             throw new IllegalArgumentException(message);
//         }
//     }
// 
//     public static <T> void notEmpty(T[] array, String message) {
//         if (array == null || array.length == 0) {
//             throw new IllegalArgumentException(message);
//         }
//     }
// 
//     public static void notEmpty(int[] array, String message) {
//         if (array == null || array.length == 0) {
//             throw new IllegalArgumentException(message);
//         }
//     }
// }


// Path: phial-overlay/src/main/java/com/mindcoders/phial/internal/keyvalue/KeyValueView.java
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.annotation.VisibleForTesting;
import android.view.LayoutInflater;
import android.widget.ExpandableListAdapter;
import android.widget.ExpandableListView;
import android.widget.FrameLayout;
import com.mindcoders.phial.PageView;
import com.mindcoders.phial.R;
import com.mindcoders.phial.internal.util.Precondition;
import java.util.List;
import java.util.Observable;
import java.util.Observer;

package com.mindcoders.phial.internal.keyvalue;





public final class KeyValueView extends FrameLayout implements Observer, PageView {
    private final KeyValueAdapter adapter;
    private final KVSaver kvSaver;
    private ExpandableListView listView;

    private boolean expandFirst = false;

    //only for Android Studio tests
    @VisibleForTesting
    public KeyValueView(@NonNull Context context) {
        super(context);
        Precondition.calledFromTools(this);