浏览代码

Split library into core and commons

Aidan Follestad 9 年之前
父节点
当前提交
1ecc6e7635
共有 85 个文件被更改,包括 119 次插入88 次删除
  1. 0 0
      commons/.gitignore
  2. 34 0
      commons/build.gradle
  3. 5 0
      commons/src/main/AndroidManifest.xml
  4. 1 2
      commons/src/main/java/com/afollestad/materialdialogs/commons/color/CircleView.java
  5. 6 5
      commons/src/main/java/com/afollestad/materialdialogs/commons/color/ColorChooserDialog.java
  6. 2 2
      commons/src/main/java/com/afollestad/materialdialogs/commons/color/ColorPalette.java
  7. 1 1
      commons/src/main/java/com/afollestad/materialdialogs/commons/prefs/MaterialDialogPreference.java
  8. 4 2
      commons/src/main/java/com/afollestad/materialdialogs/commons/prefs/MaterialEditTextPreference.java
  9. 1 1
      commons/src/main/java/com/afollestad/materialdialogs/commons/prefs/MaterialListPreference.java
  10. 1 1
      commons/src/main/java/com/afollestad/materialdialogs/commons/prefs/MaterialMultiSelectListPreference.java
  11. 8 12
      commons/src/main/java/com/afollestad/materialdialogs/commons/simplelist/MaterialSimpleListAdapter.java
  12. 1 1
      commons/src/main/java/com/afollestad/materialdialogs/commons/simplelist/MaterialSimpleListItem.java
  13. 0 0
      commons/src/main/res/layout-ldrtl/md_simplelist_item.xml
  14. 0 0
      commons/src/main/res/layout/md_simplelist_item.xml
  15. 0 0
      commons/src/main/res/layout/md_stub_inputpref.xml
  16. 1 0
      core/.gitignore
  17. 6 6
      core/build.gradle
  18. 0 0
      core/src/main/AndroidManifest.xml
  19. 0 0
      core/src/main/java/com/afollestad/materialdialogs/AlertDialogWrapper.java
  20. 2 2
      core/src/main/java/com/afollestad/materialdialogs/DefaultAdapter.java
  21. 0 0
      core/src/main/java/com/afollestad/materialdialogs/DialogAction.java
  22. 0 0
      core/src/main/java/com/afollestad/materialdialogs/DialogBase.java
  23. 4 6
      core/src/main/java/com/afollestad/materialdialogs/DialogInit.java
  24. 0 0
      core/src/main/java/com/afollestad/materialdialogs/GravityEnum.java
  25. 13 13
      core/src/main/java/com/afollestad/materialdialogs/MaterialDialog.java
  26. 0 0
      core/src/main/java/com/afollestad/materialdialogs/Theme.java
  27. 0 0
      core/src/main/java/com/afollestad/materialdialogs/ThemeSingleton.java
  28. 11 0
      core/src/main/java/com/afollestad/materialdialogs/internal/MDAdapter.java
  29. 0 0
      core/src/main/java/com/afollestad/materialdialogs/internal/MDButton.java
  30. 0 0
      core/src/main/java/com/afollestad/materialdialogs/internal/MDRootLayout.java
  31. 0 0
      core/src/main/java/com/afollestad/materialdialogs/internal/MDTintHelper.java
  32. 0 0
      core/src/main/java/com/afollestad/materialdialogs/progress/CircularProgressDrawable.java
  33. 1 1
      core/src/main/java/com/afollestad/materialdialogs/progress/ProgressStyle.java
  34. 0 0
      core/src/main/java/com/afollestad/materialdialogs/util/DialogUtils.java
  35. 0 0
      core/src/main/java/com/afollestad/materialdialogs/util/TypefaceHelper.java
  36. 0 0
      core/src/main/res/anim/decelerate_cubic.xml
  37. 0 0
      core/src/main/res/anim/popup_enter.xml
  38. 0 0
      core/src/main/res/anim/popup_exit.xml
  39. 0 0
      core/src/main/res/drawable-v21/md_btn_selector_ripple.xml
  40. 0 0
      core/src/main/res/drawable-v21/md_btn_selector_ripple_dark.xml
  41. 0 0
      core/src/main/res/drawable-v21/md_btn_shape.xml
  42. 0 0
      core/src/main/res/drawable/md_btn_selected.xml
  43. 0 0
      core/src/main/res/drawable/md_btn_selected_dark.xml
  44. 0 0
      core/src/main/res/drawable/md_btn_selector.xml
  45. 0 0
      core/src/main/res/drawable/md_btn_selector_dark.xml
  46. 0 0
      core/src/main/res/drawable/md_item_selected.xml
  47. 0 0
      core/src/main/res/drawable/md_item_selected_dark.xml
  48. 0 0
      core/src/main/res/drawable/md_selector.xml
  49. 0 0
      core/src/main/res/drawable/md_selector_dark.xml
  50. 0 0
      core/src/main/res/drawable/md_transparent.xml
  51. 0 0
      core/src/main/res/layout-ldrtl/md_listitem_multichoice.xml
  52. 0 0
      core/src/main/res/layout-ldrtl/md_listitem_singlechoice.xml
  53. 0 0
      core/src/main/res/layout/md_dialog_basic.xml
  54. 0 0
      core/src/main/res/layout/md_dialog_custom.xml
  55. 0 0
      core/src/main/res/layout/md_dialog_input.xml
  56. 0 0
      core/src/main/res/layout/md_dialog_list.xml
  57. 0 0
      core/src/main/res/layout/md_dialog_progress.xml
  58. 0 0
      core/src/main/res/layout/md_dialog_progress_indeterminate.xml
  59. 0 0
      core/src/main/res/layout/md_dialog_progress_indeterminate_horizontal.xml
  60. 0 0
      core/src/main/res/layout/md_listitem.xml
  61. 0 0
      core/src/main/res/layout/md_listitem_multichoice.xml
  62. 0 0
      core/src/main/res/layout/md_listitem_singlechoice.xml
  63. 0 0
      core/src/main/res/layout/md_stub_actionbuttons.xml
  64. 0 0
      core/src/main/res/layout/md_stub_progress.xml
  65. 0 0
      core/src/main/res/layout/md_stub_progress_indeterminate.xml
  66. 0 0
      core/src/main/res/layout/md_stub_progress_indeterminate_horizontal.xml
  67. 0 0
      core/src/main/res/layout/md_stub_titleframe.xml
  68. 0 0
      core/src/main/res/values-sw600dp/bool.xml
  69. 0 0
      core/src/main/res/values-sw600dp/dimens.xml
  70. 0 0
      core/src/main/res/values-sw720dp/bool.xml
  71. 0 0
      core/src/main/res/values-sw720dp/dimens.xml
  72. 0 0
      core/src/main/res/values-v11/styles.xml
  73. 0 0
      core/src/main/res/values-v21/styles.xml
  74. 0 0
      core/src/main/res/values/attrs.xml
  75. 0 0
      core/src/main/res/values/bool.xml
  76. 0 0
      core/src/main/res/values/colors.xml
  77. 0 0
      core/src/main/res/values/dimens.xml
  78. 0 0
      core/src/main/res/values/strings.xml
  79. 0 0
      core/src/main/res/values/styles.xml
  80. 0 17
      library/proguard-rules.pro
  81. 5 4
      sample/build.gradle
  82. 4 4
      sample/src/main/java/com/afollestad/materialdialogssample/MainActivity.java
  83. 4 4
      sample/src/main/res/xml-v11/preferences.xml
  84. 3 3
      sample/src/main/res/xml/preferences.xml
  85. 1 1
      settings.gradle

