mirror of
https://github.com/deltachat/deltachat-android.git
synced 2025-10-04 18:29:17 +02:00
tune down copying email address
copying email addresses to the clipboard is not proper way to get in contact in the light of chatmail - even if the account is non-chatmail, the receiver may use chatmail. or the copied contact. it is better to point ppl to use 'Share' or 'Attach Contact' therfore and not offer failing/corner-case things in the primary menu. therefore, we do basically the same what desktop is doing all the years: no special function, however, if you select text (desktop) or long tap it (android now), you can copy it.
This commit is contained in:
parent
e7a9f60a12
commit
ff9fe93a75
4 changed files with 34 additions and 22 deletions
|
@ -1,5 +1,6 @@
|
||||||
package org.thoughtcrime.securesms;
|
package org.thoughtcrime.securesms;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
|
@ -145,23 +146,17 @@ public class ConversationTitleView extends RelativeLayout {
|
||||||
avatar.setSeenRecently(seenRecently);
|
avatar.setSeenRecently(seenRecently);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void hideAvatar() {
|
|
||||||
avatar.setVisibility(View.GONE);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setOnClickListener(@Nullable OnClickListener listener) {
|
public void setOnClickListener(@Nullable OnClickListener listener) {
|
||||||
this.content.setOnClickListener(listener);
|
this.content.setOnClickListener(listener);
|
||||||
this.avatar.setAvatarClickListener(listener);
|
this.avatar.setAvatarClickListener(listener);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setOnLongClickListener(@Nullable OnLongClickListener listener) {
|
|
||||||
this.content.setOnLongClickListener(listener);
|
|
||||||
this.avatar.setAvatarLongClickListener(listener);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setOnBackClickedListener(@Nullable OnClickListener listener) {
|
public void setOnBackClickedListener(@Nullable OnClickListener listener) {
|
||||||
this.back.setOnClickListener(listener);
|
this.back.setOnClickListener(listener);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void registerForContextMenu(Activity activity) {
|
||||||
|
activity.registerForContextMenu(content);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +1,12 @@
|
||||||
package org.thoughtcrime.securesms;
|
package org.thoughtcrime.securesms;
|
||||||
|
|
||||||
import static org.thoughtcrime.securesms.util.RelayUtil.setForwardingMessageIds;
|
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.media.RingtoneManager;
|
import android.media.RingtoneManager;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
import android.view.ContextMenu;
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
@ -29,7 +28,6 @@ import com.b44t.messenger.DcChat;
|
||||||
import com.b44t.messenger.DcContact;
|
import com.b44t.messenger.DcContact;
|
||||||
import com.b44t.messenger.DcContext;
|
import com.b44t.messenger.DcContext;
|
||||||
import com.b44t.messenger.DcEvent;
|
import com.b44t.messenger.DcEvent;
|
||||||
import com.b44t.messenger.DcMsg;
|
|
||||||
import com.google.android.material.tabs.TabLayout;
|
import com.google.android.material.tabs.TabLayout;
|
||||||
|
|
||||||
import org.thoughtcrime.securesms.connect.DcEventCenter;
|
import org.thoughtcrime.securesms.connect.DcEventCenter;
|
||||||
|
@ -108,6 +106,9 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
|
||||||
titleView = (ConversationTitleView) supportActionBar.getCustomView();
|
titleView = (ConversationTitleView) supportActionBar.getCustomView();
|
||||||
titleView.setOnBackClickedListener(view -> onBackPressed());
|
titleView.setOnBackClickedListener(view -> onBackPressed());
|
||||||
titleView.setOnClickListener(view -> onEnlargeAvatar());
|
titleView.setOnClickListener(view -> onEnlargeAvatar());
|
||||||
|
if (isContactProfile() && !isSelfProfile() && !chatIsDeviceTalk) {
|
||||||
|
titleView.registerForContextMenu(this);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
updateToolbar();
|
updateToolbar();
|
||||||
|
@ -138,7 +139,6 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
|
||||||
if (chatIsDeviceTalk) {
|
if (chatIsDeviceTalk) {
|
||||||
menu.findItem(R.id.edit_name).setVisible(false);
|
menu.findItem(R.id.edit_name).setVisible(false);
|
||||||
menu.findItem(R.id.show_encr_info).setVisible(false);
|
menu.findItem(R.id.show_encr_info).setVisible(false);
|
||||||
menu.findItem(R.id.copy_addr_to_clipboard).setVisible(false);
|
|
||||||
menu.findItem(R.id.share).setVisible(false);
|
menu.findItem(R.id.share).setVisible(false);
|
||||||
} else if (chatIsMultiUser) {
|
} else if (chatIsMultiUser) {
|
||||||
if (chatIsBroadcast) {
|
if (chatIsBroadcast) {
|
||||||
|
@ -149,7 +149,6 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
|
||||||
menu.findItem(R.id.edit_name).setVisible(false);
|
menu.findItem(R.id.edit_name).setVisible(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
menu.findItem(R.id.copy_addr_to_clipboard).setVisible(false);
|
|
||||||
menu.findItem(R.id.share).setVisible(false);
|
menu.findItem(R.id.share).setVisible(false);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -187,6 +186,12 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
|
||||||
|
super.onCreateContextMenu(menu, v, menuInfo);
|
||||||
|
getMenuInflater().inflate(R.menu.profile_title_context, menu);
|
||||||
|
}
|
||||||
|
|
||||||
boolean backPressed = false;
|
boolean backPressed = false;
|
||||||
@Override
|
@Override
|
||||||
public void onBackPressed() {
|
public void onBackPressed() {
|
||||||
|
@ -425,9 +430,6 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
|
||||||
case R.id.share:
|
case R.id.share:
|
||||||
onShare();
|
onShare();
|
||||||
break;
|
break;
|
||||||
case R.id.copy_addr_to_clipboard:
|
|
||||||
onCopyAddrToClipboard();
|
|
||||||
break;
|
|
||||||
case R.id.show_encr_info:
|
case R.id.show_encr_info:
|
||||||
onEncrInfo();
|
onEncrInfo();
|
||||||
break;
|
break;
|
||||||
|
@ -442,6 +444,17 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onContextItemSelected(MenuItem item) {
|
||||||
|
super.onContextItemSelected(item);
|
||||||
|
switch (item.getItemId()) {
|
||||||
|
case R.id.copy_addr_to_clipboard:
|
||||||
|
onCopyAddrToClipboard();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
private void onNotifyOnOff() {
|
private void onNotifyOnOff() {
|
||||||
if (dcContext.getChat(chatId).isMuted()) {
|
if (dcContext.getChat(chatId).isMuted()) {
|
||||||
setMuted(0);
|
setMuted(0);
|
||||||
|
|
|
@ -10,10 +10,6 @@
|
||||||
android:id="@+id/edit_name"
|
android:id="@+id/edit_name"
|
||||||
app:showAsAction="never"/>
|
app:showAsAction="never"/>
|
||||||
|
|
||||||
<item android:title="@string/menu_copy_to_clipboard"
|
|
||||||
android:id="@+id/copy_addr_to_clipboard"
|
|
||||||
app:showAsAction="never"/>
|
|
||||||
|
|
||||||
<item android:title="@string/menu_mute"
|
<item android:title="@string/menu_mute"
|
||||||
android:id="@+id/menu_mute_notifications"
|
android:id="@+id/menu_mute_notifications"
|
||||||
app:showAsAction="never"/>
|
app:showAsAction="never"/>
|
||||||
|
|
8
src/main/res/menu/profile_title_context.xml
Normal file
8
src/main/res/menu/profile_title_context.xml
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
|
||||||
|
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
|
||||||
|
<item android:title="@string/menu_copy_to_clipboard"
|
||||||
|
android:id="@+id/copy_addr_to_clipboard"/>
|
||||||
|
|
||||||
|
</menu>
|
Loading…
Add table
Add a link
Reference in a new issue