mirror of
https://github.com/Docile-Alligator/Infinity-For-Reddit.git
synced 2026-02-11 18:55:46 +00:00
Migrate to ViewBinding in some activities.
This commit is contained in:
@ -49,6 +49,7 @@ import ml.docilealligator.infinityforreddit.bottomsheetfragments.CustomThemeOpti
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomTheme;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeViewModel;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
|
||||
import ml.docilealligator.infinityforreddit.databinding.ActivityCustomThemeListingBinding;
|
||||
import ml.docilealligator.infinityforreddit.events.RecreateActivityEvent;
|
||||
import ml.docilealligator.infinityforreddit.utils.CustomThemeSharedPreferencesUtils;
|
||||
import ml.docilealligator.infinityforreddit.utils.Utils;
|
||||
@ -57,18 +58,6 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
CustomThemeOptionsBottomSheetFragment.CustomThemeOptionsBottomSheetFragmentListener,
|
||||
CreateThemeBottomSheetFragment.SelectBaseThemeBottomSheetFragmentListener {
|
||||
|
||||
@BindView(R.id.coordinator_layout_custom_theme_listing_activity)
|
||||
CoordinatorLayout coordinatorLayout;
|
||||
@BindView(R.id.appbar_layout_customize_theme_listing_activity)
|
||||
AppBarLayout appBarLayout;
|
||||
@BindView(R.id.collapsing_toolbar_layout_customize_theme_listing_activity)
|
||||
CollapsingToolbarLayout collapsingToolbarLayout;
|
||||
@BindView(R.id.toolbar_customize_theme_listing_activity)
|
||||
Toolbar toolbar;
|
||||
@BindView(R.id.recycler_view_customize_theme_listing_activity)
|
||||
RecyclerView recyclerView;
|
||||
@BindView(R.id.fab_custom_theme_listing_activity)
|
||||
FloatingActionButton fab;
|
||||
@Inject
|
||||
@Named("default")
|
||||
SharedPreferences sharedPreferences;
|
||||
@ -91,6 +80,7 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
@Inject
|
||||
Executor executor;
|
||||
public CustomThemeViewModel customThemeViewModel;
|
||||
private ActivityCustomThemeListingBinding binding;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
@ -99,27 +89,26 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
setImmersiveModeNotApplicable();
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_custom_theme_listing);
|
||||
|
||||
ButterKnife.bind(this);
|
||||
binding = ActivityCustomThemeListingBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
EventBus.getDefault().register(this);
|
||||
|
||||
applyCustomTheme();
|
||||
|
||||
setSupportActionBar(toolbar);
|
||||
setSupportActionBar(binding.toolbarCustomizeThemeListingActivity);
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
|
||||
CustomThemeListingRecyclerViewAdapter adapter = new CustomThemeListingRecyclerViewAdapter(this,
|
||||
CustomThemeWrapper.getPredefinedThemes(this));
|
||||
recyclerView.setAdapter(adapter);
|
||||
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
|
||||
binding.recyclerViewCustomizeThemeListingActivity.setAdapter(adapter);
|
||||
binding.recyclerViewCustomizeThemeListingActivity.addOnScrollListener(new RecyclerView.OnScrollListener() {
|
||||
@Override
|
||||
public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
|
||||
if (dy > 0) {
|
||||
fab.hide();
|
||||
binding.fabCustomThemeListingActivity.hide();
|
||||
} else if (dy < 0) {
|
||||
fab.show();
|
||||
binding.fabCustomThemeListingActivity.show();
|
||||
}
|
||||
}
|
||||
});
|
||||
@ -129,7 +118,7 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
.get(CustomThemeViewModel.class);
|
||||
customThemeViewModel.getAllCustomThemes().observe(this, adapter::setUserThemes);
|
||||
|
||||
fab.setOnClickListener(view -> {
|
||||
binding.fabCustomThemeListingActivity.setOnClickListener(view -> {
|
||||
CreateThemeBottomSheetFragment createThemeBottomSheetFragment = new CreateThemeBottomSheetFragment();
|
||||
createThemeBottomSheetFragment.show(getSupportFragmentManager(), createThemeBottomSheetFragment.getTag());
|
||||
});
|
||||
@ -161,9 +150,9 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
|
||||
@Override
|
||||
protected void applyCustomTheme() {
|
||||
coordinatorLayout.setBackgroundColor(customThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(appBarLayout, collapsingToolbarLayout, toolbar);
|
||||
applyFABTheme(fab);
|
||||
binding.coordinatorLayoutCustomThemeListingActivity.setBackgroundColor(customThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(binding.appbarLayoutCustomizeThemeListingActivity, binding.collapsingToolbarLayoutCustomizeThemeListingActivity, binding.toolbarCustomizeThemeListingActivity);
|
||||
applyFABTheme(binding.fabCustomThemeListingActivity);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -199,12 +188,12 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
if (clipboard != null) {
|
||||
ClipData clip = ClipData.newPlainText("simple text", jsonModel);
|
||||
clipboard.setPrimaryClip(clip);
|
||||
Snackbar.make(coordinatorLayout, R.string.theme_copied, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.theme_copied, Snackbar.LENGTH_SHORT).show();
|
||||
} else {
|
||||
Snackbar.make(coordinatorLayout, R.string.copy_theme_faied, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.copy_theme_faied, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
} else {
|
||||
Snackbar.make(coordinatorLayout, R.string.cannot_find_theme, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.cannot_find_theme, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -247,12 +236,12 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
if (clipboard != null) {
|
||||
ClipData clip = ClipData.newPlainText("simple text", jsonModel);
|
||||
clipboard.setPrimaryClip(clip);
|
||||
Snackbar.make(coordinatorLayout, R.string.theme_copied, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.theme_copied, Snackbar.LENGTH_SHORT).show();
|
||||
} else {
|
||||
Snackbar.make(coordinatorLayout, R.string.copy_theme_faied, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.copy_theme_faied, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
} else {
|
||||
Snackbar.make(coordinatorLayout, R.string.cannot_find_theme, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.cannot_find_theme, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
}
|
||||
|
||||
@ -267,11 +256,11 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
if (clipboard != null) {
|
||||
// If it does contain data, decide if you can handle the data.
|
||||
if (!clipboard.hasPrimaryClip()) {
|
||||
Snackbar.make(coordinatorLayout, R.string.no_data_in_clipboard, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.no_data_in_clipboard, Snackbar.LENGTH_SHORT).show();
|
||||
} else if (clipboard.getPrimaryClipDescription() != null &&
|
||||
!clipboard.getPrimaryClipDescription().hasMimeType("text/*")) {
|
||||
// since the clipboard has data but it is not text
|
||||
Snackbar.make(coordinatorLayout, R.string.no_data_in_clipboard, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.no_data_in_clipboard, Snackbar.LENGTH_SHORT).show();
|
||||
} else if (clipboard.getPrimaryClip() != null) {
|
||||
ClipData.Item item = clipboard.getPrimaryClip().getItemAt(0);
|
||||
String json = item.coerceToText(this.getApplicationContext()).toString();
|
||||
@ -280,10 +269,10 @@ public class CustomThemeListingActivity extends BaseActivity implements
|
||||
CustomTheme customTheme = CustomTheme.fromJson(json);
|
||||
checkDuplicateAndImportTheme(customTheme, true);
|
||||
} catch (JsonParseException e) {
|
||||
Snackbar.make(coordinatorLayout, R.string.parse_theme_failed, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.parse_theme_failed, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
} else {
|
||||
Snackbar.make(coordinatorLayout, R.string.parse_theme_failed, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutCustomThemeListingActivity, R.string.parse_theme_failed, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -19,8 +19,6 @@ import android.view.ViewGroup;
|
||||
import android.view.ViewTreeObserver;
|
||||
import android.view.Window;
|
||||
import android.view.WindowManager;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
@ -34,9 +32,6 @@ import androidx.fragment.app.FragmentPagerAdapter;
|
||||
import androidx.viewpager.widget.ViewPager;
|
||||
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.appbar.CollapsingToolbarLayout;
|
||||
import com.google.android.material.bottomappbar.BottomAppBar;
|
||||
import com.google.android.material.chip.Chip;
|
||||
import com.google.android.material.floatingactionbutton.FloatingActionButton;
|
||||
import com.google.android.material.tabs.TabLayout;
|
||||
|
||||
@ -45,17 +40,15 @@ import java.util.ArrayList;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import ml.docilealligator.infinityforreddit.AppBarStateChangeListener;
|
||||
import ml.docilealligator.infinityforreddit.CustomFontReceiver;
|
||||
import ml.docilealligator.infinityforreddit.Infinity;
|
||||
import ml.docilealligator.infinityforreddit.R;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomTheme;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeSettingsItem;
|
||||
import ml.docilealligator.infinityforreddit.customviews.ViewPagerBugFixed;
|
||||
import ml.docilealligator.infinityforreddit.customviews.slidr.Slidr;
|
||||
import ml.docilealligator.infinityforreddit.customviews.slidr.widget.SliderPanel;
|
||||
import ml.docilealligator.infinityforreddit.databinding.ActivityThemePreviewBinding;
|
||||
import ml.docilealligator.infinityforreddit.font.ContentFontStyle;
|
||||
import ml.docilealligator.infinityforreddit.font.FontStyle;
|
||||
import ml.docilealligator.infinityforreddit.font.TitleFontStyle;
|
||||
@ -71,46 +64,6 @@ public class CustomThemePreviewActivity extends AppCompatActivity implements Cus
|
||||
public Typeface titleTypeface;
|
||||
public Typeface contentTypeface;
|
||||
|
||||
@BindView(R.id.coordinator_layout_theme_preview_activity)
|
||||
CoordinatorLayout coordinatorLayout;
|
||||
@BindView(R.id.view_pager_theme_preview_activity)
|
||||
ViewPagerBugFixed viewPager;
|
||||
@BindView(R.id.appbar_layout_theme_preview_activity)
|
||||
AppBarLayout appBarLayout;
|
||||
@BindView(R.id.collapsing_toolbar_layout_theme_preview_activity)
|
||||
CollapsingToolbarLayout collapsingToolbarLayout;
|
||||
@BindView(R.id.toolbar_linear_layout_theme_preview_activity)
|
||||
LinearLayout linearLayout;
|
||||
@BindView(R.id.extra_padding_view_theme_preview_activity)
|
||||
View extraPaddingView;
|
||||
@BindView(R.id.subreddit_name_text_view_theme_preview_activity)
|
||||
TextView subredditNameTextView;
|
||||
@BindView(R.id.user_name_text_view_theme_preview_activity)
|
||||
TextView usernameTextView;
|
||||
@BindView(R.id.subscribe_subreddit_chip_theme_preview_activity)
|
||||
Chip subscribeSubredditChip;
|
||||
@BindView(R.id.primary_text_text_view_theme_preview_activity)
|
||||
TextView primaryTextView;
|
||||
@BindView(R.id.secondary_text_text_view_theme_preview_activity)
|
||||
TextView secondaryTextView;
|
||||
@BindView(R.id.toolbar)
|
||||
Toolbar toolbar;
|
||||
@BindView(R.id.tab_layout_theme_preview_activity)
|
||||
TabLayout tabLayout;
|
||||
@BindView(R.id.bottom_navigation_theme_preview_activity)
|
||||
BottomAppBar bottomNavigationView;
|
||||
@BindView(R.id.linear_layout_bottom_app_bar_theme_preview_activity)
|
||||
LinearLayout linearLayoutBottomAppBar;
|
||||
@BindView(R.id.subscriptions_bottom_app_bar_theme_preview_activity)
|
||||
ImageView subscriptionsBottomAppBar;
|
||||
@BindView(R.id.multi_reddit_bottom_app_bar_theme_preview_activity)
|
||||
ImageView multiRedditBottomAppBar;
|
||||
@BindView(R.id.message_bottom_app_bar_theme_preview_activity)
|
||||
ImageView messageBottomAppBar;
|
||||
@BindView(R.id.profile_bottom_app_bar_theme_preview_activity)
|
||||
ImageView profileBottomAppBar;
|
||||
@BindView(R.id.fab_theme_preview_activity)
|
||||
FloatingActionButton fab;
|
||||
@Inject
|
||||
@Named("default")
|
||||
SharedPreferences mSharedPreferences;
|
||||
@ -127,6 +80,7 @@ public class CustomThemePreviewActivity extends AppCompatActivity implements Cus
|
||||
private int systemVisibilityToolbarExpanded = 0;
|
||||
private int systemVisibilityToolbarCollapsed = 0;
|
||||
private SliderPanel mSliderPanel;
|
||||
private ActivityThemePreviewBinding binding;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
@ -225,9 +179,8 @@ public class CustomThemePreviewActivity extends AppCompatActivity implements Cus
|
||||
getTheme().applyStyle(ContentFontStyle.valueOf(mSharedPreferences
|
||||
.getString(SharedPreferencesUtils.CONTENT_FONT_SIZE_KEY, ContentFontStyle.Normal.name())).getResId(), true);
|
||||
|
||||
setContentView(R.layout.activity_theme_preview);
|
||||
|
||||
ButterKnife.bind(this);
|
||||
binding = ActivityThemePreviewBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
applyCustomTheme();
|
||||
|
||||
@ -242,88 +195,88 @@ public class CustomThemePreviewActivity extends AppCompatActivity implements Cus
|
||||
} else {
|
||||
window.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
|
||||
}
|
||||
adjustToolbar(toolbar);
|
||||
adjustToolbar(binding.toolbar);
|
||||
|
||||
Resources resources = getResources();
|
||||
int navBarResourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android");
|
||||
if (navBarResourceId > 0) {
|
||||
int navBarHeight = resources.getDimensionPixelSize(navBarResourceId);
|
||||
if (navBarHeight > 0) {
|
||||
CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) fab.getLayoutParams();
|
||||
CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) binding.fabThemePreviewActivity.getLayoutParams();
|
||||
params.bottomMargin = navBarHeight;
|
||||
fab.setLayoutParams(params);
|
||||
linearLayoutBottomAppBar.setPadding(0,
|
||||
binding.fabThemePreviewActivity.setLayoutParams(params);
|
||||
binding.linearLayoutBottomAppBarThemePreviewActivity.setPadding(0,
|
||||
(int) (6 * getResources().getDisplayMetrics().density), 0, navBarHeight);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (changeStatusBarIconColor) {
|
||||
appBarLayout.addOnOffsetChangedListener(new AppBarStateChangeListener() {
|
||||
binding.appbarLayoutThemePreviewActivity.addOnOffsetChangedListener(new AppBarStateChangeListener() {
|
||||
@Override
|
||||
public void onStateChanged(AppBarLayout appBarLayout, AppBarStateChangeListener.State state) {
|
||||
if (state == State.COLLAPSED) {
|
||||
decorView.setSystemUiVisibility(systemVisibilityToolbarCollapsed);
|
||||
tabLayout.setTabTextColors(collapsedTabTextColor, collapsedTabTextColor);
|
||||
tabLayout.setSelectedTabIndicatorColor(collapsedTabIndicatorColor);
|
||||
tabLayout.setBackgroundColor(collapsedTabBackgroundColor);
|
||||
binding.tabLayoutThemePreviewActivity.setTabTextColors(collapsedTabTextColor, collapsedTabTextColor);
|
||||
binding.tabLayoutThemePreviewActivity.setSelectedTabIndicatorColor(collapsedTabIndicatorColor);
|
||||
binding.tabLayoutThemePreviewActivity.setBackgroundColor(collapsedTabBackgroundColor);
|
||||
} else if (state == State.EXPANDED) {
|
||||
decorView.setSystemUiVisibility(systemVisibilityToolbarExpanded);
|
||||
tabLayout.setTabTextColors(expandedTabTextColor, expandedTabTextColor);
|
||||
tabLayout.setSelectedTabIndicatorColor(expandedTabIndicatorColor);
|
||||
tabLayout.setBackgroundColor(expandedTabBackgroundColor);
|
||||
binding.tabLayoutThemePreviewActivity.setTabTextColors(expandedTabTextColor, expandedTabTextColor);
|
||||
binding.tabLayoutThemePreviewActivity.setSelectedTabIndicatorColor(expandedTabIndicatorColor);
|
||||
binding.tabLayoutThemePreviewActivity.setBackgroundColor(expandedTabBackgroundColor);
|
||||
}
|
||||
}
|
||||
});
|
||||
} else {
|
||||
appBarLayout.addOnOffsetChangedListener(new AppBarStateChangeListener() {
|
||||
binding.appbarLayoutThemePreviewActivity.addOnOffsetChangedListener(new AppBarStateChangeListener() {
|
||||
@Override
|
||||
public void onStateChanged(AppBarLayout appBarLayout, AppBarStateChangeListener.State state) {
|
||||
if (state == State.COLLAPSED) {
|
||||
tabLayout.setTabTextColors(collapsedTabTextColor, collapsedTabTextColor);
|
||||
tabLayout.setSelectedTabIndicatorColor(collapsedTabIndicatorColor);
|
||||
tabLayout.setBackgroundColor(collapsedTabBackgroundColor);
|
||||
binding.tabLayoutThemePreviewActivity.setTabTextColors(collapsedTabTextColor, collapsedTabTextColor);
|
||||
binding.tabLayoutThemePreviewActivity.setSelectedTabIndicatorColor(collapsedTabIndicatorColor);
|
||||
binding.tabLayoutThemePreviewActivity.setBackgroundColor(collapsedTabBackgroundColor);
|
||||
} else if (state == State.EXPANDED) {
|
||||
tabLayout.setTabTextColors(expandedTabTextColor, expandedTabTextColor);
|
||||
tabLayout.setSelectedTabIndicatorColor(expandedTabIndicatorColor);
|
||||
tabLayout.setBackgroundColor(expandedTabBackgroundColor);
|
||||
binding.tabLayoutThemePreviewActivity.setTabTextColors(expandedTabTextColor, expandedTabTextColor);
|
||||
binding.tabLayoutThemePreviewActivity.setSelectedTabIndicatorColor(expandedTabIndicatorColor);
|
||||
binding.tabLayoutThemePreviewActivity.setBackgroundColor(expandedTabBackgroundColor);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
appBarLayout.addOnOffsetChangedListener(new AppBarStateChangeListener() {
|
||||
binding.appbarLayoutThemePreviewActivity.addOnOffsetChangedListener(new AppBarStateChangeListener() {
|
||||
@Override
|
||||
public void onStateChanged(AppBarLayout appBarLayout, State state) {
|
||||
if (state == State.EXPANDED) {
|
||||
tabLayout.setTabTextColors(expandedTabTextColor, expandedTabTextColor);
|
||||
tabLayout.setSelectedTabIndicatorColor(expandedTabIndicatorColor);
|
||||
tabLayout.setBackgroundColor(expandedTabBackgroundColor);
|
||||
binding.tabLayoutThemePreviewActivity.setTabTextColors(expandedTabTextColor, expandedTabTextColor);
|
||||
binding.tabLayoutThemePreviewActivity.setSelectedTabIndicatorColor(expandedTabIndicatorColor);
|
||||
binding.tabLayoutThemePreviewActivity.setBackgroundColor(expandedTabBackgroundColor);
|
||||
} else if (state == State.COLLAPSED) {
|
||||
tabLayout.setTabTextColors(collapsedTabTextColor, collapsedTabTextColor);
|
||||
tabLayout.setSelectedTabIndicatorColor(collapsedTabIndicatorColor);
|
||||
tabLayout.setBackgroundColor(collapsedTabBackgroundColor);
|
||||
binding.tabLayoutThemePreviewActivity.setTabTextColors(collapsedTabTextColor, collapsedTabTextColor);
|
||||
binding.tabLayoutThemePreviewActivity.setSelectedTabIndicatorColor(collapsedTabIndicatorColor);
|
||||
binding.tabLayoutThemePreviewActivity.setBackgroundColor(collapsedTabBackgroundColor);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
setSupportActionBar(toolbar);
|
||||
setSupportActionBar(binding.toolbar);
|
||||
|
||||
subscribeSubredditChip.setOnClickListener(view -> {
|
||||
if (subscribeSubredditChip.getText().equals(getResources().getString(R.string.subscribe))) {
|
||||
subscribeSubredditChip.setText(R.string.unsubscribe);
|
||||
subscribeSubredditChip.setChipBackgroundColor(ColorStateList.valueOf(subscribedColor));
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setOnClickListener(view -> {
|
||||
if (binding.subscribeSubredditChipThemePreviewActivity.getText().equals(getResources().getString(R.string.subscribe))) {
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setText(R.string.unsubscribe);
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setChipBackgroundColor(ColorStateList.valueOf(subscribedColor));
|
||||
} else {
|
||||
subscribeSubredditChip.setText(R.string.subscribe);
|
||||
subscribeSubredditChip.setChipBackgroundColor(ColorStateList.valueOf(unsubscribedColor));
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setText(R.string.subscribe);
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setChipBackgroundColor(ColorStateList.valueOf(unsubscribedColor));
|
||||
}
|
||||
});
|
||||
|
||||
SectionsPagerAdapter sectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
|
||||
viewPager.setAdapter(sectionsPagerAdapter);
|
||||
viewPager.setOffscreenPageLimit(2);
|
||||
viewPager.addOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
|
||||
binding.viewPagerThemePreviewActivity.setAdapter(sectionsPagerAdapter);
|
||||
binding.viewPagerThemePreviewActivity.setOffscreenPageLimit(2);
|
||||
binding.viewPagerThemePreviewActivity.addOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
|
||||
@Override
|
||||
public void onPageSelected(int position) {
|
||||
if (position == 0) {
|
||||
@ -333,51 +286,51 @@ public class CustomThemePreviewActivity extends AppCompatActivity implements Cus
|
||||
}
|
||||
}
|
||||
});
|
||||
tabLayout.setupWithViewPager(viewPager);
|
||||
binding.tabLayoutThemePreviewActivity.setupWithViewPager(binding.viewPagerThemePreviewActivity);
|
||||
}
|
||||
|
||||
private void applyCustomTheme() {
|
||||
coordinatorLayout.setBackgroundColor(customTheme.backgroundColor);
|
||||
appBarLayout.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
|
||||
binding.coordinatorLayoutThemePreviewActivity.setBackgroundColor(customTheme.backgroundColor);
|
||||
binding.appbarLayoutThemePreviewActivity.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
|
||||
@Override
|
||||
public void onGlobalLayout() {
|
||||
appBarLayout.getViewTreeObserver().removeOnGlobalLayoutListener(this);
|
||||
collapsingToolbarLayout.setScrimVisibleHeightTrigger(toolbar.getHeight() + tabLayout.getHeight() + getStatusBarHeight() * 2);
|
||||
binding.appbarLayoutThemePreviewActivity.getViewTreeObserver().removeOnGlobalLayoutListener(this);
|
||||
binding.collapsingToolbarLayoutThemePreviewActivity.setScrimVisibleHeightTrigger(binding.toolbar.getHeight() + binding.tabLayoutThemePreviewActivity.getHeight() + getStatusBarHeight() * 2);
|
||||
}
|
||||
});
|
||||
collapsingToolbarLayout.setContentScrimColor(customTheme.colorPrimary);
|
||||
subscribeSubredditChip.setTextColor(customTheme.chipTextColor);
|
||||
subscribeSubredditChip.setChipBackgroundColor(ColorStateList.valueOf(customTheme.unsubscribed));
|
||||
applyAppBarLayoutAndToolbarTheme(appBarLayout, toolbar);
|
||||
binding.collapsingToolbarLayoutThemePreviewActivity.setContentScrimColor(customTheme.colorPrimary);
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setTextColor(customTheme.chipTextColor);
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setChipBackgroundColor(ColorStateList.valueOf(customTheme.unsubscribed));
|
||||
applyAppBarLayoutAndToolbarTheme(binding.appbarLayoutThemePreviewActivity, binding.toolbar);
|
||||
expandedTabTextColor = customTheme.tabLayoutWithExpandedCollapsingToolbarTextColor;
|
||||
expandedTabIndicatorColor = customTheme.tabLayoutWithExpandedCollapsingToolbarTabIndicator;
|
||||
expandedTabBackgroundColor = customTheme.tabLayoutWithExpandedCollapsingToolbarTabBackground;
|
||||
collapsedTabTextColor = customTheme.tabLayoutWithCollapsedCollapsingToolbarTextColor;
|
||||
collapsedTabIndicatorColor = customTheme.tabLayoutWithCollapsedCollapsingToolbarTabIndicator;
|
||||
collapsedTabBackgroundColor = customTheme.tabLayoutWithCollapsedCollapsingToolbarTabBackground;
|
||||
linearLayout.setBackgroundColor(customTheme.tabLayoutWithExpandedCollapsingToolbarTabBackground);
|
||||
extraPaddingView.setBackgroundColor(customTheme.colorPrimary);
|
||||
subredditNameTextView.setTextColor(customTheme.subreddit);
|
||||
usernameTextView.setTextColor(customTheme.username);
|
||||
subscribeSubredditChip.setTextColor(customTheme.chipTextColor);
|
||||
primaryTextView.setTextColor(customTheme.primaryTextColor);
|
||||
secondaryTextView.setTextColor(customTheme.secondaryTextColor);
|
||||
bottomNavigationView.setBackgroundTint(ColorStateList.valueOf(customTheme.bottomAppBarBackgroundColor));
|
||||
binding.linearLayoutBottomAppBarThemePreviewActivity.setBackgroundColor(customTheme.tabLayoutWithExpandedCollapsingToolbarTabBackground);
|
||||
binding.extraPaddingViewThemePreviewActivity.setBackgroundColor(customTheme.colorPrimary);
|
||||
binding.subredditNameTextViewThemePreviewActivity.setTextColor(customTheme.subreddit);
|
||||
binding.userNameTextViewThemePreviewActivity.setTextColor(customTheme.username);
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setTextColor(customTheme.chipTextColor);
|
||||
binding.primaryTextTextViewThemePreviewActivity.setTextColor(customTheme.primaryTextColor);
|
||||
binding.secondaryTextTextViewThemePreviewActivity.setTextColor(customTheme.secondaryTextColor);
|
||||
binding.bottomNavigationThemePreviewActivity.setBackgroundTint(ColorStateList.valueOf(customTheme.bottomAppBarBackgroundColor));
|
||||
int bottomAppBarIconColor = customTheme.bottomAppBarIconColor;
|
||||
subscriptionsBottomAppBar.setColorFilter(bottomAppBarIconColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
multiRedditBottomAppBar.setColorFilter(bottomAppBarIconColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
messageBottomAppBar.setColorFilter(bottomAppBarIconColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
profileBottomAppBar.setColorFilter(bottomAppBarIconColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
applyTabLayoutTheme(tabLayout);
|
||||
applyFABTheme(fab);
|
||||
binding.subscriptionsBottomAppBarThemePreviewActivity.setColorFilter(bottomAppBarIconColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
binding.multiRedditBottomAppBarThemePreviewActivity.setColorFilter(bottomAppBarIconColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
binding.messageBottomAppBarThemePreviewActivity.setColorFilter(bottomAppBarIconColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
binding.profileBottomAppBarThemePreviewActivity.setColorFilter(bottomAppBarIconColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||
applyTabLayoutTheme(binding.tabLayoutThemePreviewActivity);
|
||||
applyFABTheme(binding.fabThemePreviewActivity);
|
||||
unsubscribedColor = customTheme.unsubscribed;
|
||||
subscribedColor = customTheme.subscribed;
|
||||
if (typeface != null) {
|
||||
subredditNameTextView.setTypeface(typeface);
|
||||
usernameTextView.setTypeface(typeface);
|
||||
primaryTextView.setTypeface(typeface);
|
||||
secondaryTextView.setTypeface(typeface);
|
||||
subscribeSubredditChip.setTypeface(typeface);
|
||||
binding.subredditNameTextViewThemePreviewActivity.setTypeface(typeface);
|
||||
binding.userNameTextViewThemePreviewActivity.setTypeface(typeface);
|
||||
binding.primaryTextTextViewThemePreviewActivity.setTypeface(typeface);
|
||||
binding.secondaryTextTextViewThemePreviewActivity.setTypeface(typeface);
|
||||
binding.subscribeSubredditChipThemePreviewActivity.setTypeface(typeface);
|
||||
}
|
||||
}
|
||||
|
||||
@ -420,7 +373,7 @@ public class CustomThemePreviewActivity extends AppCompatActivity implements Cus
|
||||
toolbar.setLayoutParams(params);
|
||||
TypedValue tv = new TypedValue();
|
||||
if (getTheme().resolveAttribute(android.R.attr.actionBarSize, tv, true)) {
|
||||
((ViewGroup.MarginLayoutParams) linearLayout.getLayoutParams()).setMargins(0,
|
||||
((ViewGroup.MarginLayoutParams) binding.linearLayoutBottomAppBarThemePreviewActivity.getLayoutParams()).setMargins(0,
|
||||
TypedValue.complexToDimensionPixelSize(tv.data, getResources().getDisplayMetrics()) + statusBarHeight, 0, 0);
|
||||
}
|
||||
}
|
||||
@ -428,9 +381,9 @@ public class CustomThemePreviewActivity extends AppCompatActivity implements Cus
|
||||
|
||||
protected void applyTabLayoutTheme(TabLayout tabLayout) {
|
||||
int toolbarAndTabBackgroundColor = customTheme.colorPrimary;
|
||||
tabLayout.setBackgroundColor(toolbarAndTabBackgroundColor);
|
||||
tabLayout.setSelectedTabIndicatorColor(customTheme.tabLayoutWithCollapsedCollapsingToolbarTabIndicator);
|
||||
tabLayout.setTabTextColors(customTheme.tabLayoutWithCollapsedCollapsingToolbarTextColor,
|
||||
binding.tabLayoutThemePreviewActivity.setBackgroundColor(toolbarAndTabBackgroundColor);
|
||||
binding.tabLayoutThemePreviewActivity.setSelectedTabIndicatorColor(customTheme.tabLayoutWithCollapsedCollapsingToolbarTabIndicator);
|
||||
binding.tabLayoutThemePreviewActivity.setTabTextColors(customTheme.tabLayoutWithCollapsedCollapsingToolbarTextColor,
|
||||
customTheme.tabLayoutWithCollapsedCollapsingToolbarTextColor);
|
||||
}
|
||||
|
||||
|
||||
@ -10,12 +10,7 @@ import android.view.MenuItem;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.appcompat.widget.Toolbar;
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.appbar.CollapsingToolbarLayout;
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.snackbar.Snackbar;
|
||||
|
||||
@ -27,8 +22,6 @@ import java.util.concurrent.Executor;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import ml.docilealligator.infinityforreddit.Infinity;
|
||||
import ml.docilealligator.infinityforreddit.R;
|
||||
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
||||
@ -38,6 +31,7 @@ import ml.docilealligator.infinityforreddit.asynctasks.InsertCustomTheme;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomTheme;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeSettingsItem;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
|
||||
import ml.docilealligator.infinityforreddit.databinding.ActivityCustomizeThemeBinding;
|
||||
import ml.docilealligator.infinityforreddit.events.RecreateActivityEvent;
|
||||
import ml.docilealligator.infinityforreddit.utils.CustomThemeSharedPreferencesUtils;
|
||||
|
||||
@ -53,16 +47,6 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
private static final String CUSTOM_THEME_SETTINGS_ITEMS_STATE = "CTSIS";
|
||||
private static final String THEME_NAME_STATE = "TNS";
|
||||
|
||||
@BindView(R.id.coordinator_customize_theme_activity)
|
||||
CoordinatorLayout coordinatorLayout;
|
||||
@BindView(R.id.appbar_layout_customize_theme_activity)
|
||||
AppBarLayout appBarLayout;
|
||||
@BindView(R.id.collapsing_toolbar_layout_customize_theme_activity)
|
||||
CollapsingToolbarLayout collapsingToolbarLayout;
|
||||
@BindView(R.id.toolbar_customize_theme_activity)
|
||||
Toolbar toolbar;
|
||||
@BindView(R.id.recycler_view_customize_theme_activity)
|
||||
RecyclerView recyclerView;
|
||||
@Inject
|
||||
@Named("default")
|
||||
SharedPreferences sharedPreferences;
|
||||
@ -89,6 +73,7 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
private boolean isPredefinedTheme;
|
||||
private ArrayList<CustomThemeSettingsItem> customThemeSettingsItems;
|
||||
private CustomizeThemeRecyclerViewAdapter adapter;
|
||||
private ActivityCustomizeThemeBinding binding;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
@ -97,13 +82,12 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
setImmersiveModeNotApplicable();
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_customize_theme);
|
||||
|
||||
ButterKnife.bind(this);
|
||||
binding = ActivityCustomizeThemeBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
applyCustomTheme();
|
||||
|
||||
setSupportActionBar(toolbar);
|
||||
setSupportActionBar(binding.toolbarCustomizeThemeActivity);
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
|
||||
if (getIntent().getBooleanExtra(EXTRA_CREATE_THEME, false)) {
|
||||
@ -152,14 +136,14 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
}
|
||||
|
||||
adapter = new CustomizeThemeRecyclerViewAdapter(this, customThemeWrapper, themeName);
|
||||
recyclerView.setAdapter(adapter);
|
||||
binding.recyclerViewCustomizeThemeActivity.setAdapter(adapter);
|
||||
adapter.setCustomThemeSettingsItem(customThemeSettingsItems);
|
||||
});
|
||||
} else {
|
||||
isPredefinedTheme = getIntent().getBooleanExtra(EXTRA_IS_PREDEFIINED_THEME, false);
|
||||
themeName = getIntent().getStringExtra(EXTRA_THEME_NAME);
|
||||
adapter = new CustomizeThemeRecyclerViewAdapter(this, customThemeWrapper, themeName);
|
||||
recyclerView.setAdapter(adapter);
|
||||
binding.recyclerViewCustomizeThemeActivity.setAdapter(adapter);
|
||||
if (isPredefinedTheme) {
|
||||
customThemeSettingsItems = CustomThemeSettingsItem.convertCustomThemeToSettingsItem(
|
||||
CustomizeThemeActivity.this,
|
||||
@ -167,7 +151,7 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
androidVersion);
|
||||
|
||||
adapter = new CustomizeThemeRecyclerViewAdapter(this, customThemeWrapper, themeName);
|
||||
recyclerView.setAdapter(adapter);
|
||||
binding.recyclerViewCustomizeThemeActivity.setAdapter(adapter);
|
||||
adapter.setCustomThemeSettingsItem(customThemeSettingsItems);
|
||||
} else {
|
||||
GetCustomTheme.getCustomTheme(mExecutor, new Handler(), redditDataRoomDatabase,
|
||||
@ -181,7 +165,7 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
}
|
||||
} else {
|
||||
adapter = new CustomizeThemeRecyclerViewAdapter(this, customThemeWrapper, themeName);
|
||||
recyclerView.setAdapter(adapter);
|
||||
binding.recyclerViewCustomizeThemeActivity.setAdapter(adapter);
|
||||
adapter.setCustomThemeSettingsItem(customThemeSettingsItems);
|
||||
}
|
||||
}
|
||||
@ -209,7 +193,7 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
if (adapter != null) {
|
||||
themeName = adapter.getThemeName();
|
||||
if (themeName.equals("")) {
|
||||
Snackbar.make(coordinatorLayout, R.string.no_theme_name, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorCustomizeThemeActivity, R.string.no_theme_name, Snackbar.LENGTH_SHORT).show();
|
||||
return true;
|
||||
}
|
||||
CustomTheme customTheme = CustomTheme.convertSettingsItemsToCustomTheme(customThemeSettingsItems, themeName);
|
||||
@ -264,7 +248,7 @@ public class CustomizeThemeActivity extends BaseActivity {
|
||||
|
||||
@Override
|
||||
protected void applyCustomTheme() {
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(appBarLayout, collapsingToolbarLayout, toolbar);
|
||||
coordinatorLayout.setBackgroundColor(customThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(binding.appbarLayoutCustomizeThemeActivity, binding.collapsingToolbarLayoutCustomizeThemeActivity, binding.toolbarCustomizeThemeActivity);
|
||||
binding.coordinatorCustomizeThemeActivity.setBackgroundColor(customThemeWrapper.getBackgroundColor());
|
||||
}
|
||||
}
|
||||
|
||||
@ -11,18 +11,13 @@ import android.os.Handler;
|
||||
import android.provider.MediaStore;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
import android.widget.EditText;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.widget.Toolbar;
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
import androidx.core.content.FileProvider;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.snackbar.Snackbar;
|
||||
|
||||
@ -40,8 +35,6 @@ import java.util.concurrent.Executor;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import ml.docilealligator.infinityforreddit.Infinity;
|
||||
import ml.docilealligator.infinityforreddit.MediaMetadata;
|
||||
import ml.docilealligator.infinityforreddit.R;
|
||||
@ -52,6 +45,7 @@ import ml.docilealligator.infinityforreddit.apis.RedditAPI;
|
||||
import ml.docilealligator.infinityforreddit.bottomsheetfragments.UploadedImagesBottomSheetFragment;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
|
||||
import ml.docilealligator.infinityforreddit.customviews.LinearLayoutManagerBugFixed;
|
||||
import ml.docilealligator.infinityforreddit.databinding.ActivityEditCommentBinding;
|
||||
import ml.docilealligator.infinityforreddit.events.SwitchAccountEvent;
|
||||
import ml.docilealligator.infinityforreddit.markdown.RichTextJSONConverter;
|
||||
import ml.docilealligator.infinityforreddit.utils.APIUtils;
|
||||
@ -77,16 +71,6 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
|
||||
private static final String UPLOADED_IMAGES_STATE = "UIS";
|
||||
|
||||
@BindView(R.id.coordinator_layout_edit_comment_activity)
|
||||
CoordinatorLayout coordinatorLayout;
|
||||
@BindView(R.id.appbar_layout_edit_comment_activity)
|
||||
AppBarLayout appBarLayout;
|
||||
@BindView(R.id.toolbar_edit_comment_activity)
|
||||
Toolbar toolbar;
|
||||
@BindView(R.id.comment_edit_text_edit_comment_activity)
|
||||
EditText contentEditText;
|
||||
@BindView(R.id.markdown_bottom_bar_recycler_view_edit_comment_activity)
|
||||
RecyclerView markdownBottomBarRecyclerView;
|
||||
@Inject
|
||||
@Named("oauth")
|
||||
Retrofit mOauthRetrofit;
|
||||
@ -109,6 +93,7 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
private boolean isSubmitting = false;
|
||||
private Uri capturedImageUri;
|
||||
private ArrayList<UploadedImage> uploadedImages = new ArrayList<>();
|
||||
private ActivityEditCommentBinding binding;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
@ -118,19 +103,17 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
setContentView(R.layout.activity_edit_comment);
|
||||
|
||||
ButterKnife.bind(this);
|
||||
binding = ActivityEditCommentBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
EventBus.getDefault().register(this);
|
||||
|
||||
applyCustomTheme();
|
||||
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && isChangeStatusBarIconColor()) {
|
||||
addOnOffsetChangedListener(appBarLayout);
|
||||
addOnOffsetChangedListener(binding.appbarLayoutEditCommentActivity);
|
||||
}
|
||||
|
||||
setSupportActionBar(toolbar);
|
||||
setSupportActionBar(binding.toolbarEditCommentActivity);
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
|
||||
mFullName = getIntent().getStringExtra(EXTRA_FULLNAME);
|
||||
@ -155,7 +138,7 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
}
|
||||
mCommentContent = sb.toString();
|
||||
}
|
||||
contentEditText.setText(mCommentContent);
|
||||
binding.commentEditTextEditCommentActivity.setText(mCommentContent);
|
||||
|
||||
if (savedInstanceState != null) {
|
||||
uploadedImages = savedInstanceState.getParcelableArrayList(UPLOADED_IMAGES_STATE);
|
||||
@ -166,7 +149,7 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
@Override
|
||||
public void onClick(int item) {
|
||||
MarkdownBottomBarRecyclerViewAdapter.bindEditTextWithItemClickListener(
|
||||
EditCommentActivity.this, contentEditText, item);
|
||||
EditCommentActivity.this, binding.commentEditTextEditCommentActivity, item);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -181,12 +164,12 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
}
|
||||
});
|
||||
|
||||
markdownBottomBarRecyclerView.setLayoutManager(new LinearLayoutManagerBugFixed(this,
|
||||
binding.markdownBottomBarRecyclerViewEditCommentActivity.setLayoutManager(new LinearLayoutManagerBugFixed(this,
|
||||
LinearLayoutManager.HORIZONTAL, false));
|
||||
markdownBottomBarRecyclerView.setAdapter(adapter);
|
||||
binding.markdownBottomBarRecyclerViewEditCommentActivity.setAdapter(adapter);
|
||||
|
||||
contentEditText.requestFocus();
|
||||
Utils.showKeyboard(this, new Handler(), contentEditText);
|
||||
binding.commentEditTextEditCommentActivity.requestFocus();
|
||||
Utils.showKeyboard(this, new Handler(), binding.commentEditTextEditCommentActivity);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -206,12 +189,12 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
|
||||
@Override
|
||||
protected void applyCustomTheme() {
|
||||
coordinatorLayout.setBackgroundColor(mCustomThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(appBarLayout, null, toolbar);
|
||||
contentEditText.setTextColor(mCustomThemeWrapper.getCommentColor());
|
||||
binding.coordinatorLayoutEditCommentActivity.setBackgroundColor(mCustomThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(binding.appbarLayoutEditCommentActivity, null, binding.toolbarEditCommentActivity);
|
||||
binding.commentEditTextEditCommentActivity.setTextColor(mCustomThemeWrapper.getCommentColor());
|
||||
|
||||
if (contentTypeface != null) {
|
||||
contentEditText.setTypeface(contentTypeface);
|
||||
binding.commentEditTextEditCommentActivity.setTypeface(contentTypeface);
|
||||
}
|
||||
}
|
||||
|
||||
@ -232,7 +215,7 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
|
||||
if (item.getItemId() == R.id.action_preview_edit_comment_activity) {
|
||||
Intent intent = new Intent(this, FullMarkdownActivity.class);
|
||||
intent.putExtra(FullMarkdownActivity.EXTRA_COMMENT_MARKDOWN, contentEditText.getText().toString());
|
||||
intent.putExtra(FullMarkdownActivity.EXTRA_COMMENT_MARKDOWN, binding.commentEditTextEditCommentActivity.getText().toString());
|
||||
intent.putExtra(FullMarkdownActivity.EXTRA_SUBMIT_POST, true);
|
||||
startActivityForResult(intent, MARKDOWN_PREVIEW_REQUEST_CODE);
|
||||
} else if (item.getItemId() == R.id.action_send_edit_comment_activity) {
|
||||
@ -249,9 +232,9 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
if (!isSubmitting) {
|
||||
isSubmitting = true;
|
||||
|
||||
Snackbar.make(coordinatorLayout, R.string.posting, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutEditCommentActivity, R.string.posting, Snackbar.LENGTH_SHORT).show();
|
||||
|
||||
String content = contentEditText.getText().toString();
|
||||
String content = binding.commentEditTextEditCommentActivity.getText().toString();
|
||||
|
||||
Map<String, String> params = new HashMap<>();
|
||||
params.put(APIUtils.THING_ID_KEY, mFullName);
|
||||
@ -261,7 +244,7 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
params.put(APIUtils.TEXT_KEY, "");
|
||||
} catch (JSONException e) {
|
||||
isSubmitting = false;
|
||||
Snackbar.make(coordinatorLayout, R.string.convert_to_richtext_json_failed, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutEditCommentActivity, R.string.convert_to_richtext_json_failed, Snackbar.LENGTH_SHORT).show();
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
@ -284,14 +267,14 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
|
||||
finish();
|
||||
} else {
|
||||
Snackbar.make(coordinatorLayout, R.string.post_failed, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutEditCommentActivity, R.string.post_failed, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(@NonNull Call<String> call, @NonNull Throwable t) {
|
||||
isSubmitting = false;
|
||||
Snackbar.make(coordinatorLayout, R.string.post_failed, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutEditCommentActivity, R.string.post_failed, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
});
|
||||
|
||||
@ -318,10 +301,10 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
return;
|
||||
}
|
||||
Utils.uploadImageToReddit(this, mExecutor, mOauthRetrofit, mUploadMediaRetrofit,
|
||||
mAccessToken, contentEditText, coordinatorLayout, data.getData(), uploadedImages);
|
||||
mAccessToken, binding.commentEditTextEditCommentActivity, binding.coordinatorLayoutEditCommentActivity, data.getData(), uploadedImages);
|
||||
} else if (requestCode == CAPTURE_IMAGE_REQUEST_CODE) {
|
||||
Utils.uploadImageToReddit(this, mExecutor, mOauthRetrofit, mUploadMediaRetrofit,
|
||||
mAccessToken, contentEditText, coordinatorLayout, capturedImageUri, uploadedImages);
|
||||
mAccessToken, binding.commentEditTextEditCommentActivity, binding.coordinatorLayoutEditCommentActivity, capturedImageUri, uploadedImages);
|
||||
} else if (requestCode == MARKDOWN_PREVIEW_REQUEST_CODE) {
|
||||
editComment();
|
||||
}
|
||||
@ -339,7 +322,7 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
if (isSubmitting) {
|
||||
promptAlertDialog(R.string.exit_when_submit, R.string.exit_when_edit_comment_detail);
|
||||
} else {
|
||||
if (contentEditText.getText().toString().equals(mCommentContent)) {
|
||||
if (binding.commentEditTextEditCommentActivity.getText().toString().equals(mCommentContent)) {
|
||||
finish();
|
||||
} else {
|
||||
promptAlertDialog(R.string.discard, R.string.discard_detail);
|
||||
@ -384,15 +367,15 @@ public class EditCommentActivity extends BaseActivity implements UploadImageEnab
|
||||
|
||||
@Override
|
||||
public void insertImageUrl(UploadedImage uploadedImage) {
|
||||
int start = Math.max(contentEditText.getSelectionStart(), 0);
|
||||
int end = Math.max(contentEditText.getSelectionEnd(), 0);
|
||||
int start = Math.max(binding.commentEditTextEditCommentActivity.getSelectionStart(), 0);
|
||||
int end = Math.max(binding.commentEditTextEditCommentActivity.getSelectionEnd(), 0);
|
||||
int realStart = Math.min(start, end);
|
||||
if (realStart > 0 && contentEditText.getText().toString().charAt(realStart - 1) != '\n') {
|
||||
contentEditText.getText().replace(realStart, Math.max(start, end),
|
||||
if (realStart > 0 && binding.commentEditTextEditCommentActivity.getText().toString().charAt(realStart - 1) != '\n') {
|
||||
binding.commentEditTextEditCommentActivity.getText().replace(realStart, Math.max(start, end),
|
||||
"\n\n",
|
||||
0, "\n![]()\n".length() + uploadedImage.imageUrlOrKey.length());
|
||||
} else {
|
||||
contentEditText.getText().replace(realStart, Math.max(start, end),
|
||||
binding.commentEditTextEditCommentActivity.getText().replace(realStart, Math.max(start, end),
|
||||
"\n",
|
||||
0, "![]()\n".length() + uploadedImage.imageUrlOrKey.length());
|
||||
}
|
||||
|
||||
@ -9,20 +9,11 @@ import android.os.Handler;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.EditText;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ProgressBar;
|
||||
import android.widget.Switch;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.widget.Toolbar;
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
import androidx.core.view.inputmethod.EditorInfoCompat;
|
||||
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.appbar.CollapsingToolbarLayout;
|
||||
import com.google.android.material.snackbar.Snackbar;
|
||||
|
||||
import java.util.concurrent.Executor;
|
||||
@ -30,14 +21,13 @@ import java.util.concurrent.Executor;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import ml.docilealligator.infinityforreddit.Infinity;
|
||||
import ml.docilealligator.infinityforreddit.R;
|
||||
import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
||||
import ml.docilealligator.infinityforreddit.account.Account;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
|
||||
import ml.docilealligator.infinityforreddit.customviews.slidr.Slidr;
|
||||
import ml.docilealligator.infinityforreddit.databinding.ActivityEditMultiRedditBinding;
|
||||
import ml.docilealligator.infinityforreddit.multireddit.EditMultiReddit;
|
||||
import ml.docilealligator.infinityforreddit.multireddit.FetchMultiRedditInfo;
|
||||
import ml.docilealligator.infinityforreddit.multireddit.MultiReddit;
|
||||
@ -51,34 +41,6 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
private static final int SUBREDDIT_SELECTION_REQUEST_CODE = 1;
|
||||
private static final String MULTI_REDDIT_STATE = "MRS";
|
||||
private static final String MULTI_PATH_STATE = "MPS";
|
||||
@BindView(R.id.coordinator_layout_edit_multi_reddit_activity)
|
||||
CoordinatorLayout coordinatorLayout;
|
||||
@BindView(R.id.appbar_layout_edit_multi_reddit_activity)
|
||||
AppBarLayout appBarLayout;
|
||||
@BindView(R.id.collapsing_toolbar_layout_edit_multi_reddit_activity)
|
||||
CollapsingToolbarLayout collapsingToolbarLayout;
|
||||
@BindView(R.id.toolbar_edit_multi_reddit_activity)
|
||||
Toolbar toolbar;
|
||||
@BindView(R.id.progress_bar_edit_multi_reddit_activity)
|
||||
ProgressBar progressBar;
|
||||
@BindView(R.id.linear_layout_edit_multi_reddit_activity)
|
||||
LinearLayout linearLayout;
|
||||
@BindView(R.id.multi_reddit_name_edit_text_edit_multi_reddit_activity)
|
||||
EditText nameEditText;
|
||||
@BindView(R.id.divider_1_edit_multi_reddit_activity)
|
||||
View divider1;
|
||||
@BindView(R.id.description_edit_text_edit_multi_reddit_activity)
|
||||
EditText descriptionEditText;
|
||||
@BindView(R.id.divider_2_edit_multi_reddit_activity)
|
||||
View divider2;
|
||||
@BindView(R.id.visibility_wrapper_linear_layout_edit_multi_reddit_activity)
|
||||
LinearLayout visibilityLinearLayout;
|
||||
@BindView(R.id.visibility_text_view_edit_multi_reddit_activity)
|
||||
TextView visibilityTextView;
|
||||
@BindView(R.id.visibility_switch_edit_multi_reddit_activity)
|
||||
Switch visibilitySwitch;
|
||||
@BindView(R.id.select_subreddit_text_view_edit_multi_reddit_activity)
|
||||
TextView selectSubredditTextView;
|
||||
@Inject
|
||||
@Named("oauth")
|
||||
Retrofit mRetrofit;
|
||||
@ -96,6 +58,7 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
Executor mExecutor;
|
||||
private MultiReddit multiReddit;
|
||||
private String multipath;
|
||||
private ActivityEditMultiRedditBinding binding;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
@ -104,9 +67,8 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
setImmersiveModeNotApplicable();
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_edit_multi_reddit);
|
||||
|
||||
ButterKnife.bind(this);
|
||||
binding = ActivityEditMultiRedditBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
applyCustomTheme();
|
||||
|
||||
@ -115,17 +77,17 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
}
|
||||
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && isChangeStatusBarIconColor()) {
|
||||
addOnOffsetChangedListener(appBarLayout);
|
||||
addOnOffsetChangedListener(binding.appbarLayoutEditMultiRedditActivity);
|
||||
}
|
||||
|
||||
setSupportActionBar(toolbar);
|
||||
setSupportActionBar(binding.toolbarEditMultiRedditActivity);
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
|
||||
if (accountName.equals(Account.ANONYMOUS_ACCOUNT)) {
|
||||
visibilityLinearLayout.setVisibility(View.GONE);
|
||||
binding.visibilityWrapperLinearLayoutEditMultiRedditActivity.setVisibility(View.GONE);
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||
nameEditText.setImeOptions(nameEditText.getImeOptions() | EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING);
|
||||
descriptionEditText.setImeOptions(descriptionEditText.getImeOptions() | EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING);
|
||||
binding.multiRedditNameEditTextEditMultiRedditActivity.setImeOptions(binding.multiRedditNameEditTextEditMultiRedditActivity.getImeOptions() | EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING);
|
||||
binding.descriptionEditTextEditMultiRedditActivity.setImeOptions(binding.descriptionEditTextEditMultiRedditActivity.getImeOptions() | EditorInfoCompat.IME_FLAG_NO_PERSONALIZED_LEARNING);
|
||||
}
|
||||
}
|
||||
|
||||
@ -147,10 +109,10 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
@Override
|
||||
public void success(MultiReddit multiReddit) {
|
||||
EditMultiRedditActivity.this.multiReddit = multiReddit;
|
||||
progressBar.setVisibility(View.GONE);
|
||||
linearLayout.setVisibility(View.VISIBLE);
|
||||
nameEditText.setText(multiReddit.getDisplayName());
|
||||
descriptionEditText.setText(multiReddit.getDescription());
|
||||
binding.progressBarEditMultiRedditActivity.setVisibility(View.GONE);
|
||||
binding.linearLayoutEditMultiRedditActivity.setVisibility(View.VISIBLE);
|
||||
binding.multiRedditNameEditTextEditMultiRedditActivity.setText(multiReddit.getDisplayName());
|
||||
binding.descriptionEditTextEditMultiRedditActivity.setText(multiReddit.getDescription());
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -163,28 +125,27 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
@Override
|
||||
public void success(MultiReddit multiReddit) {
|
||||
EditMultiRedditActivity.this.multiReddit = multiReddit;
|
||||
progressBar.setVisibility(View.GONE);
|
||||
linearLayout.setVisibility(View.VISIBLE);
|
||||
nameEditText.setText(multiReddit.getDisplayName());
|
||||
descriptionEditText.setText(multiReddit.getDescription());
|
||||
visibilitySwitch.setChecked(!multiReddit.getVisibility().equals("public"));
|
||||
binding.progressBarEditMultiRedditActivity.setVisibility(View.GONE);
|
||||
binding.linearLayoutEditMultiRedditActivity.setVisibility(View.VISIBLE);
|
||||
binding.multiRedditNameEditTextEditMultiRedditActivity.setText(multiReddit.getDisplayName());
|
||||
binding.descriptionEditTextEditMultiRedditActivity.setText(multiReddit.getDescription());
|
||||
binding.visibilitySwitchEditMultiRedditActivity.setChecked(!multiReddit.getVisibility().equals("public"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void failed() {
|
||||
Snackbar.make(coordinatorLayout, R.string.cannot_fetch_multireddit, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutEditMultiRedditActivity, R.string.cannot_fetch_multireddit, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
progressBar.setVisibility(View.GONE);
|
||||
linearLayout.setVisibility(View.VISIBLE);
|
||||
nameEditText.setText(multiReddit.getDisplayName());
|
||||
descriptionEditText.setText(multiReddit.getDescription());
|
||||
visibilitySwitch.setChecked(!multiReddit.getVisibility().equals("public"));
|
||||
binding.progressBarEditMultiRedditActivity.setVisibility(View.GONE);
|
||||
binding.linearLayoutEditMultiRedditActivity.setVisibility(View.VISIBLE);
|
||||
binding.multiRedditNameEditTextEditMultiRedditActivity.setText(multiReddit.getDisplayName());
|
||||
binding.descriptionEditTextEditMultiRedditActivity.setText(multiReddit.getDescription());
|
||||
binding.visibilitySwitchEditMultiRedditActivity.setChecked(!multiReddit.getVisibility().equals("public"));
|
||||
}
|
||||
|
||||
selectSubredditTextView.setOnClickListener(view -> {
|
||||
binding.selectSubredditTextViewEditMultiRedditActivity.setOnClickListener(view -> {
|
||||
Intent intent = new Intent(EditMultiRedditActivity.this, SelectedSubredditsAndUsersActivity.class);
|
||||
if (multiReddit.getSubreddits() != null) {
|
||||
intent.putStringArrayListExtra(SelectedSubredditsAndUsersActivity.EXTRA_SELECTED_SUBREDDITS, multiReddit.getSubreddits());
|
||||
@ -207,16 +168,16 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
finish();
|
||||
return true;
|
||||
} else if (itemId == R.id.action_save_edit_multi_reddit_activity) {
|
||||
if (nameEditText.getText() == null || nameEditText.getText().toString().equals("")) {
|
||||
Snackbar.make(coordinatorLayout, R.string.no_multi_reddit_name, Snackbar.LENGTH_SHORT).show();
|
||||
if (binding.multiRedditNameEditTextEditMultiRedditActivity.getText() == null || binding.multiRedditNameEditTextEditMultiRedditActivity.getText().toString().equals("")) {
|
||||
Snackbar.make(binding.coordinatorLayoutEditMultiRedditActivity, R.string.no_multi_reddit_name, Snackbar.LENGTH_SHORT).show();
|
||||
return true;
|
||||
}
|
||||
|
||||
if (accountName.equals(Account.ANONYMOUS_ACCOUNT)) {
|
||||
String name = nameEditText.getText().toString();
|
||||
String name = binding.multiRedditNameEditTextEditMultiRedditActivity.getText().toString();
|
||||
multiReddit.setDisplayName(name);
|
||||
multiReddit.setName(name);
|
||||
multiReddit.setDescription(descriptionEditText.getText().toString());
|
||||
multiReddit.setDescription(binding.descriptionEditTextEditMultiRedditActivity.getText().toString());
|
||||
EditMultiReddit.anonymousEditMultiReddit(mExecutor, new Handler(), mRedditDataRoomDatabase,
|
||||
multiReddit, new EditMultiReddit.EditMultiRedditListener() {
|
||||
@Override
|
||||
@ -230,8 +191,8 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
}
|
||||
});
|
||||
} else {
|
||||
String jsonModel = new MultiRedditJSONModel(nameEditText.getText().toString(), descriptionEditText.getText().toString(),
|
||||
visibilitySwitch.isChecked(), multiReddit.getSubreddits()).createJSONModel();
|
||||
String jsonModel = new MultiRedditJSONModel(binding.multiRedditNameEditTextEditMultiRedditActivity.getText().toString(), binding.descriptionEditTextEditMultiRedditActivity.getText().toString(),
|
||||
binding.visibilitySwitchEditMultiRedditActivity.isChecked(), multiReddit.getSubreddits()).createJSONModel();
|
||||
EditMultiReddit.editMultiReddit(mRetrofit, accessToken, multiReddit.getPath(),
|
||||
jsonModel, new EditMultiReddit.EditMultiRedditListener() {
|
||||
@Override
|
||||
@ -241,7 +202,7 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
|
||||
@Override
|
||||
public void failed() {
|
||||
Snackbar.make(coordinatorLayout, R.string.edit_multi_reddit_failed, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutEditMultiRedditActivity, R.string.edit_multi_reddit_failed, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
@ -285,23 +246,23 @@ public class EditMultiRedditActivity extends BaseActivity {
|
||||
|
||||
@Override
|
||||
protected void applyCustomTheme() {
|
||||
coordinatorLayout.setBackgroundColor(mCustomThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(appBarLayout, collapsingToolbarLayout, toolbar);
|
||||
progressBar.setIndeterminateTintList(ColorStateList.valueOf(mCustomThemeWrapper.getColorAccent()));
|
||||
binding.coordinatorLayoutEditMultiRedditActivity.setBackgroundColor(mCustomThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(binding.appbarLayoutEditMultiRedditActivity, binding.collapsingToolbarLayoutEditMultiRedditActivity, binding.toolbarEditMultiRedditActivity);
|
||||
binding.progressBarEditMultiRedditActivity.setIndeterminateTintList(ColorStateList.valueOf(mCustomThemeWrapper.getColorAccent()));
|
||||
int primaryTextColor = mCustomThemeWrapper.getPrimaryTextColor();
|
||||
int secondaryTextColor = mCustomThemeWrapper.getSecondaryTextColor();
|
||||
nameEditText.setTextColor(primaryTextColor);
|
||||
nameEditText.setHintTextColor(secondaryTextColor);
|
||||
binding.multiRedditNameEditTextEditMultiRedditActivity.setTextColor(primaryTextColor);
|
||||
binding.multiRedditNameEditTextEditMultiRedditActivity.setHintTextColor(secondaryTextColor);
|
||||
int dividerColor = mCustomThemeWrapper.getDividerColor();
|
||||
divider1.setBackgroundColor(dividerColor);
|
||||
divider2.setBackgroundColor(dividerColor);
|
||||
descriptionEditText.setTextColor(primaryTextColor);
|
||||
descriptionEditText.setHintTextColor(secondaryTextColor);
|
||||
visibilityTextView.setTextColor(primaryTextColor);
|
||||
selectSubredditTextView.setTextColor(primaryTextColor);
|
||||
binding.divider1EditMultiRedditActivity.setBackgroundColor(dividerColor);
|
||||
binding.divider2EditMultiRedditActivity.setBackgroundColor(dividerColor);
|
||||
binding.descriptionEditTextEditMultiRedditActivity.setTextColor(primaryTextColor);
|
||||
binding.descriptionEditTextEditMultiRedditActivity.setHintTextColor(secondaryTextColor);
|
||||
binding.visibilityTextViewEditMultiRedditActivity.setTextColor(primaryTextColor);
|
||||
binding.selectSubredditTextViewEditMultiRedditActivity.setTextColor(primaryTextColor);
|
||||
|
||||
if (typeface != null) {
|
||||
Utils.setFontToAllTextViews(coordinatorLayout, typeface);
|
||||
Utils.setFontToAllTextViews(binding.coordinatorLayoutEditMultiRedditActivity, typeface);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -11,19 +11,12 @@ import android.os.Handler;
|
||||
import android.provider.MediaStore;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.EditText;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.widget.Toolbar;
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
import androidx.core.content.FileProvider;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
|
||||
import com.google.android.material.snackbar.Snackbar;
|
||||
|
||||
@ -40,8 +33,6 @@ import java.util.concurrent.Executor;
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import ml.docilealligator.infinityforreddit.Infinity;
|
||||
import ml.docilealligator.infinityforreddit.R;
|
||||
import ml.docilealligator.infinityforreddit.UploadImageEnabledActivity;
|
||||
@ -52,6 +43,7 @@ import ml.docilealligator.infinityforreddit.bottomsheetfragments.UploadedImagesB
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
|
||||
import ml.docilealligator.infinityforreddit.customviews.LinearLayoutManagerBugFixed;
|
||||
import ml.docilealligator.infinityforreddit.customviews.slidr.Slidr;
|
||||
import ml.docilealligator.infinityforreddit.databinding.ActivityEditPostBinding;
|
||||
import ml.docilealligator.infinityforreddit.events.SwitchAccountEvent;
|
||||
import ml.docilealligator.infinityforreddit.utils.APIUtils;
|
||||
import ml.docilealligator.infinityforreddit.utils.SharedPreferencesUtils;
|
||||
@ -73,20 +65,6 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
|
||||
private static final String UPLOADED_IMAGES_STATE = "UIS";
|
||||
|
||||
@BindView(R.id.coordinator_layout_edit_post_activity)
|
||||
CoordinatorLayout coordinatorLayout;
|
||||
@BindView(R.id.appbar_layout_edit_post_activity)
|
||||
AppBarLayout appBarLayout;
|
||||
@BindView(R.id.toolbar_edit_post_activity)
|
||||
Toolbar toolbar;
|
||||
@BindView(R.id.post_title_text_view_edit_post_activity)
|
||||
TextView titleTextView;
|
||||
@BindView(R.id.divider_edit_post_activity)
|
||||
View divider;
|
||||
@BindView(R.id.post_text_content_edit_text_edit_post_activity)
|
||||
EditText contentEditText;
|
||||
@BindView(R.id.markdown_bottom_bar_recycler_view_edit_post_activity)
|
||||
RecyclerView markdownBottomBarRecyclerView;
|
||||
@Inject
|
||||
@Named("oauth")
|
||||
Retrofit mOauthRetrofit;
|
||||
@ -109,6 +87,7 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
private boolean isSubmitting = false;
|
||||
private Uri capturedImageUri;
|
||||
private ArrayList<UploadedImage> uploadedImages = new ArrayList<>();
|
||||
private ActivityEditPostBinding binding;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
@ -117,10 +96,8 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
setImmersiveModeNotApplicable();
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
setContentView(R.layout.activity_edit_post);
|
||||
|
||||
ButterKnife.bind(this);
|
||||
binding = ActivityEditPostBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
EventBus.getDefault().register(this);
|
||||
|
||||
@ -131,17 +108,17 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
}
|
||||
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && isChangeStatusBarIconColor()) {
|
||||
addOnOffsetChangedListener(appBarLayout);
|
||||
addOnOffsetChangedListener(binding.appbarLayoutEditPostActivity);
|
||||
}
|
||||
|
||||
setSupportActionBar(toolbar);
|
||||
setSupportActionBar(binding.toolbarEditPostActivity);
|
||||
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
|
||||
|
||||
mFullName = getIntent().getStringExtra(EXTRA_FULLNAME);
|
||||
mAccessToken = mCurrentAccountSharedPreferences.getString(SharedPreferencesUtils.ACCESS_TOKEN, null);
|
||||
titleTextView.setText(getIntent().getStringExtra(EXTRA_TITLE));
|
||||
binding.postTitleTextViewEditPostActivity.setText(getIntent().getStringExtra(EXTRA_TITLE));
|
||||
mPostContent = getIntent().getStringExtra(EXTRA_CONTENT);
|
||||
contentEditText.setText(mPostContent);
|
||||
binding.postContentEditTextEditPostActivity.setText(mPostContent);
|
||||
|
||||
if (savedInstanceState != null) {
|
||||
uploadedImages = savedInstanceState.getParcelableArrayList(UPLOADED_IMAGES_STATE);
|
||||
@ -152,7 +129,7 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
@Override
|
||||
public void onClick(int item) {
|
||||
MarkdownBottomBarRecyclerViewAdapter.bindEditTextWithItemClickListener(
|
||||
EditPostActivity.this, contentEditText, item);
|
||||
EditPostActivity.this, binding.postContentEditTextEditPostActivity, item);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -167,12 +144,12 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
}
|
||||
});
|
||||
|
||||
markdownBottomBarRecyclerView.setLayoutManager(new LinearLayoutManagerBugFixed(this,
|
||||
binding.markdownBottomBarRecyclerViewEditPostActivity.setLayoutManager(new LinearLayoutManagerBugFixed(this,
|
||||
LinearLayoutManagerBugFixed.HORIZONTAL, false));
|
||||
markdownBottomBarRecyclerView.setAdapter(adapter);
|
||||
binding.markdownBottomBarRecyclerViewEditPostActivity.setAdapter(adapter);
|
||||
|
||||
contentEditText.requestFocus();
|
||||
Utils.showKeyboard(this, new Handler(), contentEditText);
|
||||
binding.postContentEditTextEditPostActivity.requestFocus();
|
||||
Utils.showKeyboard(this, new Handler(), binding.postContentEditTextEditPostActivity);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -192,17 +169,17 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
|
||||
@Override
|
||||
protected void applyCustomTheme() {
|
||||
coordinatorLayout.setBackgroundColor(mCustomThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(appBarLayout, null, toolbar);
|
||||
titleTextView.setTextColor(mCustomThemeWrapper.getPostTitleColor());
|
||||
divider.setBackgroundColor(mCustomThemeWrapper.getPostTitleColor());
|
||||
contentEditText.setTextColor(mCustomThemeWrapper.getPostContentColor());
|
||||
binding.coordinatorLayoutEditPostActivity.setBackgroundColor(mCustomThemeWrapper.getBackgroundColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(binding.appbarLayoutEditPostActivity, null, binding.toolbarEditPostActivity);
|
||||
binding.postTitleTextViewEditPostActivity.setTextColor(mCustomThemeWrapper.getPostTitleColor());
|
||||
binding.dividerEditPostActivity.setBackgroundColor(mCustomThemeWrapper.getPostTitleColor());
|
||||
binding.postContentEditTextEditPostActivity.setTextColor(mCustomThemeWrapper.getPostContentColor());
|
||||
|
||||
if (titleTypeface != null) {
|
||||
titleTextView.setTypeface(titleTypeface);
|
||||
binding.postTitleTextViewEditPostActivity.setTypeface(titleTypeface);
|
||||
}
|
||||
if (contentTypeface != null) {
|
||||
contentEditText.setTypeface(contentTypeface);
|
||||
binding.postContentEditTextEditPostActivity.setTypeface(contentTypeface);
|
||||
}
|
||||
}
|
||||
|
||||
@ -223,7 +200,7 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
|
||||
if (item.getItemId() == R.id.action_preview_edit_post_activity) {
|
||||
Intent intent = new Intent(this, FullMarkdownActivity.class);
|
||||
intent.putExtra(FullMarkdownActivity.EXTRA_COMMENT_MARKDOWN, contentEditText.getText().toString());
|
||||
intent.putExtra(FullMarkdownActivity.EXTRA_COMMENT_MARKDOWN, binding.postContentEditTextEditPostActivity.getText().toString());
|
||||
intent.putExtra(FullMarkdownActivity.EXTRA_SUBMIT_POST, true);
|
||||
startActivityForResult(intent, MARKDOWN_PREVIEW_REQUEST_CODE);
|
||||
} else if (item.getItemId() == R.id.action_send_edit_post_activity) {
|
||||
@ -240,11 +217,11 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
if (!isSubmitting) {
|
||||
isSubmitting = true;
|
||||
|
||||
Snackbar.make(coordinatorLayout, R.string.posting, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutEditPostActivity, R.string.posting, Snackbar.LENGTH_SHORT).show();
|
||||
|
||||
Map<String, String> params = new HashMap<>();
|
||||
params.put(APIUtils.THING_ID_KEY, mFullName);
|
||||
params.put(APIUtils.TEXT_KEY, contentEditText.getText().toString());
|
||||
params.put(APIUtils.TEXT_KEY, binding.postContentEditTextEditPostActivity.getText().toString());
|
||||
|
||||
mOauthRetrofit.create(RedditAPI.class)
|
||||
.editPostOrComment(APIUtils.getOAuthHeader(mAccessToken), params)
|
||||
@ -261,7 +238,7 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
@Override
|
||||
public void onFailure(@NonNull Call<String> call, @NonNull Throwable t) {
|
||||
isSubmitting = false;
|
||||
Snackbar.make(coordinatorLayout, R.string.post_failed, Snackbar.LENGTH_SHORT).show();
|
||||
Snackbar.make(binding.coordinatorLayoutEditPostActivity, R.string.post_failed, Snackbar.LENGTH_SHORT).show();
|
||||
}
|
||||
});
|
||||
|
||||
@ -278,10 +255,10 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
return;
|
||||
}
|
||||
Utils.uploadImageToReddit(this, mExecutor, mOauthRetrofit, mUploadMediaRetrofit,
|
||||
mAccessToken, contentEditText, coordinatorLayout, data.getData(), uploadedImages);
|
||||
mAccessToken, binding.postContentEditTextEditPostActivity, binding.coordinatorLayoutEditPostActivity, data.getData(), uploadedImages);
|
||||
} else if (requestCode == CAPTURE_IMAGE_REQUEST_CODE) {
|
||||
Utils.uploadImageToReddit(this, mExecutor, mOauthRetrofit, mUploadMediaRetrofit,
|
||||
mAccessToken, contentEditText, coordinatorLayout, capturedImageUri, uploadedImages);
|
||||
mAccessToken, binding.postContentEditTextEditPostActivity, binding.coordinatorLayoutEditPostActivity, capturedImageUri, uploadedImages);
|
||||
} else if (requestCode == MARKDOWN_PREVIEW_REQUEST_CODE) {
|
||||
editPost();
|
||||
}
|
||||
@ -309,7 +286,7 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
if (isSubmitting) {
|
||||
promptAlertDialog(R.string.exit_when_submit, R.string.exit_when_edit_post_detail);
|
||||
} else {
|
||||
if (contentEditText.getText().toString().equals(mPostContent)) {
|
||||
if (binding.postContentEditTextEditPostActivity.getText().toString().equals(mPostContent)) {
|
||||
finish();
|
||||
} else {
|
||||
promptAlertDialog(R.string.discard, R.string.discard_detail);
|
||||
@ -354,9 +331,9 @@ public class EditPostActivity extends BaseActivity implements UploadImageEnabled
|
||||
|
||||
@Override
|
||||
public void insertImageUrl(UploadedImage uploadedImage) {
|
||||
int start = Math.max(contentEditText.getSelectionStart(), 0);
|
||||
int end = Math.max(contentEditText.getSelectionEnd(), 0);
|
||||
contentEditText.getText().replace(Math.min(start, end), Math.max(start, end),
|
||||
int start = Math.max(binding.postContentEditTextEditPostActivity.getSelectionStart(), 0);
|
||||
int end = Math.max(binding.postContentEditTextEditPostActivity.getSelectionEnd(), 0);
|
||||
binding.postContentEditTextEditPostActivity.getText().replace(Math.min(start, end), Math.max(start, end),
|
||||
"[" + uploadedImage.imageName + "](" + uploadedImage.imageUrlOrKey + ")",
|
||||
0, "[]()".length() + uploadedImage.imageName.length() + uploadedImage.imageUrlOrKey.length());
|
||||
}
|
||||
|
||||
@ -45,6 +45,7 @@ import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase;
|
||||
import ml.docilealligator.infinityforreddit.account.Account;
|
||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
|
||||
import ml.docilealligator.infinityforreddit.customviews.slidr.Slidr;
|
||||
import ml.docilealligator.infinityforreddit.databinding.ActivityEditProfileBinding;
|
||||
import ml.docilealligator.infinityforreddit.events.SubmitChangeAvatarEvent;
|
||||
import ml.docilealligator.infinityforreddit.events.SubmitChangeBannerEvent;
|
||||
import ml.docilealligator.infinityforreddit.events.SubmitSaveProfileEvent;
|
||||
@ -61,29 +62,6 @@ public class EditProfileActivity extends BaseActivity {
|
||||
private static final int PICK_IMAGE_BANNER_REQUEST_CODE = 0x401;
|
||||
private static final int PICK_IMAGE_AVATAR_REQUEST_CODE = 0x402;
|
||||
|
||||
@BindView(R.id.root_layout_view_edit_profile_activity)
|
||||
CoordinatorLayout coordinatorLayout;
|
||||
@BindView(R.id.content_view_edit_profile_activity)
|
||||
LinearLayout content;
|
||||
@BindView(R.id.collapsing_toolbar_layout_edit_profile_activity)
|
||||
CollapsingToolbarLayout collapsingToolbarLayout;
|
||||
@BindView(R.id.appbar_layout_view_edit_profile_activity)
|
||||
AppBarLayout appBarLayout;
|
||||
@BindView(R.id.toolbar_view_edit_profile_activity)
|
||||
MaterialToolbar toolbar;
|
||||
@BindView(R.id.image_view_banner_edit_profile_activity)
|
||||
GifImageView bannerImageView;
|
||||
@BindView(R.id.image_view_avatar_edit_profile_activity)
|
||||
GifImageView avatarImageView;
|
||||
@BindView(R.id.image_view_change_banner_edit_profile_activity)
|
||||
ImageView changeBanner;
|
||||
@BindView(R.id.image_view_change_avatar_edit_profile_activity)
|
||||
ImageView changeAvatar;
|
||||
@BindView(R.id.edit_text_display_name_edit_profile_activity)
|
||||
EditText editTextDisplayName;
|
||||
@BindView(R.id.edit_text_about_you_edit_profile_activity)
|
||||
EditText editTextAboutYou;
|
||||
|
||||
@Inject
|
||||
@Named("current_account")
|
||||
SharedPreferences mCurrentAccountSharedPreferences;
|
||||
@ -97,6 +75,7 @@ public class EditProfileActivity extends BaseActivity {
|
||||
RedditDataRoomDatabase mRedditDataRoomDatabase;
|
||||
@Inject
|
||||
CustomThemeWrapper mCustomThemeWrapper;
|
||||
private ActivityEditProfileBinding binding;
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
@ -105,28 +84,27 @@ public class EditProfileActivity extends BaseActivity {
|
||||
setImmersiveModeNotApplicable();
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_edit_profile);
|
||||
|
||||
ButterKnife.bind(this);
|
||||
binding = ActivityEditProfileBinding.inflate(getLayoutInflater());
|
||||
setContentView(binding.getRoot());
|
||||
|
||||
EventBus.getDefault().register(this);
|
||||
|
||||
applyCustomTheme();
|
||||
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && isChangeStatusBarIconColor()) {
|
||||
addOnOffsetChangedListener(appBarLayout);
|
||||
addOnOffsetChangedListener(binding.appbarLayoutViewEditProfileActivity);
|
||||
}
|
||||
|
||||
setSupportActionBar(toolbar);
|
||||
setSupportActionBar(binding.toolbarViewEditProfileActivity);
|
||||
|
||||
if (mSharedPreferences.getBoolean(SharedPreferencesUtils.SWIPE_RIGHT_TO_GO_BACK, true)) {
|
||||
Slidr.attach(this);
|
||||
}
|
||||
|
||||
changeBanner.setOnClickListener(view -> {
|
||||
binding.imageViewChangeBannerEditProfileActivity.setOnClickListener(view -> {
|
||||
startPickImage(PICK_IMAGE_BANNER_REQUEST_CODE);
|
||||
});
|
||||
changeAvatar.setOnClickListener(view -> {
|
||||
binding.imageViewChangeAvatarEditProfileActivity.setOnClickListener(view -> {
|
||||
startPickImage(PICK_IMAGE_AVATAR_REQUEST_CODE);
|
||||
});
|
||||
|
||||
@ -142,18 +120,18 @@ public class EditProfileActivity extends BaseActivity {
|
||||
}
|
||||
// BANNER
|
||||
final String userBanner = userData.getBanner();
|
||||
LayoutParams cBannerLp = (LayoutParams) changeBanner.getLayoutParams();
|
||||
LayoutParams cBannerLp = (LayoutParams) binding.imageViewChangeBannerEditProfileActivity.getLayoutParams();
|
||||
if (userBanner == null || userBanner.isEmpty()) {
|
||||
changeBanner.setLongClickable(false);
|
||||
binding.imageViewChangeBannerEditProfileActivity.setLongClickable(false);
|
||||
cBannerLp.gravity = Gravity.CENTER;
|
||||
changeBanner.setLayoutParams(cBannerLp);
|
||||
changeBanner.setOnLongClickListener(v -> false);
|
||||
binding.imageViewChangeBannerEditProfileActivity.setLayoutParams(cBannerLp);
|
||||
binding.imageViewChangeBannerEditProfileActivity.setOnLongClickListener(v -> false);
|
||||
} else {
|
||||
changeBanner.setLongClickable(true);
|
||||
binding.imageViewChangeBannerEditProfileActivity.setLongClickable(true);
|
||||
cBannerLp.gravity = Gravity.END | Gravity.BOTTOM;
|
||||
changeBanner.setLayoutParams(cBannerLp);
|
||||
glide.load(userBanner).into(bannerImageView);
|
||||
changeBanner.setOnLongClickListener(view -> {
|
||||
binding.imageViewChangeBannerEditProfileActivity.setLayoutParams(cBannerLp);
|
||||
glide.load(userBanner).into(binding.imageViewBannerEditProfileActivity);
|
||||
binding.imageViewChangeBannerEditProfileActivity.setOnLongClickListener(view -> {
|
||||
if (accountName.equals(Account.ANONYMOUS_ACCOUNT)) {
|
||||
return false;
|
||||
}
|
||||
@ -170,7 +148,7 @@ public class EditProfileActivity extends BaseActivity {
|
||||
Toast.makeText(EditProfileActivity.this,
|
||||
R.string.message_remove_banner_success,
|
||||
Toast.LENGTH_SHORT).show();
|
||||
bannerImageView.setImageDrawable(null);//
|
||||
binding.imageViewBannerEditProfileActivity.setImageDrawable(null);//
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -189,14 +167,14 @@ public class EditProfileActivity extends BaseActivity {
|
||||
final String userAvatar = userData.getIconUrl();
|
||||
glide.load(userAvatar)
|
||||
.apply(RequestOptions.bitmapTransform(new RoundedCornersTransformation(216, 0)))
|
||||
.into(avatarImageView);
|
||||
LayoutParams cAvatarLp = (LayoutParams) changeAvatar.getLayoutParams();
|
||||
.into(binding.imageViewAvatarEditProfileActivity);
|
||||
LayoutParams cAvatarLp = (LayoutParams) binding.imageViewChangeAvatarEditProfileActivity.getLayoutParams();
|
||||
if (userAvatar.contains("avatar_default_")) {
|
||||
changeAvatar.setLongClickable(false);
|
||||
changeAvatar.setOnLongClickListener(v -> false);
|
||||
binding.imageViewChangeAvatarEditProfileActivity.setLongClickable(false);
|
||||
binding.imageViewChangeAvatarEditProfileActivity.setOnLongClickListener(v -> false);
|
||||
} else {
|
||||
changeAvatar.setLongClickable(true);
|
||||
changeAvatar.setOnLongClickListener(view -> {
|
||||
binding.imageViewChangeAvatarEditProfileActivity.setLongClickable(true);
|
||||
binding.imageViewChangeAvatarEditProfileActivity.setOnLongClickListener(view -> {
|
||||
if (accountName.equals(Account.ANONYMOUS_ACCOUNT)) {
|
||||
return false;
|
||||
}
|
||||
@ -228,8 +206,8 @@ public class EditProfileActivity extends BaseActivity {
|
||||
});
|
||||
}
|
||||
|
||||
editTextAboutYou.setText(userData.getDescription());
|
||||
editTextDisplayName.setText(userData.getTitle());
|
||||
binding.editTextAboutYouEditProfileActivity.setText(userData.getDescription());
|
||||
binding.editTextDisplayNameEditProfileActivity.setText(userData.getTitle());
|
||||
});
|
||||
}
|
||||
|
||||
@ -273,12 +251,12 @@ public class EditProfileActivity extends BaseActivity {
|
||||
return true;
|
||||
} else if (itemId == R.id.action_save_edit_profile_activity) {
|
||||
String displayName = null;
|
||||
if (editTextDisplayName.getText() != null) {
|
||||
displayName = editTextDisplayName.getText().toString();
|
||||
if (binding.editTextDisplayNameEditProfileActivity.getText() != null) {
|
||||
displayName = binding.editTextDisplayNameEditProfileActivity.getText().toString();
|
||||
}
|
||||
String aboutYou = null;
|
||||
if (editTextAboutYou.getText() != null) {
|
||||
aboutYou = editTextAboutYou.getText().toString();
|
||||
if (binding.editTextAboutYouEditProfileActivity.getText() != null) {
|
||||
aboutYou = binding.editTextAboutYouEditProfileActivity.getText().toString();
|
||||
}
|
||||
if (aboutYou == null || displayName == null) return false; //
|
||||
|
||||
@ -343,11 +321,11 @@ public class EditProfileActivity extends BaseActivity {
|
||||
|
||||
@Override
|
||||
protected void applyCustomTheme() {
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(appBarLayout, collapsingToolbarLayout, toolbar);
|
||||
coordinatorLayout.setBackgroundColor(mCustomThemeWrapper.getBackgroundColor());
|
||||
changeColorTextView(content, mCustomThemeWrapper.getPrimaryTextColor());
|
||||
applyAppBarLayoutAndCollapsingToolbarLayoutAndToolbarTheme(binding.appbarLayoutViewEditProfileActivity, binding.collapsingToolbarLayoutEditProfileActivity, binding.toolbarViewEditProfileActivity);
|
||||
binding.rootLayoutViewEditProfileActivity.setBackgroundColor(mCustomThemeWrapper.getBackgroundColor());
|
||||
changeColorTextView(binding.contentViewEditProfileActivity, mCustomThemeWrapper.getPrimaryTextColor());
|
||||
if (typeface != null) {
|
||||
Utils.setFontToAllTextViews(coordinatorLayout, typeface);
|
||||
Utils.setFontToAllTextViews(binding.rootLayoutViewEditProfileActivity, typeface);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -8,24 +8,18 @@ import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.google.android.material.button.MaterialButton;
|
||||
|
||||
import ml.docilealligator.infinityforreddit.R;
|
||||
import ml.docilealligator.infinityforreddit.UploadImageEnabledActivity;
|
||||
import ml.docilealligator.infinityforreddit.activities.BaseActivity;
|
||||
import ml.docilealligator.infinityforreddit.adapters.UploadedImagesRecyclerViewAdapter;
|
||||
import ml.docilealligator.infinityforreddit.customviews.LandscapeExpandedRoundedBottomSheetDialogFragment;
|
||||
import ml.docilealligator.infinityforreddit.databinding.FragmentUploadedImagesBottomSheetBinding;
|
||||
import ml.docilealligator.infinityforreddit.utils.Utils;
|
||||
|
||||
public class UploadedImagesBottomSheetFragment extends LandscapeExpandedRoundedBottomSheetDialogFragment {
|
||||
|
||||
public static final String EXTRA_UPLOADED_IMAGES = "EUI";
|
||||
|
||||
private MaterialButton uploadButton;
|
||||
private MaterialButton captureButton;
|
||||
private RecyclerView uploadedImagesRecyclerView;
|
||||
private UploadedImagesRecyclerViewAdapter adapter;
|
||||
private UploadImageEnabledActivity activity;
|
||||
|
||||
@ -37,36 +31,33 @@ public class UploadedImagesBottomSheetFragment extends LandscapeExpandedRoundedB
|
||||
public View onCreateView(LayoutInflater inflater, ViewGroup container,
|
||||
Bundle savedInstanceState) {
|
||||
// Inflate the layout for this fragment
|
||||
View rootView = inflater.inflate(R.layout.fragment_uploaded_images_bottom_sheet, container, false);
|
||||
uploadButton = rootView.findViewById(R.id.upload_button_uploaded_images_bottom_sheet_fragment);
|
||||
captureButton = rootView.findViewById(R.id.capture_button_uploaded_images_bottom_sheet_fragment);
|
||||
FragmentUploadedImagesBottomSheetBinding binding = FragmentUploadedImagesBottomSheetBinding.inflate(inflater, container, false);
|
||||
|
||||
uploadButton.setOnClickListener(view -> {
|
||||
binding.uploadButtonUploadedImagesBottomSheetFragment.setOnClickListener(view -> {
|
||||
activity.uploadImage();
|
||||
dismiss();
|
||||
});
|
||||
|
||||
captureButton.setOnClickListener(view -> {
|
||||
binding.captureButtonUploadedImagesBottomSheetFragment.setOnClickListener(view -> {
|
||||
activity.captureImage();
|
||||
dismiss();
|
||||
});
|
||||
|
||||
uploadedImagesRecyclerView = rootView.findViewById(R.id.recycler_view_uploaded_images_bottom_sheet);
|
||||
adapter = new UploadedImagesRecyclerViewAdapter(getActivity(),
|
||||
getArguments().getParcelableArrayList(EXTRA_UPLOADED_IMAGES), uploadedImage -> {
|
||||
activity.insertImageUrl(uploadedImage);
|
||||
dismiss();
|
||||
});
|
||||
uploadedImagesRecyclerView.setAdapter(adapter);
|
||||
binding.recyclerViewUploadedImagesBottomSheet.setAdapter(adapter);
|
||||
|
||||
Activity baseActivity = getActivity();
|
||||
if (baseActivity instanceof BaseActivity) {
|
||||
if (((BaseActivity) activity).typeface != null) {
|
||||
Utils.setFontToAllTextViews(rootView, ((BaseActivity) activity).typeface);
|
||||
Utils.setFontToAllTextViews(binding.getRoot(), ((BaseActivity) activity).typeface);
|
||||
}
|
||||
}
|
||||
|
||||
return rootView;
|
||||
return binding.getRoot();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -55,7 +55,7 @@
|
||||
android:layout_height="1dp" />
|
||||
|
||||
<EditText
|
||||
android:id="@+id/post_text_content_edit_text_edit_post_activity"
|
||||
android:id="@+id/post_content_edit_text_edit_post_activity"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:gravity="top"
|
||||
|
||||
Reference in New Issue
Block a user