+ 0 - 0
library/.gitignore → commons/.gitignore


+ 34 - 0
commons/build.gradle

@@ -0,0 +1,34 @@
+apply plugin: 'com.android.library'
+apply plugin: 'com.novoda.bintray-release'
+
+android {
+    compileSdkVersion 23
+    buildToolsVersion "23.0.0"
+
+    defaultConfig {
+        minSdkVersion 8
+        targetSdkVersion 23
+        versionCode 1
+        versionName "0.8.0.0"
+    }
+    lintOptions {
+        abortOnError false
+    }
+}
+
+dependencies {
+    compile fileTree(dir: 'libs', include: ['*.jar'])
+    compile 'com.android.support:appcompat-v7:23.0.1'
+    compile project(':core')
+}
+
+publish {
+    userOrg = 'drummer-aidan'
+    groupId = 'com.afollestad'
+    artifactId = 'material-dialogs-commons'
+    version = '0.8.0.0'
+    description = 'A library for implementing Material design styled dialogs across all versions of Android.'
+    website = 'https://github.com/afollestad/material-dialogs'
+    issueTracker = "${website}/issues"
+    repository = "${website}.git"
+}

+ 5 - 0
commons/src/main/AndroidManifest.xml

@@ -0,0 +1,5 @@
+<manifest package="com.afollestad.materialdialogs.commons">
+
+    <application />
+
+</manifest>

+ 1 - 2
library/src/main/java/com/afollestad/materialdialogs/internal/CircleView.java → commons/src/main/java/com/afollestad/materialdialogs/commons/color/CircleView.java

@@ -1,4 +1,4 @@
-package com.afollestad.materialdialogs.internal;
+package com.afollestad.materialdialogs.commons.color;
 
 import android.content.Context;
 import android.content.res.ColorStateList;
@@ -20,7 +20,6 @@ import android.util.AttributeSet;
 import android.util.TypedValue;
 import android.widget.FrameLayout;
 
