diff --git a/.idea/libraries/glide_3_7_0.xml b/.idea/libraries/glide_3_7_0.xml new file mode 100644 index 0000000..9b3a3ea --- /dev/null +++ b/.idea/libraries/glide_3_7_0.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 00ed590..992521d 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -36,6 +36,7 @@ dependencies { compile 'com.google.code.gson:gson:2.8.0' compile 'com.android.volley:volley:1.0.0' compile 'com.google.android.gms:play-services:10.0.1' + compile 'com.github.bumptech.glide:glide:3.7.0' } apply plugin: 'com.google.gms.google-services' diff --git a/app/src/main/java/com/pulkit4tech/privy/MainActivity.java b/app/src/main/java/com/pulkit4tech/privy/MainActivity.java index d17d437..23db48e 100644 --- a/app/src/main/java/com/pulkit4tech/privy/MainActivity.java +++ b/app/src/main/java/com/pulkit4tech/privy/MainActivity.java @@ -22,8 +22,11 @@ import android.view.Menu; import android.view.MenuItem; import android.view.View; +import android.widget.ImageView; import android.widget.TextView; +import com.bumptech.glide.Glide; +import com.bumptech.glide.load.engine.DiskCacheStrategy; import com.google.android.gms.auth.api.Auth; import com.google.android.gms.auth.api.signin.GoogleSignInAccount; import com.google.android.gms.auth.api.signin.GoogleSignInOptions; @@ -58,8 +61,9 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On private SharedPreferences mSharedPreferences; private String NAME = "user_name"; private String EMAIL = "email_id"; + private String PROFILE_PIC_URL = "profile_pic_url"; private String LOGGED_IN = "logged_in"; - // private ImageView profileImg; + private ImageView profileImg; private TextView userName, emailId; @Override @@ -107,7 +111,7 @@ private void setUpNavigationDrawer() { private void setUpNavigationHeader() { View nav_head = navigationView.getHeaderView(0); -// profileImg = (ImageView) nav_head.findViewById(R.id.profile_pic); + profileImg = (ImageView) nav_head.findViewById(R.id.profile_pic); userName = (TextView) nav_head.findViewById(R.id.user_name); emailId = (TextView) nav_head.findViewById(R.id.email_id); @@ -118,6 +122,12 @@ private void setUpNavigationHeaderValue() { // TODO : Set Profile Image userName.setText(mSharedPreferences.getString(NAME, getString(R.string.sign_in))); emailId.setText(mSharedPreferences.getString(EMAIL, "")); + Glide.with(mContext).load(mSharedPreferences.getString(PROFILE_PIC_URL, "")) + .thumbnail(0.5f) + .crossFade() + .diskCacheStrategy(DiskCacheStrategy.ALL) + .error(R.mipmap.ic_launcher) + .into(profileImg); changeSignInSignOutOption(); } @@ -174,7 +184,6 @@ private void setGoogleApiClientInfo() { // Testing Google Sign in GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestEmail() - .requestProfile() .build(); // Build a GoogleApiClient with access to the Google Sign-In API and the @@ -340,8 +349,12 @@ private void addLoginInfo(GoogleSignInAccount acct) { // TODO : add Profile Picture SharedPreferences.Editor editor = mSharedPreferences.edit(); editor.putBoolean(LOGGED_IN, true); - editor.putString(NAME, acct.getDisplayName()); - editor.putString(EMAIL, acct.getEmail()); + if (acct.getDisplayName() != null) + editor.putString(NAME, acct.getDisplayName()); + if (acct.getEmail() != null) + editor.putString(EMAIL, acct.getEmail()); + if (acct.getPhotoUrl() != null) + editor.putString(PROFILE_PIC_URL, acct.getPhotoUrl().toString()); editor.commit(); snackMsg(getString(R.string.sign_in_msg)); diff --git a/app/src/main/res/drawable/default_avatar.png b/app/src/main/res/drawable/default_avatar.png new file mode 100644 index 0000000..c7d631e Binary files /dev/null and b/app/src/main/res/drawable/default_avatar.png differ diff --git a/app/src/main/res/drawable/default_profile.png b/app/src/main/res/drawable/default_profile.png new file mode 100644 index 0000000..ccb6b6d Binary files /dev/null and b/app/src/main/res/drawable/default_profile.png differ diff --git a/app/src/main/res/layout/app_bar_main.xml b/app/src/main/res/layout/app_bar_main.xml index b4ecc57..0c61455 100644 --- a/app/src/main/res/layout/app_bar_main.xml +++ b/app/src/main/res/layout/app_bar_main.xml @@ -28,8 +28,9 @@ android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:layout_gravity="bottom|end" - android:layout_margin="@dimen/fab_margin" + android:layout_gravity="bottom|start" + android:layout_marginBottom="@dimen/fab_margin_bottom" + android:layout_marginStart="@dimen/fab_margin_start" app:srcCompat="@drawable/google" app:backgroundTint="@android:color/white" /> diff --git a/app/src/main/res/layout/nav_header_main.xml b/app/src/main/res/layout/nav_header_main.xml index c0b6ba3..653f5f4 100644 --- a/app/src/main/res/layout/nav_header_main.xml +++ b/app/src/main/res/layout/nav_header_main.xml @@ -17,6 +17,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingTop="@dimen/nav_header_vertical_spacing" + app:srcCompat="@android:drawable/sym_def_app_icon" /> - 16dp - 160dp - 16dp + 16sp + 160sp + 16sp 16sp - 16sp + 36dp + 30sp + 10sp