From 6f4e311786222f81f9c2b103b42d1daf51c5b969 Mon Sep 17 00:00:00 2001 From: Vikramaditya Kukreja Date: Thu, 19 Apr 2018 19:11:23 +0530 Subject: [PATCH] Issue #159: Segregate layout files into folders --- app/build.gradle | 20 +- .../ard/activities/AnnActivity.java | 14 +- .../ard/activities/PostDetailsActivity.java | 5 - .../ard/adapters/AboutMacAdapter.java | 2 +- .../macbitsgoa/ard/adapters/AnnAdapter.java | 10 +- .../macbitsgoa/ard/adapters/ForumAdapter.java | 7 +- .../macbitsgoa/ard/adapters/HomeAdapter.java | 11 +- .../ard/adapters/PostDetailsAdapter.java | 6 - .../ard/fragments/DetailsFragment.java | 4 - .../macbitsgoa/ard/services/ForumService.java | 3 +- .../macbitsgoa/ard/services/HomeService.java | 170 ++++++------ .../ard/services/MaintenanceService.java | 6 +- .../ard/utils/CenterCropDrawable.java | 2 +- .../ard/viewholders/FaqViewHolder.java | 5 +- .../ard/viewholders/HomeItemViewHolder.java | 9 +- .../layout}/activity_about_mac.xml | 0 .../{ => activities/layout}/activity_ann.xml | 0 .../{ => activities/layout}/activity_auth.xml | 0 .../{ => activities/layout}/activity_chat.xml | 0 .../{ => activities/layout}/activity_main.xml | 0 .../layout}/activity_new_chat.xml | 0 .../layout}/activity_post_details.xml | 0 .../{ => activities/layout}/app_bar_main.xml | 0 .../{ => fragments/layout}/fragment_chat.xml | 0 .../layout}/fragment_detail.xml | 0 .../{ => fragments/layout}/fragment_forum.xml | 0 .../layout}/fragment_forum_content.xml | 0 .../layout}/fragment_forum_general.xml | 0 .../{ => fragments/layout}/fragment_home.xml | 0 .../layout}/vh_activity_chat_chatmsg.xml | 0 .../layout}/vh_ann_activity_item.xml | 0 .../layout}/vh_ann_card_fragment_home.xml | 0 .../vh_announcement_slideshow_title.xml | 0 .../{ => viewholders/layout}/vh_big_image.xml | 0 .../{ => viewholders/layout}/vh_big_text.xml | 0 .../layout}/vh_chat_document.xml | 0 .../layout}/vh_chat_fragment_chats.xml | 0 .../{ => viewholders/layout}/vh_developer.xml | 0 .../layout}/vh_fg_forum_general.xml | 0 .../{ => viewholders/layout}/vh_home_item.xml | 0 .../{ => viewholders/layout}/vh_mac_desc.xml | 0 .../{ => viewholders/layout}/vh_newchat.xml | 0 .../layout}/vh_slideshow_fragment_home.xml | 0 .../{ => viewholders/layout}/vh_text.xml | 0 app/src/main/res/values/colors.xml | 262 ++++++++++++++++++ 45 files changed, 381 insertions(+), 155 deletions(-) rename app/src/main/res/layout/{ => activities/layout}/activity_about_mac.xml (100%) rename app/src/main/res/layout/{ => activities/layout}/activity_ann.xml (100%) rename app/src/main/res/layout/{ => activities/layout}/activity_auth.xml (100%) rename app/src/main/res/layout/{ => activities/layout}/activity_chat.xml (100%) rename app/src/main/res/layout/{ => activities/layout}/activity_main.xml (100%) rename app/src/main/res/layout/{ => activities/layout}/activity_new_chat.xml (100%) rename app/src/main/res/layout/{ => activities/layout}/activity_post_details.xml (100%) rename app/src/main/res/layout/{ => activities/layout}/app_bar_main.xml (100%) rename app/src/main/res/layout/{ => fragments/layout}/fragment_chat.xml (100%) rename app/src/main/res/layout/{ => fragments/layout}/fragment_detail.xml (100%) rename app/src/main/res/layout/{ => fragments/layout}/fragment_forum.xml (100%) rename app/src/main/res/layout/{ => fragments/layout}/fragment_forum_content.xml (100%) rename app/src/main/res/layout/{ => fragments/layout}/fragment_forum_general.xml (100%) rename app/src/main/res/layout/{ => fragments/layout}/fragment_home.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_activity_chat_chatmsg.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_ann_activity_item.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_ann_card_fragment_home.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_announcement_slideshow_title.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_big_image.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_big_text.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_chat_document.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_chat_fragment_chats.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_developer.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_fg_forum_general.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_home_item.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_mac_desc.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_newchat.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_slideshow_fragment_home.xml (100%) rename app/src/main/res/layout/{ => viewholders/layout}/vh_text.xml (100%) diff --git a/app/build.gradle b/app/build.gradle index 498c86c..700406f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,14 +10,14 @@ ext { butterknifeVer = "8.8.1" checkstyleVer = '7.7' compileSdkVer = 26 - constraintVer = "1.0.2" + constraintVer = "1.1.0" crashAnalytics = "2.9.1" dexMakerVer = "1.2" espContVer = "2.2.2" espCoreVer = "2.2.2" espIntVer = "2.2.2" espUIAVer = "2.1.2" - firebaseVer = "12.0.1" + firebaseVer = "15.0.0" flexboxVer = "0.3.1" glideVer = "4.0.0-RC0" playServicesVer = firebaseVer @@ -30,7 +30,7 @@ ext { roboElecVer = "3.4.2" rxJavaVer = "1.3.0" rxJava2Ver = "2.1.6" - supportVer = "27.1.0" + supportVer = "27.1.1" targetSdkVer = 26 verCode = 9 verName = "1.7-beta" @@ -106,6 +106,17 @@ android { targetCompatibility 1.8 sourceCompatibility 1.8 } + sourceSets { + main { + res.srcDirs = [ + 'src/main/res/layout/activities', + 'src/main/res/layout/viewholders', + 'src/main/res/layout/fragments', + 'src/main/res/layout', + 'src/main/res' + ] + } + } } dependencies { @@ -119,7 +130,6 @@ dependencies { implementation "com.android.support:cardview-v7:${supportVer}" implementation "com.android.support:support-compat:${supportVer}" - implementation 'com.android.support.constraint:constraint-layout:1.0.2' implementation "com.google.firebase:firebase-core:${firebaseVer}" implementation "com.google.firebase:firebase-database:${firebaseVer}" implementation "com.google.firebase:firebase-storage:${firebaseVer}" @@ -182,7 +192,7 @@ dependencies { } -def getDate() { +static def getDate() { new Date().format('yyyyMMdd') } diff --git a/app/src/main/java/com/macbitsgoa/ard/activities/AnnActivity.java b/app/src/main/java/com/macbitsgoa/ard/activities/AnnActivity.java index 87cd577..e9e0e62 100644 --- a/app/src/main/java/com/macbitsgoa/ard/activities/AnnActivity.java +++ b/app/src/main/java/com/macbitsgoa/ard/activities/AnnActivity.java @@ -36,34 +36,28 @@ public class AnnActivity extends BaseActivity implements AdapterNotificationList * TAG for class. */ public static final String TAG = AnnActivity.class.getSimpleName(); - + /** + * Static boolean variable to prevent notification service to show when activity is visible. + */ + public static boolean inForeground = false; /** * Toolbar for this activity. */ @BindView(R.id.toolbar_activity_ann) Toolbar toolbar; - /** * Recyclerview for displaying announcements. */ @BindView(R.id.rv_activity_ann) RecyclerView annRV; - /** * TextView to display info message when recyclerview is empty. */ @BindView(R.id.tv_activity_ann_empty) TextView emptyListTV; - private DatabaseReference annRef = getRootReference().child(AHC.FDR_ANN); - private ValueEventListener annRefVEL; - /** - * Static boolean variable to prevent notification service to show when activity is visible. - */ - public static boolean inForeground = false; - @Override protected void onCreate(final Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/app/src/main/java/com/macbitsgoa/ard/activities/PostDetailsActivity.java b/app/src/main/java/com/macbitsgoa/ard/activities/PostDetailsActivity.java index 22074d0..5a96e9b 100644 --- a/app/src/main/java/com/macbitsgoa/ard/activities/PostDetailsActivity.java +++ b/app/src/main/java/com/macbitsgoa/ard/activities/PostDetailsActivity.java @@ -5,20 +5,15 @@ import android.support.v7.widget.RecyclerView; import android.support.v7.widget.Toolbar; import android.view.View; -import android.widget.FrameLayout; -import android.widget.Toast; import com.macbitsgoa.ard.R; import com.macbitsgoa.ard.adapters.PostDetailsAdapter; -import com.macbitsgoa.ard.keys.AnnItemKeys; import com.macbitsgoa.ard.keys.HomeItemKeys; -import com.macbitsgoa.ard.models.AnnItem; import com.macbitsgoa.ard.models.TypeItem; import com.macbitsgoa.ard.models.home.HomeItem; import com.macbitsgoa.ard.models.home.PhotoItem; import com.macbitsgoa.ard.models.home.TextItem; import com.macbitsgoa.ard.types.HomeType; -import com.macbitsgoa.ard.types.PostType; import java.util.ArrayList; import java.util.List; diff --git a/app/src/main/java/com/macbitsgoa/ard/adapters/AboutMacAdapter.java b/app/src/main/java/com/macbitsgoa/ard/adapters/AboutMacAdapter.java index ee85196..8df546f 100644 --- a/app/src/main/java/com/macbitsgoa/ard/adapters/AboutMacAdapter.java +++ b/app/src/main/java/com/macbitsgoa/ard/adapters/AboutMacAdapter.java @@ -34,7 +34,7 @@ public class AboutMacAdapter extends RecyclerView.Adapter i private Activity activity; - public AboutMacAdapter( BaseActivity activity) { + public AboutMacAdapter(BaseActivity activity) { this.activity = activity; DatabaseReference devRef = activity.getRootReference() .child(AHC.FDR_ABOUT_MAC) diff --git a/app/src/main/java/com/macbitsgoa/ard/adapters/AnnAdapter.java b/app/src/main/java/com/macbitsgoa/ard/adapters/AnnAdapter.java index 90b89c4..81e191a 100644 --- a/app/src/main/java/com/macbitsgoa/ard/adapters/AnnAdapter.java +++ b/app/src/main/java/com/macbitsgoa/ard/adapters/AnnAdapter.java @@ -34,16 +34,14 @@ public class AnnAdapter extends BaseAdapter * TAG for class. */ public static final String TAG = AnnAdapter.class.getSimpleName(); - - /** - * List to hold all annItems. - */ - private RealmResults annItems; - /** * Listener object for item changes. */ private final AdapterNotificationListener anl; + /** + * List to hold all annItems. + */ + private RealmResults annItems; /** * Constructor to set listener as well. diff --git a/app/src/main/java/com/macbitsgoa/ard/adapters/ForumAdapter.java b/app/src/main/java/com/macbitsgoa/ard/adapters/ForumAdapter.java index fc89a12..7b2a295 100644 --- a/app/src/main/java/com/macbitsgoa/ard/adapters/ForumAdapter.java +++ b/app/src/main/java/com/macbitsgoa/ard/adapters/ForumAdapter.java @@ -29,16 +29,13 @@ public class ForumAdapter extends BaseAdapter implements OrderedRealmCollectionChangeListener> { + private final String section; + private final AdapterNotificationListener anl; /** * Item list to use as data source. */ private RealmResults faqItems; - - private final String section; - private Sort defaultSort; - - private final AdapterNotificationListener anl; /** * Maintains expanded text info. */ diff --git a/app/src/main/java/com/macbitsgoa/ard/adapters/HomeAdapter.java b/app/src/main/java/com/macbitsgoa/ard/adapters/HomeAdapter.java index 9f1cbd1..da33334 100644 --- a/app/src/main/java/com/macbitsgoa/ard/adapters/HomeAdapter.java +++ b/app/src/main/java/com/macbitsgoa/ard/adapters/HomeAdapter.java @@ -39,21 +39,18 @@ public class HomeAdapter extends BaseAdapter implements * TAG for class. */ public static final String TAG = HomeAdapter.class.getSimpleName(); - - /** - * List to hold all data. - */ - private RealmResults homeItems; - /** * Context for use with glide. */ private final Context context; - /** * Notification listener. */ private final AdapterNotificationListener anl; + /** + * List to hold all data. + */ + private RealmResults homeItems; /** * Constructor that populates recyclerView. diff --git a/app/src/main/java/com/macbitsgoa/ard/adapters/PostDetailsAdapter.java b/app/src/main/java/com/macbitsgoa/ard/adapters/PostDetailsAdapter.java index 2645a75..59c2da8 100644 --- a/app/src/main/java/com/macbitsgoa/ard/adapters/PostDetailsAdapter.java +++ b/app/src/main/java/com/macbitsgoa/ard/adapters/PostDetailsAdapter.java @@ -6,8 +6,6 @@ import android.net.Uri; import android.support.annotation.NonNull; import android.support.v7.widget.RecyclerView; -import android.text.Html; -import android.text.method.LinkMovementMethod; import android.util.Log; import android.view.LayoutInflater; import android.view.View; @@ -15,14 +13,10 @@ import android.widget.Toast; import com.macbitsgoa.ard.R; -import com.macbitsgoa.ard.models.AnnItem; import com.macbitsgoa.ard.models.TypeItem; import com.macbitsgoa.ard.models.home.PhotoItem; import com.macbitsgoa.ard.models.home.TextItem; import com.macbitsgoa.ard.types.HomeType; -import com.macbitsgoa.ard.types.PostType; -import com.macbitsgoa.ard.utils.AHC; -import com.macbitsgoa.ard.viewholders.AnnViewHolder; import com.macbitsgoa.ard.viewholders.ImageViewHolder; import com.macbitsgoa.ard.viewholders.TextViewHolder; diff --git a/app/src/main/java/com/macbitsgoa/ard/fragments/DetailsFragment.java b/app/src/main/java/com/macbitsgoa/ard/fragments/DetailsFragment.java index 14ac2ca..73ec11a 100644 --- a/app/src/main/java/com/macbitsgoa/ard/fragments/DetailsFragment.java +++ b/app/src/main/java/com/macbitsgoa/ard/fragments/DetailsFragment.java @@ -13,16 +13,13 @@ import com.bumptech.glide.Glide; import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions; import com.bumptech.glide.request.RequestOptions; -import com.google.firebase.auth.FirebaseAuth; import com.google.firebase.database.DataSnapshot; import com.google.firebase.database.DatabaseError; import com.google.firebase.database.DatabaseReference; import com.google.firebase.database.ValueEventListener; import com.macbitsgoa.ard.R; import com.macbitsgoa.ard.activities.AboutMacActivity; -import com.macbitsgoa.ard.activities.AuthActivity; import com.macbitsgoa.ard.keys.UserItemKeys; -import com.macbitsgoa.ard.services.ForumService; import com.macbitsgoa.ard.utils.AHC; import com.macbitsgoa.ard.utils.Browser; @@ -30,7 +27,6 @@ import butterknife.ButterKnife; import butterknife.OnClick; import butterknife.Unbinder; -import io.realm.exceptions.RealmException; /** * A simple {@link Fragment} subclass. diff --git a/app/src/main/java/com/macbitsgoa/ard/services/ForumService.java b/app/src/main/java/com/macbitsgoa/ard/services/ForumService.java index 36c0305..cb280f1 100644 --- a/app/src/main/java/com/macbitsgoa/ard/services/ForumService.java +++ b/app/src/main/java/com/macbitsgoa/ard/services/ForumService.java @@ -28,13 +28,12 @@ public class ForumService extends BaseIntentService { * Tag for this class. */ public static final String TAG = ForumService.class.getSimpleName(); + DatabaseReference forumRef; public ForumService() { super(TAG); } - DatabaseReference forumRef; - @Override protected void onHandleIntent(@Nullable final Intent intent) { super.onHandleIntent(intent); diff --git a/app/src/main/java/com/macbitsgoa/ard/services/HomeService.java b/app/src/main/java/com/macbitsgoa/ard/services/HomeService.java index 8b84dbf..23faa92 100644 --- a/app/src/main/java/com/macbitsgoa/ard/services/HomeService.java +++ b/app/src/main/java/com/macbitsgoa/ard/services/HomeService.java @@ -35,20 +35,95 @@ public class HomeService extends BaseJobService { * TAG for class. */ public static final String TAG = HomeService.class.getSimpleName(); - - private boolean completedHome = false; - private boolean completedAnn = false; - private boolean completedSlideshow = false; - - private JobParameters job; - DatabaseReference homeRef; DatabaseReference annRef; DatabaseReference imageSlideshowRef; - ValueEventListener homeRefVEL; ValueEventListener annRefVEL; ValueEventListener imageRefVEL; + private boolean completedHome = false; + private boolean completedAnn = false; + private boolean completedSlideshow = false; + private JobParameters job; + + @SuppressWarnings("OverlyLongMethod") + private static void saveHomeSnapshotToRealm(@Nullable final DataSnapshot dataSnapshot) { + if (dataSnapshot == null) return; + final Realm database = Realm.getDefaultInstance(); + for (DataSnapshot child : dataSnapshot.getChildren()) { + final String key = child.getKey(); + final String author = child.child(HomeItemKeys.AUTHOR).getValue(String.class); + final Date date = child.child(HomeItemKeys.DATE).getValue(Date.class); + if (date == null || !child.hasChild(HomeItemKeys.SUB_SECTIONS)) continue; + database.executeTransaction(r -> { + HomeItem hi = r + .where(HomeItem.class) + .equalTo(HomeItemKeys.KEY, key) + .findFirst(); + if (hi == null) { + hi = r.createObject(HomeItem.class, key); + AHC.logd(TAG, "Creating new home item"); + } else if (hi.getDate().getTime() == date.getTime()) { + return; + } + hi.setAuthor(author); + hi.setDate(date); + final RealmList images = new RealmList<>(); + final RealmList texts = new RealmList<>(); + for (final DataSnapshot subSectionDS + : child.child(HomeItemKeys.SUB_SECTIONS).getChildren()) { + final int type = subSectionDS.child(HomeItemKeys.TYPE).getValue(Integer.class); + final String data = subSectionDS.child(HomeItemKeys.DATA).getValue(String.class); + switch (type) { + case HomeType.FDR_PHOTO_ITEM: + final PhotoItem pi = r.createObject(PhotoItem.class); + pi.setPhotoUrl(data); + pi.setPriority(subSectionDS.getKey()); + images.add(pi); + break; + case HomeType.FDR_TEXT_ITEM: + final TextItem ti = r.createObject(TextItem.class); + ti.setData(data); + ti.setPriority(subSectionDS.getKey()); + texts.add(ti); + break; + } + } + hi.setImages(images); + hi.setTexts(texts); + }); + } + database.close(); + } + + public static void saveAnnSnapshotToRealm(@Nullable final DataSnapshot dataSnapshot) { + if (dataSnapshot == null) return; + final Realm database = Realm.getDefaultInstance(); + for (final DataSnapshot child : dataSnapshot.getChildren()) { + final String key = child.getKey(); + final String data = child.child(AnnItemKeys.DATA).getValue(String.class); + final Date date = child.child(AnnItemKeys.DATE).getValue(Date.class); + final String author = child.child(AnnItemKeys.AUTHOR).getValue(String.class); + if (data == null || date == null || data.length() == 0) { + continue; + } + database.executeTransaction(r -> { + AnnItem annItem = r.where(AnnItem.class) + .equalTo(AnnItemKeys.KEY, key) + .findFirst(); + if (annItem == null) { + annItem = r.createObject(AnnItem.class, key); + } else { + if (annItem.getDate().getTime() == date.getTime()) + return; + } + annItem.setAuthor(author); + annItem.setDate(date); + annItem.setData(data); + }); + } + database.close(); + } @Override public boolean onStartJob(JobParameters job) { @@ -159,85 +234,6 @@ private void saveSlideshowSnapshotToRealm(@NonNull DataSnapshot dataSnapshot) { database.close(); } - @SuppressWarnings("OverlyLongMethod") - private static void saveHomeSnapshotToRealm(@Nullable final DataSnapshot dataSnapshot) { - if (dataSnapshot == null) return; - final Realm database = Realm.getDefaultInstance(); - for (DataSnapshot child : dataSnapshot.getChildren()) { - final String key = child.getKey(); - final String author = child.child(HomeItemKeys.AUTHOR).getValue(String.class); - final Date date = child.child(HomeItemKeys.DATE).getValue(Date.class); - if (date == null || !child.hasChild(HomeItemKeys.SUB_SECTIONS)) continue; - database.executeTransaction(r -> { - HomeItem hi = r - .where(HomeItem.class) - .equalTo(HomeItemKeys.KEY, key) - .findFirst(); - if (hi == null) { - hi = r.createObject(HomeItem.class, key); - AHC.logd(TAG, "Creating new home item"); - } else if (hi.getDate().getTime() == date.getTime()) { - return; - } - hi.setAuthor(author); - hi.setDate(date); - final RealmList images = new RealmList<>(); - final RealmList texts = new RealmList<>(); - for (final DataSnapshot subSectionDS - : child.child(HomeItemKeys.SUB_SECTIONS).getChildren()) { - final int type = subSectionDS.child(HomeItemKeys.TYPE).getValue(Integer.class); - final String data = subSectionDS.child(HomeItemKeys.DATA).getValue(String.class); - switch (type) { - case HomeType.FDR_PHOTO_ITEM: - final PhotoItem pi = r.createObject(PhotoItem.class); - pi.setPhotoUrl(data); - pi.setPriority(subSectionDS.getKey()); - images.add(pi); - break; - case HomeType.FDR_TEXT_ITEM: - final TextItem ti = r.createObject(TextItem.class); - ti.setData(data); - ti.setPriority(subSectionDS.getKey()); - texts.add(ti); - break; - } - } - hi.setImages(images); - hi.setTexts(texts); - }); - } - database.close(); - } - - public static void saveAnnSnapshotToRealm(@Nullable final DataSnapshot dataSnapshot) { - if (dataSnapshot == null) return; - final Realm database = Realm.getDefaultInstance(); - for (final DataSnapshot child : dataSnapshot.getChildren()) { - final String key = child.getKey(); - final String data = child.child(AnnItemKeys.DATA).getValue(String.class); - final Date date = child.child(AnnItemKeys.DATE).getValue(Date.class); - final String author = child.child(AnnItemKeys.AUTHOR).getValue(String.class); - if (data == null || date == null || data.length() == 0) { - continue; - } - database.executeTransaction(r -> { - AnnItem annItem = r.where(AnnItem.class) - .equalTo(AnnItemKeys.KEY, key) - .findFirst(); - if (annItem == null) { - annItem = r.createObject(AnnItem.class, key); - } else { - if (annItem.getDate().getTime() == date.getTime()) - return; - } - annItem.setAuthor(author); - annItem.setDate(date); - annItem.setData(data); - }); - } - database.close(); - } - private void checkJobStatus() { AHC.logd(TAG, "Status of jobs is " + completedAnn + " and " + completedHome); if (completedAnn && completedHome && completedSlideshow) { diff --git a/app/src/main/java/com/macbitsgoa/ard/services/MaintenanceService.java b/app/src/main/java/com/macbitsgoa/ard/services/MaintenanceService.java index 9f8bac9..84c4ae9 100644 --- a/app/src/main/java/com/macbitsgoa/ard/services/MaintenanceService.java +++ b/app/src/main/java/com/macbitsgoa/ard/services/MaintenanceService.java @@ -28,15 +28,13 @@ public class MaintenanceService extends BaseJobService { * Tag for this class. */ public static final String TAG = MaintenanceService.class.getSimpleName(); - + DatabaseReference deleteRef; + ValueEventListener deleteRefVEL; /** * Current job parameters. */ private JobParameters jobParameters; - DatabaseReference deleteRef; - ValueEventListener deleteRefVEL; - @Override public boolean onStartJob(final JobParameters job) { jobParameters = job; diff --git a/app/src/main/java/com/macbitsgoa/ard/utils/CenterCropDrawable.java b/app/src/main/java/com/macbitsgoa/ard/utils/CenterCropDrawable.java index e074269..3e1cbeb 100644 --- a/app/src/main/java/com/macbitsgoa/ard/utils/CenterCropDrawable.java +++ b/app/src/main/java/com/macbitsgoa/ard/utils/CenterCropDrawable.java @@ -15,7 +15,7 @@ /** * Drawable decorator which draws the target drawable similarly to an ImageView with scaleType=centerCrop. - * + *

