From 8a06d3149c351fa9a5ccaf7a58e529a599d151c1 Mon Sep 17 00:00:00 2001 From: nuclearfog Date: Mon, 1 Mar 2021 20:32:43 +0100 Subject: [PATCH] profile updater bug fix --- .../twidda/activity/UserProfile.java | 3 ++ .../twidda/backend/UserUpdater.java | 8 ++++- .../twidda/backend/engine/TwitterEngine.java | 29 ++++++++++--------- 3 files changed, 25 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/org/nuclearfog/twidda/activity/UserProfile.java b/app/src/main/java/org/nuclearfog/twidda/activity/UserProfile.java index 1b7f0d4d..e59de01c 100644 --- a/app/src/main/java/org/nuclearfog/twidda/activity/UserProfile.java +++ b/app/src/main/java/org/nuclearfog/twidda/activity/UserProfile.java @@ -250,6 +250,9 @@ public class UserProfile extends AppCompatActivity implements OnClickListener, O if (returnCode == RETURN_PROFILE_CHANGED) { Object data = i.getSerializableExtra(RETURN_PROFILE_DATA); if (data instanceof User) { + // remove blur background + toolbarBackground.setImageResource(0); + // re initialize updated user setUser((User) data); adapter.notifySettingsChanged(); } diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/UserUpdater.java b/app/src/main/java/org/nuclearfog/twidda/backend/UserUpdater.java index bbb13d9f..00d8694a 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/UserUpdater.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/UserUpdater.java @@ -38,7 +38,13 @@ public class UserUpdater extends AsyncTask { @Override protected User doInBackground(String[] param) { try { - User user = mTwitter.updateProfile(param); + String name = param[0]; + String link = param[1]; + String location = param[2]; + String bio = param[3]; + String profileImg = param[4]; + String bannerImg = param[5]; + User user = mTwitter.updateProfile(name, link, location, bio, profileImg, bannerImg); db.storeUser(user); return user; } catch (EngineException twException) { diff --git a/app/src/main/java/org/nuclearfog/twidda/backend/engine/TwitterEngine.java b/app/src/main/java/org/nuclearfog/twidda/backend/engine/TwitterEngine.java index 6a1a9713..34b86210 100644 --- a/app/src/main/java/org/nuclearfog/twidda/backend/engine/TwitterEngine.java +++ b/app/src/main/java/org/nuclearfog/twidda/backend/engine/TwitterEngine.java @@ -893,23 +893,24 @@ public class TwitterEngine { /** - * Update user profile + * update current users profile * - * @param userParam User data - * @return updated user profile - * @throws EngineException if Access is unavailable + * @param name new username + * @param url new profile link or empty if none + * @param loc new location name or empty if none + * @param bio new bio description or empty if none + * @param profileImg local path to the profile image or null + * @param bannerImg local path to the banner image or null + * @return updated user information + * @throws EngineException if access is unavailable */ - public User updateProfile(String[] userParam) throws EngineException { + public User updateProfile(String name, String url, String loc, String bio, String profileImg, String bannerImg) throws EngineException { try { - if (userParam[4] != null && userParam[4].isEmpty()) { - File profileImage = new File(userParam[4]); - twitter.updateProfileImage(profileImage); - } - if (userParam[5] != null && userParam[5].isEmpty()) { - File profileBanner = new File(userParam[5]); - twitter.updateProfileBanner(profileBanner); - } - twitter4j.User user = twitter.updateProfile(userParam[0], userParam[1], userParam[2], userParam[3]); + if (profileImg != null && !profileImg.isEmpty()) + twitter.updateProfileImage(new File(profileImg)); + if (bannerImg != null && !bannerImg.isEmpty()) + twitter.updateProfileBanner(new File(bannerImg)); + twitter4j.User user = twitter.updateProfile(name, url, loc, bio); return new User(user, twitter.getId()); } catch (Exception err) { throw new EngineException(err);