-
 public class CircleView extends FrameLayout {
 
     private final int borderWidthSmall;

+ 6 - 5
library/src/main/java/com/afollestad/materialdialogs/ColorChooserDialog.java → commons/src/main/java/com/afollestad/materialdialogs/commons/color/ColorChooserDialog.java

@@ -1,4 +1,4 @@
-package com.afollestad.materialdialogs;
+package com.afollestad.materialdialogs.commons.color;
 
 import android.app.Activity;
 import android.app.Dialog;
@@ -17,8 +17,9 @@ import android.view.ViewGroup;
 import android.widget.BaseAdapter;
 import android.widget.GridView;
 
-import com.afollestad.materialdialogs.internal.CircleView;
-import com.afollestad.materialdialogs.internal.ColorPalette;
+import com.afollestad.materialdialogs.DialogAction;
+import com.afollestad.materialdialogs.MaterialDialog;
+import com.afollestad.materialdialogs.commons.R;
 
 import java.io.Serializable;
 
@@ -113,8 +114,8 @@ public class ColorChooserDialog extends DialogFragment implements View.OnClickLi
 
             if (builder.mDynamicButtonColor) {
                 int selectedColor = getSelectedColor();
-                dialog.positiveButton.setTextColor(selectedColor);
-                dialog.neutralButton.setTextColor(selectedColor);
+                dialog.getActionButton(DialogAction.POSITIVE).setTextColor(selectedColor);
+                dialog.getActionButton(DialogAction.NEUTRAL).setTextColor(selectedColor);
             }
 
             invalidate();

+ 2 - 2
library/src/main/java/com/afollestad/materialdialogs/internal/ColorPalette.java → commons/src/main/java/com/afollestad/materialdialogs/commons/color/ColorPalette.java

@@ -1,11 +1,11 @@
-package com.afollestad.materialdialogs.internal;
+package com.afollestad.materialdialogs.commons.color;
 
 import android.graphics.Color;
 
 /**
  * @author Aidan Follestad (afollestad)
  */
-public final class ColorPalette {
+class ColorPalette {
 
     public final static int[] PRIMARY_COLORS = new int[]{
             Color.parseColor("#F44336"),

+ 1 - 1
library/src/main/java/com/afollestad/materialdialogs/prefs/MaterialDialogPreference.java → commons/src/main/java/com/afollestad/materialdialogs/commons/prefs/MaterialDialogPreference.java

@@ -1,4 +1,4 @@
-package com.afollestad.materialdialogs.prefs;
+package com.afollestad.materialdialogs.commons.prefs;
 
 import android.annotation.TargetApi;
 import android.app.Dialog;

+ 4 - 2
library/src/main/java/com/afollestad/materialdialogs/prefs/MaterialEditTextPreference.java → commons/src/main/java/com/afollestad/materialdialogs/commons/prefs/MaterialEditTextPreference.java

@@ -1,5 +1,6 @@
-package com.afollestad.materialdialogs.prefs;
+package com.afollestad.materialdialogs.commons.prefs;
 
+import android.annotation.SuppressLint;
 import android.app.Dialog;
 import android.content.Context;
 import android.content.DialogInterface;
@@ -25,7 +26,7 @@ import android.widget.TextView;
 import com.afollestad.materialdialogs.MaterialDialog;
 import com.afollestad.materialdialogs.MaterialDialog.Builder;
 import com.afollestad.materialdialogs.MaterialDialog.ButtonCallback;
-import com.afollestad.materialdialogs.R;
+import com.afollestad.materialdialogs.commons.R;
 import com.afollestad.materialdialogs.internal.MDTintHelper;
 import com.afollestad.materialdialogs.util.DialogUtils;
 
@@ -65,6 +66,7 @@ public class MaterialEditTextPreference extends EditTextPreference {
                 ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
     }
 
+    @SuppressLint("MissingSuperCall")
     @Override
     protected void onBindDialogView(@NonNull View view) {
         EditText editText = mEditText;

+ 1 - 1
library/src/main/java/com/afollestad/materialdialogs/prefs/MaterialListPreference.java → commons/src/main/java/com/afollestad/materialdialogs/commons/prefs/MaterialListPreference.java

@@ -1,4 +1,4 @@
-package com.afollestad.materialdialogs.prefs;
+package com.afollestad.materialdialogs.commons.prefs;
 
 import android.app.Dialog;
 import android.content.Context;

+ 1 - 1
library/src/main/java/com/afollestad/materialdialogs/prefs/MaterialMultiSelectListPreference.java → commons/src/main/java/com/afollestad/materialdialogs/commons/prefs/MaterialMultiSelectListPreference.java

@@ -1,4 +1,4 @@
-package com.afollestad.materialdialogs.prefs;
+package com.afollestad.materialdialogs.commons.prefs;
 
 import android.annotation.TargetApi;
 import android.app.Dialog;

+ 8 - 12
library/src/main/java/com/afollestad/materialdialogs/simplelist/MaterialSimpleListAdapter.java → commons/src/main/java/com/afollestad/materialdialogs/commons/simplelist/MaterialSimpleListAdapter.java

@@ -1,4 +1,4 @@
-package com.afollestad.materialdialogs.simplelist;
+package com.afollestad.materialdialogs.commons.simplelist;
 
 import android.annotation.TargetApi;
 import android.content.Context;
@@ -15,27 +15,23 @@ import android.widget.TextView;
 
 import com.afollestad.materialdialogs.GravityEnum;
 import com.afollestad.materialdialogs.MaterialDialog;
-import com.afollestad.materialdialogs.R;
+import com.afollestad.materialdialogs.commons.R;
+import com.afollestad.materialdialogs.internal.MDAdapter;
 
 /**
  * @author Aidan Follestad (afollestad)
  */
-public class MaterialSimpleListAdapter extends ArrayAdapter<MaterialSimpleListItem> {
+public class MaterialSimpleListAdapter extends ArrayAdapter<MaterialSimpleListItem> implements MDAdapter {
 
     private MaterialDialog dialog;
 
-    public void setDialog(MaterialDialog dialog) {
-        setDialog(dialog, true);
+    public MaterialSimpleListAdapter(Context context) {
+        super(context, R.layout.md_simplelist_item, android.R.id.title);
     }
 
-    public void setDialog(MaterialDialog dialog, boolean notifyDataSetChanged) {
+    @Override
+    public void setDialog(MaterialDialog dialog) {
         this.dialog = dialog;
-        if (notifyDataSetChanged)
-            notifyDataSetChanged();
-    }
-
-    public MaterialSimpleListAdapter(Context context) {
-        super(context, R.layout.md_simplelist_item, android.R.id.title);
     }
 
     @Override

+ 1 - 1
library/src/main/java/com/afollestad/materialdialogs/simplelist/MaterialSimpleListItem.java → commons/src/main/java/com/afollestad/materialdialogs/commons/simplelist/MaterialSimpleListItem.java

@@ -1,4 +1,4 @@
-package com.afollestad.materialdialogs.simplelist;
+package com.afollestad.materialdialogs.commons.simplelist;
 
 import android.content.Context;
 import android.graphics.drawable.Drawable;

+ 0 - 0
library/src/main/res/layout-ldrtl/md_simplelist_item.xml → commons/src/main/res/layout-ldrtl/md_simplelist_item.xml


+ 0 - 0
library/src/main/res/layout/md_simplelist_item.xml → commons/src/main/res/layout/md_simplelist_item.xml


+ 0 - 0
library/src/main/res/layout/md_stub_inputpref.xml → commons/src/main/res/layout/md_stub_inputpref.xml


+ 1 - 0
core/.gitignore

@@ -0,0 +1 @@
+/build

+ 6 - 6
library/build.gradle → core/build.gradle

@@ -9,7 +9,7 @@ android {
         minSdkVersion 8
         targetSdkVersion 23
         versionCode 1
-        versionName "0.7.9.1"
+        versionName "0.8.0.0"
     }
     lintOptions {
         abortOnError false
@@ -18,17 +18,17 @@ android {
 
 dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
-    compile 'com.android.support:support-v4:23.0.0'
-    compile 'com.android.support:appcompat-v7:23.0.0'
-    compile 'com.android.support:recyclerview-v7:23.0.0'
-    compile 'com.android.support:support-annotations:23.0.0'
+    compile 'com.android.support:support-v4:23.0.1'
+    compile 'com.android.support:appcompat-v7:23.0.1'
+    compile 'com.android.support:recyclerview-v7:23.0.1'
+    compile 'com.android.support:support-annotations:23.0.1'
 }
 
 publish {
     userOrg = 'drummer-aidan'
     groupId = 'com.afollestad'
     artifactId = 'material-dialogs'
-    version = '0.7.9.1'
+    version = '0.8.0.0'
     description = 'A library for implementing Material design styled dialogs across all versions of Android.'
     website = 'https://github.com/afollestad/material-dialogs'
     issueTracker = "${website}/issues"

+ 0 - 0
library/src/main/AndroidManifest.xml → core/src/main/AndroidManifest.xml


+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/AlertDialogWrapper.java → core/src/main/java/com/afollestad/materialdialogs/AlertDialogWrapper.java


+ 2 - 2
library/src/main/java/com/afollestad/materialdialogs/MaterialDialogAdapter.java → core/src/main/java/com/afollestad/materialdialogs/DefaultAdapter.java

@@ -18,7 +18,7 @@ import android.widget.TextView;
 
 import com.afollestad.materialdialogs.internal.MDTintHelper;
 
-class MaterialDialogAdapter extends BaseAdapter {
+class DefaultAdapter extends BaseAdapter {
 
     private final MaterialDialog dialog;
     @LayoutRes
@@ -28,7 +28,7 @@ class MaterialDialogAdapter extends BaseAdapter {
     public RadioButton mRadioButton;
     public boolean mInitRadio;
 
-    public MaterialDialogAdapter(MaterialDialog dialog, @LayoutRes int layout) {
+    public DefaultAdapter(MaterialDialog dialog, @LayoutRes int layout) {
         this.dialog = dialog;
         this.layout = layout;
         this.itemGravity = dialog.mBuilder.itemsGravity;

+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/DialogAction.java → core/src/main/java/com/afollestad/materialdialogs/DialogAction.java


+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/DialogBase.java → core/src/main/java/com/afollestad/materialdialogs/DialogBase.java


+ 4 - 6
library/src/main/java/com/afollestad/materialdialogs/DialogInit.java → core/src/main/java/com/afollestad/materialdialogs/DialogInit.java

@@ -1,7 +1,5 @@
 package com.afollestad.materialdialogs;
 
-import android.content.Context;
-import android.content.res.ColorStateList;
 import android.content.res.Resources;
 import android.graphics.drawable.Drawable;
 import android.graphics.drawable.GradientDrawable;
@@ -23,11 +21,11 @@ import android.widget.ProgressBar;
 import android.widget.ScrollView;
 import android.widget.TextView;
 
+import com.afollestad.materialdialogs.internal.MDAdapter;
 import com.afollestad.materialdialogs.internal.MDButton;
 import com.afollestad.materialdialogs.internal.MDRootLayout;
 import com.afollestad.materialdialogs.internal.MDTintHelper;
 import com.afollestad.materialdialogs.progress.CircularProgressDrawable;
-import com.afollestad.materialdialogs.simplelist.MaterialSimpleListAdapter;
 import com.afollestad.materialdialogs.util.DialogUtils;
 
 import java.util.ArrayList;
@@ -283,11 +281,11 @@ class DialogInit {
                 } else {
                     dialog.listType = MaterialDialog.ListType.REGULAR;
                 }
-                builder.adapter = new MaterialDialogAdapter(dialog,
+                builder.adapter = new DefaultAdapter(dialog,
                         MaterialDialog.ListType.getLayoutForType(dialog.listType));
-            } else if (builder.adapter instanceof MaterialSimpleListAdapter) {
+            } else if (builder.adapter instanceof MDAdapter) {
                 // Notify simple list adapter of the dialog it belongs to
-                ((MaterialSimpleListAdapter) builder.adapter).setDialog(dialog, false);
+                ((MDAdapter) builder.adapter).setDialog(dialog);
             }
         }
 

+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/GravityEnum.java → core/src/main/java/com/afollestad/materialdialogs/GravityEnum.java


+ 13 - 13
library/src/main/java/com/afollestad/materialdialogs/MaterialDialog.java → core/src/main/java/com/afollestad/materialdialogs/MaterialDialog.java

@@ -209,7 +209,7 @@ public class MaterialDialog extends DialogBase implements
                 }
             } else if (listType == ListType.SINGLE) {
                 boolean allowSelection = true;
-                final MaterialDialogAdapter adapter = (MaterialDialogAdapter) mBuilder.adapter;
+                final DefaultAdapter adapter = (DefaultAdapter) mBuilder.adapter;
                 final RadioButton radio = (RadioButton) view.findViewById(R.id.control);
 
                 if (mBuilder.autoDismiss && mBuilder.positiveText == null) {
@@ -1203,14 +1203,14 @@ public class MaterialDialog extends DialogBase implements
      * @param which The action button of which to get the view for.
      * @return The view from the dialog's layout representing this action button.
      */
-    public final View getActionButton(@NonNull DialogAction which) {
+    public final MDButton getActionButton(@NonNull DialogAction which) {
         switch (which) {
             default:
-                return view.findViewById(R.id.buttonDefaultPositive);
+                return positiveButton;
             case NEUTRAL:
-                return view.findViewById(R.id.buttonDefaultNeutral);
+                return neutralButton;
             case NEGATIVE:
-                return view.findViewById(R.id.buttonDefaultNegative);
+                return negativeButton;
         }
     }
 
@@ -1385,8 +1385,8 @@ public class MaterialDialog extends DialogBase implements
         if (mBuilder.adapter == null)
             throw new IllegalStateException("This MaterialDialog instance does not yet have an adapter set to it. You cannot use setItems().");
         mBuilder.items = items;
-        if (mBuilder.adapter instanceof MaterialDialogAdapter) {
-            mBuilder.adapter = new MaterialDialogAdapter(this, ListType.getLayoutForType(listType));
+        if (mBuilder.adapter instanceof DefaultAdapter) {
+            mBuilder.adapter = new DefaultAdapter(this, ListType.getLayoutForType(listType));
         } else {
             throw new IllegalStateException("When using a custom adapter, setItems() cannot be used. Set items through the adapter instead.");
         }
@@ -1502,8 +1502,8 @@ public class MaterialDialog extends DialogBase implements
     @UiThread
     public void setSelectedIndex(int index) {
         mBuilder.selectedIndex = index;
-        if (mBuilder.adapter != null && mBuilder.adapter instanceof MaterialDialogAdapter) {
-            ((MaterialDialogAdapter) mBuilder.adapter).notifyDataSetChanged();
+        if (mBuilder.adapter != null && mBuilder.adapter instanceof DefaultAdapter) {
+            ((DefaultAdapter) mBuilder.adapter).notifyDataSetChanged();
         } else {
             throw new IllegalStateException("You can only use setSelectedIndex() with the default adapter implementation.");
         }
@@ -1520,8 +1520,8 @@ public class MaterialDialog extends DialogBase implements
     public void setSelectedIndices(@NonNull Integer[] indices) {
         mBuilder.selectedIndices = indices;
         selectedIndicesList = new ArrayList<>(Arrays.asList(indices));
-        if (mBuilder.adapter != null && mBuilder.adapter instanceof MaterialDialogAdapter) {
-            ((MaterialDialogAdapter) mBuilder.adapter).notifyDataSetChanged();
+        if (mBuilder.adapter != null && mBuilder.adapter instanceof DefaultAdapter) {
+            ((DefaultAdapter) mBuilder.adapter).notifyDataSetChanged();
         } else {
             throw new IllegalStateException("You can only use setSelectedIndices() with the default adapter implementation.");
         }
@@ -1535,8 +1535,8 @@ public class MaterialDialog extends DialogBase implements
             throw new IllegalStateException("You can only use clearSelectedIndicies() with multi choice list dialogs.");
         mBuilder.selectedIndices = null;
         selectedIndicesList.clear();
-        if (mBuilder.adapter != null && mBuilder.adapter instanceof MaterialDialogAdapter) {
-            ((MaterialDialogAdapter) mBuilder.adapter).notifyDataSetChanged();
+        if (mBuilder.adapter != null && mBuilder.adapter instanceof DefaultAdapter) {
+            ((DefaultAdapter) mBuilder.adapter).notifyDataSetChanged();
         } else {
             throw new IllegalStateException("You can only use clearSelectedIndicies() with the default adapter implementation.");
         }

+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/Theme.java → core/src/main/java/com/afollestad/materialdialogs/Theme.java


+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/ThemeSingleton.java → core/src/main/java/com/afollestad/materialdialogs/ThemeSingleton.java


+ 11 - 0
core/src/main/java/com/afollestad/materialdialogs/internal/MDAdapter.java

@@ -0,0 +1,11 @@
+package com.afollestad.materialdialogs.internal;
+
+import com.afollestad.materialdialogs.MaterialDialog;
+
+/**
+ * @author Aidan Follestad (afollestad)
+ */
+public interface MDAdapter {
+
+    void setDialog(MaterialDialog dialog);
+}

+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/internal/MDButton.java → core/src/main/java/com/afollestad/materialdialogs/internal/MDButton.java


+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/internal/MDRootLayout.java → core/src/main/java/com/afollestad/materialdialogs/internal/MDRootLayout.java


+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/internal/MDTintHelper.java → core/src/main/java/com/afollestad/materialdialogs/internal/MDTintHelper.java


+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/progress/CircularProgressDrawable.java → core/src/main/java/com/afollestad/materialdialogs/progress/CircularProgressDrawable.java


+ 1 - 1
library/src/main/java/com/afollestad/materialdialogs/ProgressStyle.java → core/src/main/java/com/afollestad/materialdialogs/progress/ProgressStyle.java

@@ -1,4 +1,4 @@
-package com.afollestad.materialdialogs;
+package com.afollestad.materialdialogs.progress;
 
 public enum ProgressStyle {
     CIRCULAR, HORIZONTAL

+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/util/DialogUtils.java → core/src/main/java/com/afollestad/materialdialogs/util/DialogUtils.java


+ 0 - 0
library/src/main/java/com/afollestad/materialdialogs/util/TypefaceHelper.java → core/src/main/java/com/afollestad/materialdialogs/util/TypefaceHelper.java


+ 0 - 0
library/src/main/res/anim/decelerate_cubic.xml → core/src/main/res/anim/decelerate_cubic.xml


+ 0 - 0
library/src/main/res/anim/popup_enter.xml → core/src/main/res/anim/popup_enter.xml


+ 0 - 0
library/src/main/res/anim/popup_exit.xml → core/src/main/res/anim/popup_exit.xml


+ 0 - 0
library/src/main/res/drawable-v21/md_btn_selector_ripple.xml → core/src/main/res/drawable-v21/md_btn_selector_ripple.xml


+ 0 - 0
library/src/main/res/drawable-v21/md_btn_selector_ripple_dark.xml → core/src/main/res/drawable-v21/md_btn_selector_ripple_dark.xml


+ 0 - 0
library/src/main/res/drawable-v21/md_btn_shape.xml → core/src/main/res/drawable-v21/md_btn_shape.xml


+ 0 - 0
library/src/main/res/drawable/md_btn_selected.xml → core/src/main/res/drawable/md_btn_selected.xml


+ 0 - 0
library/src/main/res/drawable/md_btn_selected_dark.xml → core/src/main/res/drawable/md_btn_selected_dark.xml


+ 0 - 0
library/src/main/res/drawable/md_btn_selector.xml → core/src/main/res/drawable/md_btn_selector.xml


+ 0 - 0
library/src/main/res/drawable/md_btn_selector_dark.xml → core/src/main/res/drawable/md_btn_selector_dark.xml


+ 0 - 0
library/src/main/res/drawable/md_item_selected.xml → core/src/main/res/drawable/md_item_selected.xml


+ 0 - 0
library/src/main/res/drawable/md_item_selected_dark.xml → core/src/main/res/drawable/md_item_selected_dark.xml


+ 0 - 0
library/src/main/res/drawable/md_selector.xml → core/src/main/res/drawable/md_selector.xml


+ 0 - 0
library/src/main/res/drawable/md_selector_dark.xml → core/src/main/res/drawable/md_selector_dark.xml


+ 0 - 0
library/src/main/res/drawable/md_transparent.xml → core/src/main/res/drawable/md_transparent.xml


+ 0 - 0
library/src/main/res/layout-ldrtl/md_listitem_multichoice.xml → core/src/main/res/layout-ldrtl/md_listitem_multichoice.xml


+ 0 - 0
library/src/main/res/layout-ldrtl/md_listitem_singlechoice.xml → core/src/main/res/layout-ldrtl/md_listitem_singlechoice.xml


+ 0 - 0
library/src/main/res/layout/md_dialog_basic.xml → core/src/main/res/layout/md_dialog_basic.xml


+ 0 - 0
library/src/main/res/layout/md_dialog_custom.xml → core/src/main/res/layout/md_dialog_custom.xml


+ 0 - 0
library/src/main/res/layout/md_dialog_input.xml → core/src/main/res/layout/md_dialog_input.xml


+ 0 - 0
library/src/main/res/layout/md_dialog_list.xml → core/src/main/res/layout/md_dialog_list.xml


+ 0 - 0
library/src/main/res/layout/md_dialog_progress.xml → core/src/main/res/layout/md_dialog_progress.xml


+ 0 - 0
library/src/main/res/layout/md_dialog_progress_indeterminate.xml → core/src/main/res/layout/md_dialog_progress_indeterminate.xml


+ 0 - 0
library/src/main/res/layout/md_dialog_progress_indeterminate_horizontal.xml → core/src/main/res/layout/md_dialog_progress_indeterminate_horizontal.xml


+ 0 - 0
library/src/main/res/layout/md_listitem.xml → core/src/main/res/layout/md_listitem.xml


+ 0 - 0
library/src/main/res/layout/md_listitem_multichoice.xml → core/src/main/res/layout/md_listitem_multichoice.xml


+ 0 - 0
library/src/main/res/layout/md_listitem_singlechoice.xml → core/src/main/res/layout/md_listitem_singlechoice.xml


+ 0 - 0
library/src/main/res/layout/md_stub_actionbuttons.xml → core/src/main/res/layout/md_stub_actionbuttons.xml


+ 0 - 0
library/src/main/res/layout/md_stub_progress.xml → core/src/main/res/layout/md_stub_progress.xml


+ 0 - 0
library/src/main/res/layout/md_stub_progress_indeterminate.xml → core/src/main/res/layout/md_stub_progress_indeterminate.xml


+ 0 - 0
library/src/main/res/layout/md_stub_progress_indeterminate_horizontal.xml → core/src/main/res/layout/md_stub_progress_indeterminate_horizontal.xml


+ 0 - 0
library/src/main/res/layout/md_stub_titleframe.xml → core/src/main/res/layout/md_stub_titleframe.xml


+ 0 - 0
library/src/main/res/values-sw600dp/bool.xml → core/src/main/res/values-sw600dp/bool.xml


+ 0 - 0
library/src/main/res/values-sw600dp/dimens.xml → core/src/main/res/values-sw600dp/dimens.xml


+ 0 - 0
library/src/main/res/values-sw720dp/bool.xml → core/src/main/res/values-sw720dp/bool.xml


+ 0 - 0
library/src/main/res/values-sw720dp/dimens.xml → core/src/main/res/values-sw720dp/dimens.xml


+ 0 - 0
library/src/main/res/values-v11/styles.xml → core/src/main/res/values-v11/styles.xml


+ 0 - 0
library/src/main/res/values-v21/styles.xml → core/src/main/res/values-v21/styles.xml


+ 0 - 0
library/src/main/res/values/attrs.xml → core/src/main/res/values/attrs.xml


+ 0 - 0
library/src/main/res/values/bool.xml → core/src/main/res/values/bool.xml


+ 0 - 0
library/src/main/res/values/colors.xml → core/src/main/res/values/colors.xml


+ 0 - 0
library/src/main/res/values/dimens.xml → core/src/main/res/values/dimens.xml


+ 0 - 0
library/src/main/res/values/strings.xml → core/src/main/res/values/strings.xml


+ 0 - 0
library/src/main/res/values/styles.xml → core/src/main/res/values/styles.xml


+ 0 - 17
library/proguard-rules.pro

@@ -1,17 +0,0 @@
-# Add project specific ProGuard rules here.
-# By default, the flags in this file are appended to flags specified
-# in /Users/aidanfollestad/Documents/android-sdk/tools/proguard/proguard-android.txt
-# You can edit the include path and order by changing the proguardFiles
-# directive in build.gradle.
-#
-# For more details, see
-#   http://developer.android.com/guide/developing/tools/proguard.html
-
-# Add any project specific keep options here:
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-#   public *;
-#}

+ 5 - 4
sample/build.gradle

@@ -17,8 +17,8 @@ android {
         applicationId "com.afollestad.materialdialogssample"
         minSdkVersion 9
         targetSdkVersion 23
-        versionCode 139
-        versionName "0.7.9.1"
+        versionCode 140
+        versionName "0.8.0.0"
     }
     lintOptions {
         abortOnError false
@@ -38,6 +38,7 @@ android {
 
 dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
-    compile project(':library')
-    compile 'com.android.support:gridlayout-v7:23.0.0'
+    compile project(':core')
+    compile 'com.android.support:gridlayout-v7:23.0.1'
+    compile project(':commons')
 }

+ 4 - 4
sample/src/main/java/com/afollestad/materialdialogssample/MainActivity.java

@@ -24,16 +24,16 @@ import android.widget.CompoundButton;
 import android.widget.EditText;
 import android.widget.Toast;
 
-import com.afollestad.materialdialogs.ColorChooserDialog;
 import com.afollestad.materialdialogs.DialogAction;
 import com.afollestad.materialdialogs.GravityEnum;
 import com.afollestad.materialdialogs.MaterialDialog;
 import com.afollestad.materialdialogs.Theme;
 import com.afollestad.materialdialogs.ThemeSingleton;
-import com.afollestad.materialdialogs.internal.CircleView;
+import com.afollestad.materialdialogs.commons.color.CircleView;
+import com.afollestad.materialdialogs.commons.color.ColorChooserDialog;
+import com.afollestad.materialdialogs.commons.simplelist.MaterialSimpleListAdapter;
+import com.afollestad.materialdialogs.commons.simplelist.MaterialSimpleListItem;
 import com.afollestad.materialdialogs.internal.MDTintHelper;
-import com.afollestad.materialdialogs.simplelist.MaterialSimpleListAdapter;
-import com.afollestad.materialdialogs.simplelist.MaterialSimpleListItem;
 import com.afollestad.materialdialogs.util.DialogUtils;
 
 import java.io.File;

+ 4 - 4
sample/src/main/res/xml-v11/preferences.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
 
-    <com.afollestad.materialdialogs.prefs.MaterialDialogPreference
+    <com.afollestad.materialdialogs.commons.prefs.MaterialDialogPreference
         android:dialogIcon="@drawable/ic_launcher"
         android:dialogMessage="@string/preference_dialog_message"
         android:dialogTitle="@string/preference_dialog_title"
@@ -11,7 +11,7 @@
         android:summary="@string/material_dialog_pref_summary"
         android:title="@string/material_dialog_pref_title" />
 
-    <com.afollestad.materialdialogs.prefs.MaterialListPreference
+    <com.afollestad.materialdialogs.commons.prefs.MaterialListPreference
         android:entries="@array/preference_values"
         android:entryValues="@array/preference_values"
         android:key="unused_key01"
@@ -20,7 +20,7 @@
         android:summary="@string/list_pref_desc"
         android:title="@string/list_pref_title" />
 
-    <com.afollestad.materialdialogs.prefs.MaterialMultiSelectListPreference
+    <com.afollestad.materialdialogs.commons.prefs.MaterialMultiSelectListPreference
         android:entries="@array/preference_values"
         android:entryValues="@array/preference_values"
         android:key="unused_key02"
@@ -29,7 +29,7 @@
         android:summary="@string/multilist_pref_desc"
         android:title="@string/multilist_pref_title" />
 
-    <com.afollestad.materialdialogs.prefs.MaterialEditTextPreference
+    <com.afollestad.materialdialogs.commons.prefs.MaterialEditTextPreference
         android:defaultValue="@string/edittext_pref_optionalvalue"
         android:dialogMessage="@string/optional_dialog_message"
         android:dialogTitle="@string/edittext_pref_dialogtitle"

+ 3 - 3
sample/src/main/res/xml/preferences.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
 
-    <com.afollestad.materialdialogs.prefs.MaterialDialogPreference
+    <com.afollestad.materialdialogs.commons.prefs.MaterialDialogPreference
         android:dialogIcon="@drawable/ic_launcher"
         android:dialogMessage="@string/preference_dialog_message"
         android:dialogTitle="@string/preference_dialog_title"
@@ -11,7 +11,7 @@
         android:summary="@string/material_dialog_pref_summary"
         android:title="@string/material_dialog_pref_title" />
 
-    <com.afollestad.materialdialogs.prefs.MaterialListPreference
+    <com.afollestad.materialdialogs.commons.prefs.MaterialListPreference
         android:entries="@array/preference_values"
         android:entryValues="@array/preference_values"
         android:key="unused_key01"
@@ -20,7 +20,7 @@
         android:summary="@string/list_pref_desc"
         android:title="@string/list_pref_title" />
 
-    <com.afollestad.materialdialogs.prefs.MaterialEditTextPreference
+    <com.afollestad.materialdialogs.commons.prefs.MaterialEditTextPreference
         android:defaultValue="@string/edittext_pref_optionalvalue"
         android:dialogMessage="@string/optional_dialog_message"
         android:dialogTitle="@string/edittext_pref_dialogtitle"

+ 1 - 1
settings.gradle

@@ -1 +1 @@
-include ':library', ':sample'
+include ':core', ':sample', ':commons'