*

Example usage: * final Drawable bg = getResources().getDrawable(R.drawable.screen); * getWindow().setBackgroundDrawable(new CenterCropDrawable(bg)); diff --git a/app/src/main/java/com/macbitsgoa/ard/viewholders/FaqViewHolder.java b/app/src/main/java/com/macbitsgoa/ard/viewholders/FaqViewHolder.java index a6c2f6c..19dac1a 100644 --- a/app/src/main/java/com/macbitsgoa/ard/viewholders/FaqViewHolder.java +++ b/app/src/main/java/com/macbitsgoa/ard/viewholders/FaqViewHolder.java @@ -27,23 +27,20 @@ */ public class FaqViewHolder extends RecyclerView.ViewHolder { + private final SparseBooleanArray sba; /** * TextView to display question data. */ @BindView(R.id.tv_vh_fg_forum_general_question) TextView questionTV; - /** * Expandable text view to display answer data. */ @BindView(R.id.tv_vh_fg_forum_general_answer) TextView answerTV; - @BindView(R.id.tv_vh_fg_forum_general_sub_section) TextView subSectionTV; - private final SparseBooleanArray sba; - /** * Default constructor. * diff --git a/app/src/main/java/com/macbitsgoa/ard/viewholders/HomeItemViewHolder.java b/app/src/main/java/com/macbitsgoa/ard/viewholders/HomeItemViewHolder.java index 48ba4e5..2eca317 100644 --- a/app/src/main/java/com/macbitsgoa/ard/viewholders/HomeItemViewHolder.java +++ b/app/src/main/java/com/macbitsgoa/ard/viewholders/HomeItemViewHolder.java @@ -28,37 +28,30 @@ * @author Vikramaditya Kukreja */ public class HomeItemViewHolder extends RecyclerView.ViewHolder { + private final Context context; @BindView(R.id.imgView_home_item) ImageView imageView; - @BindView(R.id.tv_vh_home_item_1) TextView textView1; - @BindView(R.id.tv_vh_home_item_2) TextView textView2; - /** * Status bar that contains useful info. Use this view for visibility work only. */ @BindView(R.id.ll_vh_home_status) LinearLayout statusBar; - /** * Textview that handles # of images in the news. */ @BindView(R.id.tv_vh_home_item_image_count) TextView imageCount; - /** * Textview that handles # of comments. */ @BindView(R.id.tv_vh_home_item_comment_count) TextView commentCount; - private HomeItem hi; - private final Context context; - /** * Constructor taking item view as param * diff --git a/app/src/main/res/layout/activity_about_mac.xml b/app/src/main/res/layout/activities/layout/activity_about_mac.xml similarity index 100% rename from app/src/main/res/layout/activity_about_mac.xml rename to app/src/main/res/layout/activities/layout/activity_about_mac.xml diff --git a/app/src/main/res/layout/activity_ann.xml b/app/src/main/res/layout/activities/layout/activity_ann.xml similarity index 100% rename from app/src/main/res/layout/activity_ann.xml rename to app/src/main/res/layout/activities/layout/activity_ann.xml diff --git a/app/src/main/res/layout/activity_auth.xml b/app/src/main/res/layout/activities/layout/activity_auth.xml similarity index 100% rename from app/src/main/res/layout/activity_auth.xml rename to app/src/main/res/layout/activities/layout/activity_auth.xml diff --git a/app/src/main/res/layout/activity_chat.xml b/app/src/main/res/layout/activities/layout/activity_chat.xml similarity index 100% rename from app/src/main/res/layout/activity_chat.xml rename to app/src/main/res/layout/activities/layout/activity_chat.xml diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activities/layout/activity_main.xml similarity index 100% rename from app/src/main/res/layout/activity_main.xml rename to app/src/main/res/layout/activities/layout/activity_main.xml diff --git a/app/src/main/res/layout/activity_new_chat.xml b/app/src/main/res/layout/activities/layout/activity_new_chat.xml similarity index 100% rename from app/src/main/res/layout/activity_new_chat.xml rename to app/src/main/res/layout/activities/layout/activity_new_chat.xml diff --git a/app/src/main/res/layout/activity_post_details.xml b/app/src/main/res/layout/activities/layout/activity_post_details.xml similarity index 100% rename from app/src/main/res/layout/activity_post_details.xml rename to app/src/main/res/layout/activities/layout/activity_post_details.xml diff --git a/app/src/main/res/layout/app_bar_main.xml b/app/src/main/res/layout/activities/layout/app_bar_main.xml similarity index 100% rename from app/src/main/res/layout/app_bar_main.xml rename to app/src/main/res/layout/activities/layout/app_bar_main.xml diff --git a/app/src/main/res/layout/fragment_chat.xml b/app/src/main/res/layout/fragments/layout/fragment_chat.xml similarity index 100% rename from app/src/main/res/layout/fragment_chat.xml rename to app/src/main/res/layout/fragments/layout/fragment_chat.xml diff --git a/app/src/main/res/layout/fragment_detail.xml b/app/src/main/res/layout/fragments/layout/fragment_detail.xml similarity index 100% rename from app/src/main/res/layout/fragment_detail.xml rename to app/src/main/res/layout/fragments/layout/fragment_detail.xml diff --git a/app/src/main/res/layout/fragment_forum.xml b/app/src/main/res/layout/fragments/layout/fragment_forum.xml similarity index 100% rename from app/src/main/res/layout/fragment_forum.xml rename to app/src/main/res/layout/fragments/layout/fragment_forum.xml diff --git a/app/src/main/res/layout/fragment_forum_content.xml b/app/src/main/res/layout/fragments/layout/fragment_forum_content.xml similarity index 100% rename from app/src/main/res/layout/fragment_forum_content.xml rename to app/src/main/res/layout/fragments/layout/fragment_forum_content.xml diff --git a/app/src/main/res/layout/fragment_forum_general.xml b/app/src/main/res/layout/fragments/layout/fragment_forum_general.xml similarity index 100% rename from app/src/main/res/layout/fragment_forum_general.xml rename to app/src/main/res/layout/fragments/layout/fragment_forum_general.xml diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragments/layout/fragment_home.xml similarity index 100% rename from app/src/main/res/layout/fragment_home.xml rename to app/src/main/res/layout/fragments/layout/fragment_home.xml diff --git a/app/src/main/res/layout/vh_activity_chat_chatmsg.xml b/app/src/main/res/layout/viewholders/layout/vh_activity_chat_chatmsg.xml similarity index 100% rename from app/src/main/res/layout/vh_activity_chat_chatmsg.xml rename to app/src/main/res/layout/viewholders/layout/vh_activity_chat_chatmsg.xml diff --git a/app/src/main/res/layout/vh_ann_activity_item.xml b/app/src/main/res/layout/viewholders/layout/vh_ann_activity_item.xml similarity index 100% rename from app/src/main/res/layout/vh_ann_activity_item.xml rename to app/src/main/res/layout/viewholders/layout/vh_ann_activity_item.xml diff --git a/app/src/main/res/layout/vh_ann_card_fragment_home.xml b/app/src/main/res/layout/viewholders/layout/vh_ann_card_fragment_home.xml similarity index 100% rename from app/src/main/res/layout/vh_ann_card_fragment_home.xml rename to app/src/main/res/layout/viewholders/layout/vh_ann_card_fragment_home.xml diff --git a/app/src/main/res/layout/vh_announcement_slideshow_title.xml b/app/src/main/res/layout/viewholders/layout/vh_announcement_slideshow_title.xml similarity index 100% rename from app/src/main/res/layout/vh_announcement_slideshow_title.xml rename to app/src/main/res/layout/viewholders/layout/vh_announcement_slideshow_title.xml diff --git a/app/src/main/res/layout/vh_big_image.xml b/app/src/main/res/layout/viewholders/layout/vh_big_image.xml similarity index 100% rename from app/src/main/res/layout/vh_big_image.xml rename to app/src/main/res/layout/viewholders/layout/vh_big_image.xml diff --git a/app/src/main/res/layout/vh_big_text.xml b/app/src/main/res/layout/viewholders/layout/vh_big_text.xml similarity index 100% rename from app/src/main/res/layout/vh_big_text.xml rename to app/src/main/res/layout/viewholders/layout/vh_big_text.xml diff --git a/app/src/main/res/layout/vh_chat_document.xml b/app/src/main/res/layout/viewholders/layout/vh_chat_document.xml similarity index 100% rename from app/src/main/res/layout/vh_chat_document.xml rename to app/src/main/res/layout/viewholders/layout/vh_chat_document.xml diff --git a/app/src/main/res/layout/vh_chat_fragment_chats.xml b/app/src/main/res/layout/viewholders/layout/vh_chat_fragment_chats.xml similarity index 100% rename from app/src/main/res/layout/vh_chat_fragment_chats.xml rename to app/src/main/res/layout/viewholders/layout/vh_chat_fragment_chats.xml diff --git a/app/src/main/res/layout/vh_developer.xml b/app/src/main/res/layout/viewholders/layout/vh_developer.xml similarity index 100% rename from app/src/main/res/layout/vh_developer.xml rename to app/src/main/res/layout/viewholders/layout/vh_developer.xml diff --git a/app/src/main/res/layout/vh_fg_forum_general.xml b/app/src/main/res/layout/viewholders/layout/vh_fg_forum_general.xml similarity index 100% rename from app/src/main/res/layout/vh_fg_forum_general.xml rename to app/src/main/res/layout/viewholders/layout/vh_fg_forum_general.xml diff --git a/app/src/main/res/layout/vh_home_item.xml b/app/src/main/res/layout/viewholders/layout/vh_home_item.xml similarity index 100% rename from app/src/main/res/layout/vh_home_item.xml rename to app/src/main/res/layout/viewholders/layout/vh_home_item.xml diff --git a/app/src/main/res/layout/vh_mac_desc.xml b/app/src/main/res/layout/viewholders/layout/vh_mac_desc.xml similarity index 100% rename from app/src/main/res/layout/vh_mac_desc.xml rename to app/src/main/res/layout/viewholders/layout/vh_mac_desc.xml diff --git a/app/src/main/res/layout/vh_newchat.xml b/app/src/main/res/layout/viewholders/layout/vh_newchat.xml similarity index 100% rename from app/src/main/res/layout/vh_newchat.xml rename to app/src/main/res/layout/viewholders/layout/vh_newchat.xml diff --git a/app/src/main/res/layout/vh_slideshow_fragment_home.xml b/app/src/main/res/layout/viewholders/layout/vh_slideshow_fragment_home.xml similarity index 100% rename from app/src/main/res/layout/vh_slideshow_fragment_home.xml rename to app/src/main/res/layout/viewholders/layout/vh_slideshow_fragment_home.xml diff --git a/app/src/main/res/layout/vh_text.xml b/app/src/main/res/layout/viewholders/layout/vh_text.xml similarity index 100% rename from app/src/main/res/layout/vh_text.xml rename to app/src/main/res/layout/viewholders/layout/vh_text.xml diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 86cef61..130c008 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -5,24 +5,278 @@ @color/blue_700 @color/orange_A400 + #FFEBEE + #FFCDD2 + #EF9A9A + #E57373 + #EF5350 + #F44336 + #E53935 #D32F2F + #C62828 + #B71C1C + #FF8A80 + #FF5252 + #FF1744 + #D50000 + + #EDE7F6 + #D1C4E9 + #B39DDB + #9575CD + #7E57C2 + #673AB7 + #5E35B1 + #512DA8 + #4527A0 + #311B92 + #B388FF + #7C4DFF + #651FFF + #6200EA + + #E1F5FE + #B3E5FC + #81D4FA + #4FC3F7 + #29B6F6 + #03A9F4 + #039BE5 + #0288D1 + #0277BD + #01579B + #80D8FF + #40C4FF + #00B0FF + #0091EA #E8F5E9 + #C8E6C9 + #A5D6A7 + #81C784 + #66BB6A + #4CAF50 + #43A047 #388E3C + #2E7D32 #1B5E20 + #B9F6CA + #69F0AE + #00E676 + #00C853 + + #FFFDE7 + #FFF9C4 + #FFF59D + #FFF176 + #FFEE58 + #FFEB3B + #FDD835 + #FBC02D + #F9A825 + #F57F17 + #FFFF8D + #FFFF00 + #FFEA00 + #FFD600 + + #FBE9E7 + #FFCCBC + #FFAB91 + #FF8A65 + #FF7043 + #FF5722 + #F4511E + #E64A19 + #D84315 + #BF360C + #FF9E80 + #FF6E40 + #FF3D00 + #DD2C00 + + #ECEFF1 + #CFD8DC + #B0BEC5 + #90A4AE + #78909C + #607D8B + #546E7A + #455A64 + #37474F + #263238 + + #FCE4EC + #F8BBD0 + #F48FB1 + #F06292 + #EC407A + #E91E63 + #D81B60 + #C2185B + #AD1457 + #880E4F + #FF80AB + #FF4081 + #F50057 + #C51162 + + #E8EAF6 + #C5CAE9 + #9FA8DA + #7986CB + #5C6BC0 + #3F51B5 + #3949AB + #303F9F + #283593 + #1A237E + #8C9EFF + #536DFE + #3D5AFE + #304FFE + #E0F7FA + #B2EBF2 + #80DEEA + #4DD0E1 + #26C6DA + #00BCD4 + #00ACC1 + #0097A7 + #00838F + #006064 + #84FFFF + #18FFFF + #00E5FF + #00B8D4 + + #F1F8E9 + #DCEDC8 + #C5E1A5 + #AED581 + #9CCC65 + #8BC34A + #7CB342 + #689F38 + #558B2F + #33691E + #CCFF90 + #B2FF59 + #76FF03 + #64DD17 + + #FFF8E1 + #FFECB3 + #FFE082 + #FFD54F + #FFCA28 + #FFC107 + #FFB300 + #FFA000 + #FF8F00 + #FF6F00 + #FFE57F + #FFD740 + #FFC400 + #FFAB00 + + #EFEBE9 + #D7CCC8 + #BCAAA4 + #A1887F + #8D6E63 + #795548 + #6D4C41 + #5D4037 + #4E342E + #3E2723 + + #F3E5F5 + #E1BEE7 + #CE93D8 + #BA68C8 + #AB47BC + #9C27B0 + #8E24AA + #7B1FA2 + #6A1B9A + #4A148C + #EA80FC + #E040FB + #D500F9 + #AA00FF + + #E3F2FD + #BBDEFB + #90CAF9 #64B5F6 + #42A5F5 #2196F3 + #1E88E5 #1976D2 + #1565C0 #0D47A1 + #82B1FF + #448AFF + #2979FF + #2962FF + + #E0F2F1 + #B2DFDB + #80CBC4 + #4DB6AC + #26A69A + #009688 + #00897B + #00796B + #00695C + #004D40 + #A7FFEB + #64FFDA + #1DE9B6 + #00BFA5 + + #F9FBE7 + #F0F4C3 + #E6EE9C + #DCE775 + #D4E157 + #CDDC39 + #C0CA33 + #AFB42B + #9E9D24 + #827717 + #F4FF81 + #EEFF41 + #C6FF00 + #AEEA00 + #FFF3E0 + #FFE0B2 + #FFCC80 + #FFB74D + #FFA726 + #FF9800 + #FB8C00 + #F57C00 #EF6C00 + #E65100 + #FFD180 + #FFAB40 #FF9100 + #FF6D00 #FAFAFA #F5F5F5 + #EEEEEE + #E0E0E0 + #BDBDBD #9E9E9E + #757575 #616161 + #424242 + #212121 #000000 #FFFFFF @@ -30,8 +284,16 @@ #FFEEEEEE + #DE000000 + #8A000000 + #61000000 + #61000000 + #FFFFFFFF + #B3FFFFFF + #80FFFFFF + #80FFFFFF #CDFFFFFF