Merge "OmniGears: change custom dialog preferences to new support base" into android-7.0
diff --git a/src/org/omnirom/omnigears/preference/AppMultiSelectListPreference.java b/src/org/omnirom/omnigears/preference/AppMultiSelectListPreference.java
index 545a25e..155de13 100644
--- a/src/org/omnirom/omnigears/preference/AppMultiSelectListPreference.java
+++ b/src/org/omnirom/omnigears/preference/AppMultiSelectListPreference.java
@@ -28,7 +28,6 @@
 import android.content.res.TypedArray;
 import android.graphics.drawable.Drawable;
 import android.os.Bundle;
-import android.preference.DialogPreference;
 import android.util.AttributeSet;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -41,6 +40,7 @@
 import android.widget.TextView;
 
 import com.android.settings.R;
+import com.android.settings.CustomDialogPreference;
 
 import java.text.Collator;
 import java.util.ArrayList;
@@ -51,7 +51,7 @@
 import java.util.List;
 import java.util.Set;
 
-public class AppMultiSelectListPreference extends DialogPreference {
+public class AppMultiSelectListPreference extends CustomDialogPreference {
     private final List<MyApplicationInfo> mPackageInfoList = new ArrayList<MyApplicationInfo>();
     private AppListAdapter mAdapter;
     private Set<String> mValues = new HashSet<String>();
diff --git a/src/org/omnirom/omnigears/preference/CustomDialogPreference.java b/src/org/omnirom/omnigears/preference/CustomDialogPreference.java
deleted file mode 100644
index 3fd9cb2..0000000
--- a/src/org/omnirom/omnigears/preference/CustomDialogPreference.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright (C) 2015 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.
- */
-package org.omnirom.omnigears.preference;
-
-import android.app.AlertDialog;
-import android.app.Dialog;
-import android.content.Context;
-import android.content.DialogInterface;
-import android.os.Bundle;
-import android.support.annotation.NonNull;
-import android.support.v14.preference.PreferenceDialogFragment;
-import android.support.v7.preference.DialogPreference;
-import android.util.AttributeSet;
-import android.view.View;
-
-public class CustomDialogPreference<T extends Dialog> extends DialogPreference {
-
-    private CustomPreferenceDialogFragment mFragment;
-
-    public CustomDialogPreference(Context context, AttributeSet attrs, int defStyleAttr,
-            int defStyleRes) {
-        super(context, attrs, defStyleAttr, defStyleRes);
-    }
-
-    public CustomDialogPreference(Context context, AttributeSet attrs, int defStyleAttr) {
-        super(context, attrs, defStyleAttr);
-    }
-
-    public CustomDialogPreference(Context context, AttributeSet attrs) {
-        super(context, attrs);
-    }
-
-    public CustomDialogPreference(Context context) {
-        super(context);
-    }
-
-    public boolean isDialogOpen() {
-        return getDialog() != null && getDialog().isShowing();
-    }
-
-    public T getDialog() {
-        return (T) (mFragment != null ? mFragment.getDialog() : null);
-    }
-
-    protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
-            DialogInterface.OnClickListener listener) {
-    }
-
-    protected void onDialogClosed(boolean positiveResult) {
-    }
-
-    protected void onClick(DialogInterface dialog, int which) {
-    }
-
-    protected void onBindDialogView(View view) {
-    }
-
-    public Dialog onCreateDialog(Bundle savedInstanceState) {
-        return null;
-    }
-
-    protected View onCreateDialogView(Context context) {
-        return null;
-    }
-
-    private void setFragment(CustomPreferenceDialogFragment fragment) {
-        mFragment = fragment;
-    }
-
-    public static class CustomPreferenceDialogFragment extends PreferenceDialogFragment {
-
-        public static CustomPreferenceDialogFragment newInstance(String key) {
-            final CustomPreferenceDialogFragment fragment = new CustomPreferenceDialogFragment();
-            final Bundle b = new Bundle(1);
-            b.putString(ARG_KEY, key);
-            fragment.setArguments(b);
-            return fragment;
-        }
-
-        private CustomDialogPreference getCustomizablePreference() {
-            return (CustomDialogPreference) getPreference();
-        }
-
-        @Override
-        protected void onPrepareDialogBuilder(AlertDialog.Builder builder) {
-            super.onPrepareDialogBuilder(builder);
-            getCustomizablePreference().setFragment(this);
-            getCustomizablePreference().onPrepareDialogBuilder(builder, this);
-        }
-
-        @Override
-        public void onDialogClosed(boolean positiveResult) {
-            getCustomizablePreference().onDialogClosed(positiveResult);
-        }
-
-        @Override
-        protected void onBindDialogView(View view) {
-            super.onBindDialogView(view);
-            getCustomizablePreference().onBindDialogView(view);
-        }
-
-        @Override
-        public void onClick(DialogInterface dialog, int which) {
-            super.onClick(dialog, which);
-            getCustomizablePreference().onClick(dialog, which);
-        }
-
-        @NonNull
-        @Override
-        public Dialog onCreateDialog(Bundle savedInstanceState) {
-            getCustomizablePreference().setFragment(this);
-            final Dialog sub = getCustomizablePreference().onCreateDialog(savedInstanceState);
-            if (sub == null) {
-                return super.onCreateDialog(savedInstanceState);
-            }
-            return sub;
-        }
-
-        @Override
-        protected View onCreateDialogView(Context context) {
-            final View v = getCustomizablePreference().onCreateDialogView(context);
-            if (v == null) {
-                return super.onCreateDialogView(context);
-            }
-            return v;
-        }
-    }
-}
diff --git a/src/org/omnirom/omnigears/preference/NumberPickerPreference.java b/src/org/omnirom/omnigears/preference/NumberPickerPreference.java
index 55e9495..1e8bdfd 100644
--- a/src/org/omnirom/omnigears/preference/NumberPickerPreference.java
+++ b/src/org/omnirom/omnigears/preference/NumberPickerPreference.java
@@ -7,20 +7,21 @@
 
 import android.content.Context;
 import android.content.res.TypedArray;
-import android.preference.DialogPreference;
 import android.util.AttributeSet;
 import android.view.View;
 import android.widget.NumberPicker;
 
 import org.omnirom.omnigears.R;
 
+import com.android.settings.CustomDialogPreference;
+
 /**
 * A {@link DialogPreference} that provides a user with the means to select an integer from a {@link NumberPicker}, and persist it.
 *
 * @author lukehorvat
 *
 */
-public class NumberPickerPreference extends DialogPreference
+public class NumberPickerPreference extends CustomDialogPreference
 {
     private static final int DEFAULT_MIN_VALUE = 0;
     private static final int DEFAULT_MAX_VALUE = 100;
@@ -112,4 +113,4 @@
             }
         }
     }
-}
\ No newline at end of file
+}