diff --git a/Android/app/src/main/java/io/github/project_travel_mate/MainActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/MainActivity.java index db55425a7c..a6e0cf3ed3 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/MainActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/MainActivity.java @@ -39,7 +39,9 @@ import java.io.IOException; import java.util.Objects; +import butterknife.BindView; import butterknife.ButterKnife; + import io.github.project_travel_mate.destinations.CityFragment; import io.github.project_travel_mate.favourite.FavouriteCitiesFragment; import io.github.project_travel_mate.friend.FriendsProfileActivity; @@ -87,13 +89,19 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On private SharedPreferences mSharedPreferences; private String mToken; - private DrawerLayout mDrawer; + private Handler mHandler; - private NavigationView mNavigationView; private int mPreviousMenuItemId; private static final String travelShortcut = "io.github.project_travel_mate.TravelShortcut"; private static final String myTripsShortcut = "io.github.project_travel_mate.MyTripsShortcut"; private static final String utilitiesShortcut = "io.github.project_travel_mate.UtilitiesShortcut"; + @BindView(R.id.toolbar) + Toolbar toolbar; + @BindView(R.id.drawer_layout) + DrawerLayout Drawer; + @BindView(R.id.nav_view) + NavigationView NavigationView; + @Override protected void onCreate(Bundle savedInstanceState) { @@ -101,7 +109,7 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_main); ButterKnife.bind(this); - Toolbar toolbar = findViewById(R.id.toolbar); + setSupportActionBar(toolbar); mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(this); @@ -142,13 +150,13 @@ protected void onCreate(Bundle savedInstanceState) { // Get runtime permissions for Android M getRuntimePermissions(); - mDrawer = findViewById(R.id.drawer_layout); + ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, - mDrawer, + Drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); - mDrawer.addDrawerListener(toggle); + Drawer.addDrawerListener(toggle); toggle.syncState(); String emailId = mSharedPreferences.getString(USER_EMAIL, getString(R.string.app_name)); @@ -175,17 +183,16 @@ protected void onCreate(Bundle savedInstanceState) { void defaultSelectedNavMenu(int resId) { - mNavigationView = findViewById(R.id.nav_view); - Menu menu = mNavigationView.getMenu(); + + Menu menu = NavigationView.getMenu(); MenuItem menuItem = menu.findItem(resId); menuItem.setChecked(true); } @Override public void onBackPressed() { - DrawerLayout drawer = findViewById(R.id.drawer_layout); - if (drawer != null && drawer.isDrawerOpen(GravityCompat.START)) { - drawer.closeDrawer(GravityCompat.START); + if (Drawer != null && Drawer.isDrawerOpen(GravityCompat.START)) { + Drawer.closeDrawer(GravityCompat.START); } else { super.onBackPressed(); } @@ -196,8 +203,7 @@ public void onBackPressed() { public boolean onNavigationItemSelected(@NonNull MenuItem item) { if (item.getItemId() == mPreviousMenuItemId) { - DrawerLayout drawer = findViewById(R.id.drawer_layout); - drawer.closeDrawer(GravityCompat.START); + Drawer.closeDrawer(GravityCompat.START); return true; } @@ -213,7 +219,7 @@ public boolean onNavigationItemSelected(@NonNull MenuItem item) { .commit(); } - mDrawer.closeDrawer(GravityCompat.START); + Drawer.closeDrawer(GravityCompat.START); return true; } @@ -315,11 +321,11 @@ public static Intent getStartIntent(Context context) { private void fillNavigationView(String emailId, String imageURL) { - NavigationView navigationView = findViewById(R.id.nav_view); - navigationView.setNavigationItemSelectedListener(this); + + NavigationView.setNavigationItemSelectedListener(this); // Get reference to the navigation view header and email textview - View navigationHeader = navigationView.getHeaderView(0); + View navigationHeader = NavigationView.getHeaderView(0); TextView emailTextView = navigationHeader.findViewById(R.id.email); emailTextView.setText(emailId); @@ -485,6 +491,6 @@ protected void onSaveInstanceState(Bundle outState) { } public NavigationView getNavigationView() { - return mNavigationView; + return NavigationView; } } diff --git a/Android/app/src/main/java/io/github/project_travel_mate/ProfileActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/ProfileActivity.java index d4af9fd694..7529623891 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/ProfileActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/ProfileActivity.java @@ -347,7 +347,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) { Uri croppedImage = result.getUri(); Picasso.with(this).load(croppedImage).into(displayImage); mSharedPreferences.edit().putString(USER_IMAGE, croppedImage.toString()).apply(); - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), R.string.profile_picture_updated, + TravelmateSnackbars.createSnackBar(layout, R.string.profile_picture_updated, Snackbar.LENGTH_SHORT).show(); getUrlFromCloudinary(croppedImage); } @@ -452,12 +452,12 @@ public void onResponse(Call call, final Response response) throws IOException { final String res = Objects.requireNonNull(response.body()).string(); mHandler.post(() -> { if (response.isSuccessful()) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), res, + TravelmateSnackbars.createSnackBar(layout, res, Snackbar.LENGTH_SHORT).show(); Picasso.with(ProfileActivity.this).load(R.drawable.default_user_icon) .into(displayImage); } else { - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), res, + TravelmateSnackbars.createSnackBar(layout, res, Snackbar.LENGTH_LONG).show(); } }); @@ -602,11 +602,11 @@ public void onResponse(Call call, Response response) throws IOException { final String res = Objects.requireNonNull(response.body()).string(); mHandler.post(() -> { if (response.isSuccessful()) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), + TravelmateSnackbars.createSnackBar(layout, R.string.name_updated, Snackbar.LENGTH_SHORT).show(); mSharedPreferences.edit().putString(USER_NAME, fullName).apply(); } else { - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), res, + TravelmateSnackbars.createSnackBar(layout, res, Snackbar.LENGTH_LONG).show(); networkError(); } @@ -674,13 +674,13 @@ public void onResponse(Call call, Response response) throws IOException { final String res = Objects.requireNonNull(response.body()).string(); mHandler.post(() -> { if (response.isSuccessful()) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), + TravelmateSnackbars.createSnackBar(layout, R.string.status_updated, Snackbar.LENGTH_SHORT).show(); mSharedPreferences.edit().putString(USER_STATUS, mUserStatus).apply(); displayStatus.setText(mUserStatus); } else { - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), res, + TravelmateSnackbars.createSnackBar(layout, res, Snackbar.LENGTH_LONG).show(); networkError(); } @@ -830,7 +830,7 @@ public void onResponse(Call call, Response response) throws IOException { if (response.isSuccessful()) { Log.i(LOG_TAG, "Upload to server successful!"); } else { - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), res, + TravelmateSnackbars.createSnackBar(layout, res, Snackbar.LENGTH_LONG).show(); } }); @@ -952,7 +952,7 @@ private void shareProfile() { try { startActivity(Intent.createChooser(intent, getString(R.string.share_chooser))); } catch (android.content.ActivityNotFoundException ex) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.layout), R.string.snackbar_no_share_app, + TravelmateSnackbars.createSnackBar(layout, R.string.snackbar_no_share_app, Snackbar.LENGTH_LONG).show(); } } diff --git a/Android/app/src/main/java/io/github/project_travel_mate/SplashActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/SplashActivity.java index 274557bb29..c3afaf8570 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/SplashActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/SplashActivity.java @@ -7,9 +7,7 @@ import android.preference.PreferenceManager; import android.support.v7.app.AppCompatActivity; import android.view.animation.AccelerateDecelerateInterpolator; - import com.eftimoff.androipathview.PathView; - import io.github.project_travel_mate.login.LoginActivity; import static utils.Constants.USER_TOKEN; @@ -19,6 +17,7 @@ public class SplashActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); setContentView(R.layout.activity_splash); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/destinations/CityFragment.java b/Android/app/src/main/java/io/github/project_travel_mate/destinations/CityFragment.java index a52397d645..f3b8d5f379 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/destinations/CityFragment.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/destinations/CityFragment.java @@ -22,6 +22,7 @@ import android.view.animation.DecelerateInterpolator; import android.view.inputmethod.InputMethodManager; import android.widget.ArrayAdapter; +import android.widget.Button; import android.widget.ListView; import com.airbnb.lottie.LottieAnimationView; @@ -72,8 +73,11 @@ public class CityFragment extends Fragment implements TravelmateSnackbars { LottieAnimationView animationView; @BindView(R.id.cities_list) ListView lv; + @BindView(R.id.search_view) + MaterialSearchView MaterialSearchView; - private MaterialSearchView mMaterialSearchView; + +// private MaterialSearchView MaterialSearchView; private final int[] mColors = {R.color.sienna, R.color.saffron, R.color.green, R.color.pink, R.color.orange, R.color.blue, R.color.grey, R.color.yellow, R.color.purple, R.color.peach}; @@ -127,8 +131,8 @@ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, // make an target mSpotView = inflater.inflate(R.layout.spotlight_target, null); - mMaterialSearchView = view.findViewById(R.id.search_view); - mMaterialSearchView.setOnQueryTextListener(new MaterialSearchView.OnQueryTextListener() { + + MaterialSearchView.setOnQueryTextListener(new MaterialSearchView.OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String query) { Log.v("QUERY ITEM : ", query); @@ -284,7 +288,7 @@ public void onCreate(@Nullable Bundle savedInstanceState) { public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { mActivity.getMenuInflater().inflate(R.menu.search_menu, menu); MenuItem item = menu.findItem(R.id.action_search); - mMaterialSearchView.setMenuItem(item); + MaterialSearchView.setMenuItem(item); } private void cityAutoComplete() { @@ -342,8 +346,8 @@ public void onResponse(Call call, final Response response) { new ArrayAdapter<>( mActivity.getApplicationContext(), R.layout.spinner_layout, citynames); dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - mMaterialSearchView.setAdapter(dataAdapter); - mMaterialSearchView.setOnItemClickListener((arg0, arg1, arg2, arg3) -> { + MaterialSearchView.setAdapter(dataAdapter); + MaterialSearchView.setOnItemClickListener((arg0, arg1, arg2, arg3) -> { Intent intent = FinalCityInfoActivity.getStartIntent(mActivity, cities.get(arg2)); startActivity(intent); }); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/destinations/description/FinalCityInfoActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/destinations/description/FinalCityInfoActivity.java index b37d24fcff..477b903536 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/destinations/description/FinalCityInfoActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/destinations/description/FinalCityInfoActivity.java @@ -84,6 +84,8 @@ public class FinalCityInfoActivity extends AppCompatActivity LinearLayout cityVisitedLayout; @BindView(R.id.ll_city_map) LinearLayout cityMap; + @BindView(R.id.toolbar) + Toolbar toolbar; private int mDotsCount; private ImageView[] mDots; @@ -140,7 +142,6 @@ private void initUi() { } toggleFavouriteCityView(); - Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); content.setVisibility(View.GONE); cityVisitedLayout.setVisibility(View.GONE); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/destinations/description/PlacesOnMapActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/destinations/description/PlacesOnMapActivity.java index a7d9b1cf97..e2e3c21def 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/destinations/description/PlacesOnMapActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/destinations/description/PlacesOnMapActivity.java @@ -89,7 +89,8 @@ public class PlacesOnMapActivity extends AppCompatActivity implements BottomSheetBehavior sheetBehavior; @BindView(R.id.bottom_sheet) LinearLayout layoutBottomSheet; - private MapView mMap; + @BindView(R.id.map) + MapView mMap; private IMapController mController; private Drawable mMarker, mDefaultMarker; @@ -106,7 +107,6 @@ protected void onCreate(Bundle savedInstanceState) { SharedPreferences mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(this); mToken = mSharedPreferences.getString(USER_TOKEN, null); sheetBehavior = BottomSheetBehavior.from(layoutBottomSheet); - mMap = findViewById(R.id.map); setTitle(mCity.getNickname()); mMarker = this.getDrawable(R.drawable.ic_radio_button_checked_orange_24dp); mDefaultMarker = this.getDrawable(R.drawable.marker_default); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/destinations/funfacts/FunFactsActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/destinations/funfacts/FunFactsActivity.java index e19a8edb39..d061316914 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/destinations/funfacts/FunFactsActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/destinations/funfacts/FunFactsActivity.java @@ -42,7 +42,8 @@ public class FunFactsActivity extends AppCompatActivity implements FunFactsView ViewPager viewPager; @BindView(R.id.animation_view) LottieAnimationView animationView; - + @BindView(R.id.toolbar) + Toolbar toolbar; private City mCity; private String mToken; private Handler mHandler; @@ -55,8 +56,6 @@ public class FunFactsActivity extends AppCompatActivity implements FunFactsView protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_fun_facts); - - Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); ActionBar supportActionBar = getSupportActionBar(); if (supportActionBar != null) { diff --git a/Android/app/src/main/java/io/github/project_travel_mate/mytrips/AddNewTripActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/mytrips/AddNewTripActivity.java index c00cdd50d3..737fa90abe 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/mytrips/AddNewTripActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/mytrips/AddNewTripActivity.java @@ -9,6 +9,7 @@ import android.os.Handler; import android.os.Looper; import android.preference.PreferenceManager; +import android.support.design.widget.CoordinatorLayout; import android.support.design.widget.Snackbar; import android.support.v7.app.AppCompatActivity; import android.util.Log; @@ -71,6 +72,8 @@ public class AddNewTripActivity extends AppCompatActivity implements DatePickerD LinearLayout mLinearLayout; @BindView(R.id.animation_view) LottieAnimationView animationView; + @BindView(R.id.activityAddNewTrip) + CoordinatorLayout activityAddNewTrip; private String mCityid; private String mStartdate; @@ -163,7 +166,7 @@ public void onResponse(Call call, final Response response) { final int responseCode = response.code(); mHandler.post(() -> { if (responseCode == HttpsURLConnection.HTTP_CREATED) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityAddNewTrip), + TravelmateSnackbars.createSnackBar(activityAddNewTrip, R.string.trip_added, Snackbar.LENGTH_LONG ).show(); //Call back to MytripsFragment @@ -172,7 +175,7 @@ public void onResponse(Call call, final Response response) { finish(); } else { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityAddNewTrip), + TravelmateSnackbars.createSnackBar(activityAddNewTrip, res, Snackbar.LENGTH_LONG ).show(); } @@ -261,15 +264,15 @@ public void onClick(View view) { mTripname = tripName.getText().toString(); if (mTripname.trim().equals("")) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityAddNewTrip), + TravelmateSnackbars.createSnackBar(activityAddNewTrip, R.string.trip_name_blank, Snackbar.LENGTH_LONG ).show(); } else if (tripStartDate == null || tripStartDate.getText().toString().equals("")) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityAddNewTrip), + TravelmateSnackbars.createSnackBar(activityAddNewTrip, R.string.trip_date_blank, Snackbar.LENGTH_LONG ).show(); } else if (mCityid == null) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityAddNewTrip), + TravelmateSnackbars.createSnackBar(activityAddNewTrip, R.string.trip_city_blank, Snackbar.LENGTH_LONG ).show(); } else { @@ -323,12 +326,12 @@ public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { mStartdate = Long.toString(selectedDate.getTime() / 1000); tripStartDate.setText(dayOfMonth + "/" + (month + 1) + "/" + year); } else if (selectedDate.compareTo(currentDate) == 0) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityAddNewTrip), + TravelmateSnackbars.createSnackBar(activityAddNewTrip, R.string.wrong_date_alert, Snackbar.LENGTH_LONG ).show(); return; } else { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityAddNewTrip), + TravelmateSnackbars.createSnackBar(activityAddNewTrip, R.string.wrong_date_alert, Snackbar.LENGTH_LONG ).show(); return; diff --git a/Android/app/src/main/java/io/github/project_travel_mate/mytrips/MyTripInfoActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/mytrips/MyTripInfoActivity.java index 3fe1a48ee8..9afe504a70 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/mytrips/MyTripInfoActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/mytrips/MyTripInfoActivity.java @@ -10,6 +10,7 @@ import android.os.Looper; import android.os.StrictMode; import android.preference.PreferenceManager; +import android.support.design.widget.CoordinatorLayout; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; import android.support.v7.app.AlertDialog; @@ -121,6 +122,10 @@ public class MyTripInfoActivity extends AppCompatActivity implements TravelmateS LinearLayout addMeToTrip; @BindView(R.id.public_trip_layout) RelativeLayout publicPrivateInfo; + @BindView(R.id.activityMyTripInfo) + CoordinatorLayout activityMyTripInfo; + @BindView(R.id.toolbar) + Toolbar toolbar; private String mFriendId = null; private String mFriendDeleteId = null; @@ -170,7 +175,7 @@ public void onClick(View v) { getSingleTrip(); - Toolbar toolbar = findViewById(R.id.toolbar); + setSupportActionBar(toolbar); editTrip.setOnClickListener(v -> { @@ -197,7 +202,7 @@ public void onClick(View v) { Objects.requireNonNull(imm).hideSoftInputFromWindow(view.getWindowToken(), 0); updateTripName(); } else { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityMyTripInfo), R.string.cannot_edit, + TravelmateSnackbars.createSnackBar(activityMyTripInfo, R.string.cannot_edit, Snackbar.LENGTH_SHORT).show(); } } @@ -223,7 +228,7 @@ void onTextChanged() { @OnClick(R.id.add_new_friend) void onClick() { if (mFriendId == null) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityMyTripInfo), + TravelmateSnackbars.createSnackBar(activityMyTripInfo, getString(R.string.no_friend_selected), Snackbar.LENGTH_LONG).show(); } else { @@ -554,7 +559,7 @@ public void onFailure(Call call, IOException e) { public void onResponse(Call call, final Response response) { mHandler.post(() -> { if (response.isSuccessful()) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityMyTripInfo), + TravelmateSnackbars.createSnackBar(activityMyTripInfo, getString(R.string.friend_added), Snackbar.LENGTH_LONG).show(); updateFriendList(); friendEmail.setText(null); @@ -746,10 +751,10 @@ public void onResponse(Call call, Response response) throws IOException { final String res = Objects.requireNonNull(response.body()).string(); mHandler.post(() -> { if (response.isSuccessful()) { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityMyTripInfo), + TravelmateSnackbars.createSnackBar(activityMyTripInfo, R.string.trip_name_updated, Snackbar.LENGTH_SHORT).show(); } else { - TravelmateSnackbars.createSnackBar(findViewById(R.id.activityMyTripInfo), + TravelmateSnackbars.createSnackBar(activityMyTripInfo, res, Snackbar.LENGTH_LONG).show(); } }); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/mytrips/TripImageActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/mytrips/TripImageActivity.java index fbb5aa4e73..57e1ab1c75 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/mytrips/TripImageActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/mytrips/TripImageActivity.java @@ -10,6 +10,7 @@ import java.util.Objects; import adapters.ImageAdapter; +import butterknife.BindView; import io.github.project_travel_mate.R; import static utils.Constants.EVENT_IMG; @@ -18,6 +19,8 @@ public class TripImageActivity extends AppCompatActivity { + @BindView(R.id.view_pager) + ViewPager viewPager; @Override protected void onCreate(Bundle savedInstanceState) { @@ -31,7 +34,7 @@ protected void onCreate(Bundle savedInstanceState) { ArrayList images = intent.getStringArrayListExtra(EVENT_IMG); - ViewPager viewPager = findViewById(R.id.view_pager); + ImageAdapter adapter = new ImageAdapter(this, images); viewPager.setAdapter(adapter); if (pos != -1) diff --git a/Android/app/src/main/java/io/github/project_travel_mate/notifications/NotificationsActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/notifications/NotificationsActivity.java index f6a6dd6403..acccfd527d 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/notifications/NotificationsActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/notifications/NotificationsActivity.java @@ -7,6 +7,7 @@ import android.os.Handler; import android.os.Looper; import android.preference.PreferenceManager; +import android.support.design.widget.CoordinatorLayout; import android.support.design.widget.Snackbar; import android.support.v4.widget.SwipeRefreshLayout; import android.support.v7.app.AlertDialog; @@ -60,6 +61,9 @@ public class NotificationsActivity extends AppCompatActivity implements SwipeRef @BindView(R.id.swipe_refresh) SwipeRefreshLayout swipeRefreshLayout; + @BindView(R.id.notifications_id_layout) + CoordinatorLayout notificationsIdLayout; + private String mToken; private Handler mHandler; ArrayList notifications; @@ -75,6 +79,7 @@ public class NotificationsActivity extends AppCompatActivity implements SwipeRef private static final long YEAR_MILLIS = 12 * MONTH_MILLIS; private boolean mShowReadNotif; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -317,12 +322,10 @@ public void onResponse(Call call, final Response response) throws IOException { mHandler.post(() -> { if (response.isSuccessful()) { getNotifications(); - TravelmateSnackbars.createSnackBar(findViewById - (R.id.notifications_id_layout), res, + TravelmateSnackbars.createSnackBar(notificationsIdLayout, res, Snackbar.LENGTH_SHORT).show(); } else { - TravelmateSnackbars.createSnackBar(findViewById - (R.id.notifications_id_layout), res, + TravelmateSnackbars.createSnackBar(notificationsIdLayout, res, Snackbar.LENGTH_LONG).show(); } @@ -351,7 +354,7 @@ private void networkError() { private void emptyList() { Snackbar snackbar = Snackbar - .make(findViewById(R.id.notifications_id_layout), + .make(notificationsIdLayout, R.string.no_notifications, Snackbar.LENGTH_LONG); snackbar.show(); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/searchcitydialog/CitySearchBottomSheetDialogFragment.java b/Android/app/src/main/java/io/github/project_travel_mate/searchcitydialog/CitySearchBottomSheetDialogFragment.java index cdb9e7356d..86a59e6b6e 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/searchcitydialog/CitySearchBottomSheetDialogFragment.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/searchcitydialog/CitySearchBottomSheetDialogFragment.java @@ -51,6 +51,7 @@ public class CitySearchBottomSheetDialogFragment extends BottomSheetDialogFragme @BindView(R.id.et_query) EditText etQuery; + private Listener mListener; private List mCitySearchModels = new ArrayList<>(); private CitySearchModelAdapter mCitySearchModelAdapter; @@ -264,4 +265,4 @@ protected void publishResults(CharSequence constraint, FilterResults results) { } } -} +} \ No newline at end of file diff --git a/Android/app/src/main/java/io/github/project_travel_mate/travel/HotelsActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/travel/HotelsActivity.java index 6f03c79446..2b1df327ee 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/travel/HotelsActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/travel/HotelsActivity.java @@ -69,6 +69,9 @@ public class HotelsActivity extends AppCompatActivity implements View.OnClickLis @BindView(R.id.layout) LinearLayout layout; + @BindView(R.id.toolbar) + Toolbar toolbar; + private Handler mHandler; private String mToken; @@ -81,7 +84,7 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_hotels); - Toolbar toolbar = findViewById(R.id.toolbar); + setSupportActionBar(toolbar); ButterKnife.bind(this); @@ -516,4 +519,4 @@ public double getLongitude() { return mLongitude; } } -} +} \ No newline at end of file diff --git a/Android/app/src/main/java/io/github/project_travel_mate/travel/ListViewRealTimeActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/travel/ListViewRealTimeActivity.java index 936f3b0414..4e03747c6c 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/travel/ListViewRealTimeActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/travel/ListViewRealTimeActivity.java @@ -30,6 +30,8 @@ public class ListViewRealTimeActivity extends AppCompatActivity { TabLayout tabLayout; @BindView(R.id.viewpager) ViewPager viewPager; + @BindView(R.id.action_map_view) + MapView mMap; private static final int REQUEST_LOCATION = 199; private GPSTracker mTracker; @@ -46,7 +48,7 @@ protected void onCreate(@Nullable Bundle savedInstanceState) { // Get user's current location mTracker = new GPSTracker(this); - MapView mMap = findViewById(R.id.action_map_view); + if (!mTracker.canGetLocation()) { mTracker.displayLocationRequest(this, mMap); } else { diff --git a/Android/app/src/main/java/io/github/project_travel_mate/travel/MapViewRealTimeActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/travel/MapViewRealTimeActivity.java index 550ee8d446..fd37a4e062 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/travel/MapViewRealTimeActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/travel/MapViewRealTimeActivity.java @@ -69,12 +69,25 @@ public class MapViewRealTimeActivity extends AppCompatActivity implements LottieAnimationView animationView; @BindView(R.id.layout) LinearLayout layout; + @BindView(R.id.toolbar) + Toolbar toolbar; + @BindView(R.id.item_title) + TextView title; + @BindView(R.id.item_description) + TextView description; + @BindView(R.id.map) + MapView mMap; + @BindView(R.id.call) + Button calls; + @BindView(R.id.book) + Button book; + private int mIndex = 0; private Handler mHandler; private String mToken; private String mCurlat; private String mCurlon; - private MapView mMap; + private IMapController mController; private static final int REQUEST_LOCATION = 199; GPSTracker tracker; @@ -85,13 +98,13 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map_realtime); - Toolbar toolbar = findViewById(R.id.toolbar); + setSupportActionBar(toolbar); ButterKnife.bind(this); mHandler = new Handler(Looper.getMainLooper()); - mMap = findViewById(R.id.map); +// mMap = findViewById(R.id.map); scrollView.setVisibility(View.GONE); SharedPreferences mSharedPreferences = PreferenceManager.getDefaultSharedPreferences(this); mToken = mSharedPreferences.getString(USER_TOKEN, null); @@ -327,11 +340,8 @@ private void onMarkerSelected(Marker marker) { } } - TextView title = MapViewRealTimeActivity.this.findViewById(R.id.item_title); - TextView description = MapViewRealTimeActivity.this.findViewById(R.id.item_description); - final Button calls, book; - calls = MapViewRealTimeActivity.this.findViewById(R.id.call); - book = MapViewRealTimeActivity.this.findViewById(R.id.book); + + title.setText(mMapItems.get(mIndex).getName()); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/travel/ShoppingCurrentCityActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/travel/ShoppingCurrentCityActivity.java index e8045ba6cb..cf73531d77 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/travel/ShoppingCurrentCityActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/travel/ShoppingCurrentCityActivity.java @@ -62,8 +62,10 @@ public class ShoppingCurrentCityActivity extends AppCompatActivity { LinearLayout layout; @BindView(R.id.show_city_name) TextView showCityName; - - private MaterialSearchView mSearchView; + @BindView(R.id.toolbar) + Toolbar toolbar; + @BindView(R.id.search_view) + MaterialSearchView mSearchView; private String mToken; private Handler mHandler; private JSONArray mFeedItems; @@ -73,7 +75,7 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_shopping_currentcity); - Toolbar toolbar = findViewById(R.id.toolbar); + setSupportActionBar(toolbar); ButterKnife.bind(this); @@ -87,7 +89,7 @@ protected void onCreate(Bundle savedInstanceState) { setTitle(getResources().getString(R.string.text_shopping)); - mSearchView = findViewById(R.id.search_view); + mSearchView.setOnQueryTextListener(new MaterialSearchView.OnQueryTextListener() { @Override public boolean onQueryTextSubmit(String query) { diff --git a/Android/app/src/main/java/io/github/project_travel_mate/utilities/ChecklistActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/utilities/ChecklistActivity.java index 2f5ae347f5..de58757f6b 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/utilities/ChecklistActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/utilities/ChecklistActivity.java @@ -8,13 +8,17 @@ import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.MenuItem; +import android.widget.FrameLayout; import java.util.Objects; +import butterknife.BindView; import butterknife.ButterKnife; import io.github.project_travel_mate.R; public class ChecklistActivity extends AppCompatActivity { + @BindView(R.id.toolbar) + Toolbar toolbar; @Override protected void onCreate(Bundle savedInstanceState) { @@ -22,7 +26,6 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_check_list); - Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); ButterKnife.bind(this); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/utilities/ChecklistFragment.java b/Android/app/src/main/java/io/github/project_travel_mate/utilities/ChecklistFragment.java index 41fbc0cbd7..2d333f7ce4 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/utilities/ChecklistFragment.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/utilities/ChecklistFragment.java @@ -21,6 +21,7 @@ import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; +import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; @@ -63,6 +64,9 @@ public class ChecklistFragment extends Fragment implements TravelmateSnackbars, @BindView(R.id.recycler_finished) RecyclerView mFinishedRecycler; + @BindView(R.id.checklist_root_layout) + FrameLayout checklistRootLayout; + private Activity mActivity; private ChecklistViewModel mViewModel; private final CompositeDisposable mDisposable = new CompositeDisposable(); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/utilities/CurrencyListViewActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/utilities/CurrencyListViewActivity.java index e62458375a..5d20f1f527 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/utilities/CurrencyListViewActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/utilities/CurrencyListViewActivity.java @@ -22,9 +22,9 @@ public class CurrencyListViewActivity extends Activity implements TextWatcher { @BindView(R.id.listView) - RecyclerView mListview; + RecyclerView Listview; @BindView(R.id.currencySearch) - EditText mCurrencySearch; + EditText CurrencySearch; CurrencyConverterAdapter mAdaptorListView; String temp = null; @@ -40,13 +40,12 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_conversion_listview); currences_names = new ArrayList<>(); - mListview = findViewById(R.id.listView); - mCurrencySearch = findViewById(R.id.currencySearch); + mContext = this; addCurrencies(); - mCurrencySearch.addTextChangedListener(this); + CurrencySearch.addTextChangedListener(this); } public void addCurrencies() { @@ -87,8 +86,8 @@ public void addCurrencies() { mAdaptorListView = new CurrencyConverterAdapter(CurrencyListViewActivity.this, currences_names); RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(mContext.getApplicationContext()); - mListview.setLayoutManager(mLayoutManager); - mListview.setAdapter(mAdaptorListView); + Listview.setLayoutManager(mLayoutManager); + Listview.setAdapter(mAdaptorListView); } @Override diff --git a/Android/app/src/main/java/io/github/project_travel_mate/utilities/ShareContactActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/utilities/ShareContactActivity.java index c86ced430f..005c90b588 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/utilities/ShareContactActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/utilities/ShareContactActivity.java @@ -119,7 +119,7 @@ public boolean onCreateOptionsMenu(Menu menu) { public void createCode() { - ImageView qrCodeView = findViewById(R.id.im); + //getting details to be encoded in qr code String myEmail = mSharedPreferences.getString(USER_EMAIL, null); String myName = mSharedPreferences.getString(USER_NAME, null); diff --git a/Android/app/src/main/java/io/github/project_travel_mate/utilities/TimezoneListViewActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/utilities/TimezoneListViewActivity.java index 947eba7e1e..de79bf925a 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/utilities/TimezoneListViewActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/utilities/TimezoneListViewActivity.java @@ -24,7 +24,7 @@ public class TimezoneListViewActivity extends Activity implements TextWatcher { @BindView(R.id.listView) - RecyclerView mListview; + RecyclerView Listview; @BindView(R.id.timezoneSearch) EditText mTimezoneSearch; CurrencyConverterAdapter mAdaptorListView; @@ -39,8 +39,7 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_timezone_listview); timezone_names = new ArrayList<>(); - mListview = findViewById(R.id.listView); - mTimezoneSearch = findViewById(R.id.timezoneSearch); + mContext = this; addTimezones(); @@ -81,8 +80,8 @@ public void addTimezones() { mAdaptorListView = new CurrencyConverterAdapter(TimezoneListViewActivity.this, timezone_names); RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(mContext.getApplicationContext()); - mListview.setLayoutManager(mLayoutManager); - mListview.setAdapter(mAdaptorListView); + Listview.setLayoutManager(mLayoutManager); + Listview.setAdapter(mAdaptorListView); } /** diff --git a/Android/app/src/main/java/io/github/project_travel_mate/utilities/WorldClockActivity.java b/Android/app/src/main/java/io/github/project_travel_mate/utilities/WorldClockActivity.java index e578946464..25797ecfed 100644 --- a/Android/app/src/main/java/io/github/project_travel_mate/utilities/WorldClockActivity.java +++ b/Android/app/src/main/java/io/github/project_travel_mate/utilities/WorldClockActivity.java @@ -101,5 +101,4 @@ private void onItemAutocompleteItemSelected() { KeyboardHelper.Companion.hideKeyboard(this); this.setSelectedText(TimeZone.getTimeZone(this.mAutoCompleteTextViewTimezone.getText().toString())); } - -} +} \ No newline at end of file diff --git a/Android/app/src/main/java/utils/TravelMateAnalogClock.java b/Android/app/src/main/java/utils/TravelMateAnalogClock.java index e7267dfe89..d006ee9d8f 100644 --- a/Android/app/src/main/java/utils/TravelMateAnalogClock.java +++ b/Android/app/src/main/java/utils/TravelMateAnalogClock.java @@ -23,6 +23,7 @@ import java.util.Calendar; +import butterknife.BindView; import io.github.project_travel_mate.R; /** @@ -31,11 +32,6 @@ */ public abstract class TravelMateAnalogClock extends RelativeLayout { - private AppCompatImageView mAnalogFace; - private AppCompatImageView mAnalogHour; - private AppCompatImageView mAnalogMinute; - private AppCompatImageView mAnalogSecond; - @DrawableRes private int mFaceId; @DrawableRes @@ -47,6 +43,16 @@ public abstract class TravelMateAnalogClock extends RelativeLayout { private Context mCtx; + @BindView(R.id.face) + AppCompatImageView AnalogFace; + @BindView(R.id.hour) + AppCompatImageView AnalogHour; + @BindView(R.id.minute) + AppCompatImageView AnalogMinute; + @BindView(R.id.second) + AppCompatImageView AnalogSecond; + + public TravelMateAnalogClock(Context ctx) { super(ctx); this.mCtx = ctx; @@ -274,58 +280,55 @@ private void main(Context ctx) { inflate(ctx, R.layout.analog_clock, this); - mAnalogFace = findViewById(R.id.face); - mAnalogHour = findViewById(R.id.hour); - mAnalogMinute = findViewById(R.id.minute); - mAnalogSecond = findViewById(R.id.second); +// if (!mShowSeconds) { - mAnalogSecond.setVisibility(GONE); + AnalogSecond.setVisibility(GONE); } //square it - mAnalogFace.setAdjustViewBounds(true); - mAnalogHour.setAdjustViewBounds(true); - mAnalogMinute.setAdjustViewBounds(true); - mAnalogSecond.setAdjustViewBounds(true); + AnalogFace.setAdjustViewBounds(true); + AnalogHour.setAdjustViewBounds(true); + AnalogMinute.setAdjustViewBounds(true); + AnalogSecond.setAdjustViewBounds(true); - mAnalogHour.setScaleType(ImageView.ScaleType.FIT_END); - mAnalogMinute.setScaleType(ImageView.ScaleType.FIT_END); - mAnalogSecond.setScaleType(ImageView.ScaleType.FIT_END); + AnalogHour.setScaleType(ImageView.ScaleType.FIT_END); + AnalogMinute.setScaleType(ImageView.ScaleType.FIT_END); + AnalogSecond.setScaleType(ImageView.ScaleType.FIT_END); mSizeInDp = 40; //why 40 ? cause it works. mSizeInDp = (mSizeInDp + 25) * 4; mSizeInPixels = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, mSizeInDp, getResources().getDisplayMetrics()); - ViewGroup.LayoutParams layoutParams = mAnalogFace.getLayoutParams(); + ViewGroup.LayoutParams layoutParams = AnalogFace.getLayoutParams(); layoutParams.width = mSizeInPixels; layoutParams.height = mSizeInPixels; - mAnalogFace.setLayoutParams(layoutParams); + AnalogFace.setLayoutParams(layoutParams); - layoutParams = mAnalogSecond.getLayoutParams(); + layoutParams = AnalogSecond.getLayoutParams(); float minutesHeight = (mSizeInPixels / 2) - (mSizeInPixels / 5.5f); layoutParams.height = (int) minutesHeight; - mAnalogSecond.setLayoutParams(layoutParams); + AnalogSecond.setLayoutParams(layoutParams); - layoutParams = mAnalogMinute.getLayoutParams(); + layoutParams = AnalogMinute.getLayoutParams(); layoutParams.height = (int) minutesHeight; - mAnalogMinute.setLayoutParams(layoutParams); + AnalogMinute.setLayoutParams(layoutParams); - layoutParams = mAnalogHour.getLayoutParams(); + layoutParams = AnalogHour.getLayoutParams(); layoutParams.height = (mSizeInPixels) / 5; - mAnalogHour.setLayoutParams(layoutParams); + AnalogHour.setLayoutParams(layoutParams); - mAnalogFace.setImageDrawable(face); - mAnalogHour.setImageDrawable(hour); - mAnalogMinute.setImageDrawable(minute); - mAnalogSecond.setImageDrawable(second); + AnalogFace.setImageDrawable(face); + AnalogHour.setImageDrawable(hour); + AnalogMinute.setImageDrawable(minute); + AnalogSecond.setImageDrawable(second); mDp = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 3.5f, getResources().getDisplayMetrics()); layoutListener = () -> { - setPositionFor(mAnalogSecond); - setPositionFor(mAnalogMinute); - setPositionFor(mAnalogHour); + setPositionFor(AnalogSecond); + setPositionFor(AnalogMinute); + setPositionFor(AnalogHour); tickTick(); @@ -374,7 +377,7 @@ private void tickTick() { animationSet.addAnimation(rotator); animationSet.setInterpolator(new LinearInterpolator()); - mAnalogSecond.startAnimation(animationSet); + AnalogSecond.startAnimation(animationSet); //Minutes Degree degrees = 6 * curMinute + 0.1f * curSecond + (1e-5f) * curMillis; @@ -396,7 +399,7 @@ private void tickTick() { animationSet.addAnimation(rotator); animationSet.setInterpolator(new LinearInterpolator()); - mAnalogMinute.startAnimation(animationSet); + AnalogMinute.startAnimation(animationSet); //every 1 hour moves by 0.00166667 degree every 1 second //every 1 hour moves by 0.1 degree every 1 minute @@ -421,7 +424,7 @@ private void tickTick() { animationSet.addAnimation(rotator); animationSet.setInterpolator(new LinearInterpolator()); - mAnalogHour.startAnimation(animationSet); + AnalogHour.startAnimation(animationSet); //move analogSecond by 360 degree every 1 minute //move analogMinute by 360 degrees every 60 minute diff --git a/Android/app/src/main/java/widget/ClockWidgetConfigureActivity.java b/Android/app/src/main/java/widget/ClockWidgetConfigureActivity.java index 3ca8afc6d1..9849c7f6b1 100644 --- a/Android/app/src/main/java/widget/ClockWidgetConfigureActivity.java +++ b/Android/app/src/main/java/widget/ClockWidgetConfigureActivity.java @@ -9,11 +9,13 @@ import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; +import android.widget.Button; import android.widget.Spinner; import android.widget.Toast; import java.util.TimeZone; +import butterknife.BindView; import io.github.project_travel_mate.R; /** @@ -26,12 +28,15 @@ public class ClockWidgetConfigureActivity extends Activity implements AdapterVie private static String TIMEZONE_CODE = "America/Denver"; private Context mContext; int mAppWidgetId = AppWidgetManager.INVALID_APPWIDGET_ID; + @BindView(R.id.spinnerTimeZoneIDs) Spinner mTimeZoneSpinner; + @BindView(R.id.add_button) + Button mAddButton; + View.OnClickListener mOnClickListener = new View.OnClickListener() { public void onClick(View v) { final Context context = ClockWidgetConfigureActivity.this; // When the button is clicked, store the string locally - mTimeZoneSpinner = (Spinner) findViewById(R.id.spinnerTimeZoneIDs); TIMEZONE_CODE = mTimeZoneSpinner.getSelectedItem().toString(); saveTitlePref(context, mAppWidgetId, TIMEZONE_CODE); // It is the responsibility of the configuration activity to update the app widget @@ -83,7 +88,7 @@ public void onCreate(Bundle icicle) { setResult(RESULT_CANCELED); setContentView(R.layout.clock_widget_configure); //mAppWidgetText = (EditText) findViewById(R.id.appwidget_text); - findViewById(R.id.add_button).setOnClickListener(mOnClickListener); + mAddButton.setOnClickListener(mOnClickListener); // Find the widget id from the intent. Intent intent = getIntent(); Bundle extras = intent.getExtras(); @@ -98,7 +103,6 @@ public void onCreate(Bundle icicle) { } //Setup Spinner for Timezone IDs String[] timezoneIDs = TimeZone.getAvailableIDs(); - mTimeZoneSpinner = (Spinner) findViewById(R.id.spinnerTimeZoneIDs); ArrayAdapter mTZAdpter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, timezoneIDs); mTZAdpter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); mTimeZoneSpinner.setAdapter(mTZAdpter);