Skip to content
Snippets Groups Projects
Commit f60e2783 authored by Adrien Béraud's avatar Adrien Béraud
Browse files

share: cleanup

Fix crash reported on the Play Store console.

Change-Id: Ic40bb2ea28881cbc2c438ea5797ba37f56fc022c
parent 3249fc3b
No related branches found
No related tags found
No related merge requests found
...@@ -22,7 +22,6 @@ package cx.ring.client; ...@@ -22,7 +22,6 @@ package cx.ring.client;
import android.content.Context; import android.content.Context;
import android.os.Bundle; import android.os.Bundle;
import android.view.View;
import com.google.android.material.tabs.TabLayout; import com.google.android.material.tabs.TabLayout;
...@@ -47,36 +46,28 @@ public class QRCodeActivity extends AppCompatActivity { ...@@ -47,36 +46,28 @@ public class QRCodeActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) { protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_qrcode); setContentView(R.layout.activity_qrcode);
SectionsPagerAdapter sectionsPagerAdapter = new SectionsPagerAdapter(this, getSupportFragmentManager());
ViewPager viewPager = findViewById(R.id.view_pager); ViewPager viewPager = findViewById(R.id.view_pager);
viewPager.setAdapter(sectionsPagerAdapter); viewPager.setAdapter(new SectionsPagerAdapter(this, getSupportFragmentManager()));
TabLayout tabs = findViewById(R.id.tabs); TabLayout tabs = findViewById(R.id.tabs);
tabs.setupWithViewPager(viewPager); tabs.setupWithViewPager(viewPager);
Toolbar toolbar = findViewById(R.id.qrToolbar); Toolbar toolbar = findViewById(R.id.qrToolbar);
setSupportActionBar(toolbar); setSupportActionBar(toolbar);
ActionBar supportActionBar = getSupportActionBar(); ActionBar supportActionBar = getSupportActionBar();
if (supportActionBar != null) { if (supportActionBar != null) {
supportActionBar.setDisplayHomeAsUpEnabled(true); supportActionBar.setDisplayHomeAsUpEnabled(true);
supportActionBar.setDisplayShowHomeEnabled(true); supportActionBar.setDisplayShowHomeEnabled(true);
} }
toolbar.setNavigationOnClickListener(v -> finish());
toolbar.setNavigationOnClickListener((View v) ->
finish());
} }
class SectionsPagerAdapter extends FragmentPagerAdapter {
public class SectionsPagerAdapter extends FragmentPagerAdapter {
@StringRes @StringRes
private final int[] TAB_TITLES = new int[]{R.string.tab_code, R.string.tab_scan}; private final int[] TAB_TITLES = new int[]{R.string.tab_code, R.string.tab_scan};
private final Context mContext; private final Context mContext;
public SectionsPagerAdapter(Context context, FragmentManager fm) { SectionsPagerAdapter(Context context, FragmentManager fm) {
super(fm); super(fm);
mContext = context; mContext = context;
} }
...@@ -91,7 +82,6 @@ public class QRCodeActivity extends AppCompatActivity { ...@@ -91,7 +82,6 @@ public class QRCodeActivity extends AppCompatActivity {
default: default:
return null; return null;
} }
} }
@Nullable @Nullable
...@@ -102,8 +92,7 @@ public class QRCodeActivity extends AppCompatActivity { ...@@ -102,8 +92,7 @@ public class QRCodeActivity extends AppCompatActivity {
@Override @Override
public int getCount() { public int getCount() {
// Show 2 total pages. return TAB_TITLES.length;
return 2;
} }
} }
......
...@@ -64,9 +64,7 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement ...@@ -64,9 +64,7 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement
@BindString(R.string.share_via) @BindString(R.string.share_via)
protected String mShareVia; protected String mShareVia;
private String mUriToShow; private String mUriToShow;
private int mQRCodeSize = 0;
private boolean isShareLocked = false; private boolean isShareLocked = false;
@Override @Override
...@@ -82,15 +80,7 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement ...@@ -82,15 +80,7 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement
@Override @Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) { public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState); super.onViewCreated(view, savedInstanceState);
setHasOptionsMenu(true); setHasOptionsMenu(true);
mQrImage.addOnLayoutChangeListener((v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom) -> {
mQRCodeSize = mQrImage.getMeasuredWidth();
// when view is ready, we search for contact infos to display
presenter.loadContactInformation();
});
} }
@Override @Override
...@@ -104,7 +94,7 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement ...@@ -104,7 +94,7 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement
switch (item.getItemId()) { switch (item.getItemId()) {
case R.id.menu_qr_share: case R.id.menu_qr_share:
if (!isShareLocked) { if (!isShareLocked) {
shareRingAccount(); shareAccount();
return true; return true;
} else { } else {
return false; return false;
...@@ -115,14 +105,13 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement ...@@ -115,14 +105,13 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement
} }
@OnClick(R.id.share_button) @OnClick(R.id.share_button)
public void shareClicked(View view) { void shareClicked(View view) {
if(!isShareLocked) { if(!isShareLocked) {
shareRingAccount(); shareAccount();
} }
} }
private void shareAccount() {
public void shareRingAccount() {
if (!TextUtils.isEmpty(mUriToShow)) { if (!TextUtils.isEmpty(mUriToShow)) {
Intent sharingIntent = new Intent(Intent.ACTION_SEND); Intent sharingIntent = new Intent(Intent.ACTION_SEND);
sharingIntent.setType("text/plain"); sharingIntent.setType("text/plain");
...@@ -140,7 +129,7 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement ...@@ -140,7 +129,7 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement
return; return;
} }
if (qrCodeData == null || mQRCodeSize <= 0) { if (qrCodeData == null) {
mQrImage.setVisibility(View.INVISIBLE); mQrImage.setVisibility(View.INVISIBLE);
mShareInstruction.setText(mShareMessageNoAccount); mShareInstruction.setText(mShareMessageNoAccount);
} else { } else {
...@@ -152,10 +141,6 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement ...@@ -152,10 +141,6 @@ public class ShareFragment extends BaseSupportFragment<SharePresenter> implement
} }
mUriToShow = viewModel.getAccountShareUri(); mUriToShow = viewModel.getAccountShareUri();
if (TextUtils.isEmpty(mUriToShow)) { isShareLocked = TextUtils.isEmpty(mUriToShow);
isShareLocked = true;
} else {
isShareLocked = false;
}
} }
} }
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
android:layout_weight="1" android:layout_weight="1"
android:background="?attr/colorPrimary" android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways" app:layout_scrollFlags="scroll|enterAlways"
app:popupTheme="@style/AppTheme"></androidx.appcompat.widget.Toolbar> app:popupTheme="@style/AppTheme" />
<com.google.android.material.tabs.TabLayout <com.google.android.material.tabs.TabLayout
android:id="@+id/tabs" android:id="@+id/tabs"
......
...@@ -49,9 +49,6 @@ public class SharePresenter extends RootPresenter<GenericView<ShareViewModel>> { ...@@ -49,9 +49,6 @@ public class SharePresenter extends RootPresenter<GenericView<ShareViewModel>> {
.subscribe(this::loadContactInformation)); .subscribe(this::loadContactInformation));
} }
public void loadContactInformation() {
loadContactInformation(new ShareViewModel(mAccountService.getCurrentAccount()));
}
private void loadContactInformation(ShareViewModel model) { private void loadContactInformation(ShareViewModel model) {
GenericView<ShareViewModel> view = getView(); GenericView<ShareViewModel> view = getView();
if (view != null) { if (view != null) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment