1
0
Fork 1

Finalize more options for checkmarks style

This commit is contained in:
Arne 2023-12-28 10:03:15 +01:00
parent ec1aff0a0e
commit e5441e23c6
6 changed files with 43 additions and 31 deletions
src/main
java
de/monocles/chat
eu/siacs/conversations/ui/adapter
res

View file

@ -8,6 +8,7 @@ import android.widget.ListAdapter;
import eu.siacs.conversations.R;
public class Util {
public static void justifyListViewHeightBasedOnChildren (ListView listView) {
ListAdapter adapter = listView.getAdapter();
@ -33,20 +34,20 @@ public class Util {
DISPLAYED
}
public static int getReadmakerType(boolean isDarkBackground, boolean useBlueReadmarkers, boolean UseGreenBlueReadMarkers, ReadmarkerType readmakerType) {
public static int getReadmakerType(boolean isDarkBackground, String readmarkervalue, ReadmarkerType readmakerType) {
if(isDarkBackground) {
if(readmakerType == ReadmarkerType.DISPLAYED) {
if(useBlueReadmarkers) {
if(readmarkervalue.equals("blue_readmarkers")) {
return R.drawable.ic_check_all_blue_18dp;
} else if (UseGreenBlueReadMarkers) {
} else if (readmarkervalue.equals("greenandblue_readmarkers")) {
return R.drawable.ic_check_all_green_blue_18dp;
} else {
return R.drawable.ic_check_all_white_18dp;
}
} else {
if(useBlueReadmarkers) {
if(readmarkervalue.equals("blue_readmarkers")) {
return R.drawable.ic_check_blue_18dp;
} else if (UseGreenBlueReadMarkers) {
} else if (readmarkervalue.equals("greenandblue_readmarkers")) {
return R.drawable.ic_check_blue_18dp;
} else {
return R.drawable.ic_check_white_18dp;
@ -54,17 +55,17 @@ public class Util {
}
} else {
if(readmakerType == ReadmarkerType.DISPLAYED) {
if(useBlueReadmarkers) {
if(readmarkervalue.equals("blue_readmarkers")) {
return R.drawable.ic_check_all_blue_18dp;
} else if (UseGreenBlueReadMarkers) {
} else if (readmarkervalue.equals("greenandblue_readmarkers")) {
return R.drawable.ic_check_all_green_blue_18dp;
} else {
return R.drawable.ic_check_all_black_18dp;
}
} else {
if(useBlueReadmarkers) {
if(readmarkervalue.equals("blue_readmarkers")) {
return R.drawable.ic_check_blue_18dp;
} else if (UseGreenBlueReadMarkers) {
} else if (readmarkervalue.equals("greenandblue_readmarkers")) {
return R.drawable.ic_check_blue_18dp;
} else {
return R.drawable.ic_check_black_18dp;

View file

@ -53,14 +53,13 @@ public class ConversationAdapter
private List<Conversation> conversations;
private OnConversationClickListener listener;
private boolean hasInternetConnection = false;
private boolean mUseBlueReadMarkers = false;
private boolean mUseGreenBlueReadMarkers = false;
private String readmarkervalue;
public ConversationAdapter(XmppActivity activity, List<Conversation> conversations) {
this.activity = activity;
this.conversations = conversations;
this.mUseBlueReadMarkers = getPreferences().getBoolean("use_blue_readmarkers", activity.getResources().getBoolean(R.bool.use_blue_readmarkers));
this.mUseGreenBlueReadMarkers = getPreferences().getBoolean("use_green_blue_readmarkers", activity.getResources().getBoolean(R.bool.use_green_blue_readmarkers));
SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(activity);
this.readmarkervalue = sharedPref.getString("readmarker_style", "blue_readmarkers");
}
@NonNull
@ -428,14 +427,14 @@ public class ConversationAdapter
case Message.STATUS_SEND_RECEIVED:
if (viewHolder.binding.indicatorReceived != null) {
viewHolder.binding.indicatorReceived.setVisibility(View.VISIBLE);
viewHolder.binding.indicatorReceived.setImageResource(getReadmakerType(activity.isDarkTheme(), mUseBlueReadMarkers, mUseGreenBlueReadMarkers, Util.ReadmarkerType.RECEIVED));
viewHolder.binding.indicatorReceived.setImageResource(getReadmakerType(activity.isDarkTheme(), readmarkervalue, Util.ReadmarkerType.RECEIVED));
viewHolder.binding.indicatorReceived.setAlpha(activity.isDarkTheme() ? 0.7f : 0.57f);
}
break;
case Message.STATUS_SEND_DISPLAYED:
if (viewHolder.binding.indicatorReceived != null) {
viewHolder.binding.indicatorReceived.setVisibility(View.VISIBLE);
viewHolder.binding.indicatorReceived.setImageResource(getReadmakerType(activity.isDarkTheme(), mUseBlueReadMarkers, mUseGreenBlueReadMarkers, Util.ReadmarkerType.DISPLAYED));
viewHolder.binding.indicatorReceived.setImageResource(getReadmakerType(activity.isDarkTheme(), readmarkervalue, Util.ReadmarkerType.DISPLAYED));
viewHolder.binding.indicatorReceived.setAlpha(activity.isDarkTheme() ? 0.7f : 0.57f);
}
break;

View file

@ -165,8 +165,7 @@ public class MessageAdapter extends ArrayAdapter<Message> {
private boolean mShowMapsInside = false;
private final boolean mForceNames;
private final Map<String, WebxdcUpdate> lastWebxdcUpdate = new HashMap<>();
private boolean mUseBlueReadMarkers = false;
private boolean mUseGreenBlueReadMarkers = false;
private String readmarkervalue;
public MessageAdapter(final XmppActivity activity, final List<Message> messages, final boolean forceNames) {
super(activity, 0, messages);
@ -319,7 +318,7 @@ public class MessageAdapter extends ArrayAdapter<Message> {
if (mIndicateReceived) {
if (viewHolder.indicatorReceived != null) {
viewHolder.indicatorReceived.setVisibility(View.VISIBLE);
viewHolder.indicatorReceived.setImageResource(getReadmakerType(darkBackground, mUseBlueReadMarkers, mUseGreenBlueReadMarkers, Util.ReadmarkerType.RECEIVED));
viewHolder.indicatorReceived.setImageResource(getReadmakerType(darkBackground, readmarkervalue, Util.ReadmarkerType.RECEIVED));
viewHolder.indicatorReceived.setAlpha(darkBackground ? 0.7f : 0.57f);
}
} else {
@ -330,7 +329,7 @@ public class MessageAdapter extends ArrayAdapter<Message> {
if (mIndicateReceived) {
if (viewHolder.indicatorReceived != null) {
viewHolder.indicatorReceived.setVisibility(View.VISIBLE);
viewHolder.indicatorReceived.setImageResource(getReadmakerType(darkBackground, mUseBlueReadMarkers, mUseGreenBlueReadMarkers, Util.ReadmarkerType.DISPLAYED));
viewHolder.indicatorReceived.setImageResource(getReadmakerType(darkBackground, readmarkervalue, Util.ReadmarkerType.DISPLAYED));
viewHolder.indicatorReceived.setAlpha(darkBackground ? 0.7f : 0.57f);
}
} else {
@ -1940,8 +1939,8 @@ public class MessageAdapter extends ArrayAdapter<Message> {
this.mPlayGifInside = p.getBoolean(PLAY_GIF_INSIDE, activity.getResources().getBoolean(R.bool.play_gif_inside));
this.mShowLinksInside = p.getBoolean(SHOW_LINKS_INSIDE, activity.getResources().getBoolean(R.bool.show_links_inside));
this.mShowMapsInside = p.getBoolean(SHOW_MAPS_INSIDE, activity.getResources().getBoolean(R.bool.show_maps_inside));
this.mUseBlueReadMarkers = p.getBoolean("use_blue_readmarkers", activity.getResources().getBoolean(R.bool.use_blue_readmarkers));
this.mUseGreenBlueReadMarkers = p.getBoolean("use_green_blue_readmarkers", activity.getResources().getBoolean(R.bool.use_green_blue_readmarkers));
SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(activity);
this.readmarkervalue = sharedPref.getString("readmarker_style", "blue_readmarkers");
}
public void setHighlightedTerm(List<String> terms) {

View file

@ -154,6 +154,17 @@
<item>@string/large</item>
</string-array>
<string-array name="readmarkers_values">
<item>grey_readmarkers</item>
<item>blue_readmarkers</item>
<item>greenandblue_readmarkers</item>
</string-array>
<string-array name="readmarkers_entries">
<item>@string/grey</item>
<item>@string/blue</item>
<item>@string/green_and_blue</item>
</string-array>
<string-array name="grace_periods">
<item>@string/gp_disable</item>
<item>@string/gp_short</item>

View file

@ -1400,4 +1400,9 @@
<string name="snikket_login_activated">Snikket login activated</string>
<string name="pref_use_green_blue_readmarkers_title">Use green blue readmarkers</string>
<string name="pref_use_green_blue_readmarkers_summary">Use two coloured read markers. Blue for received and green for read.</string>
<string name="pref_readmarkers_summary">Change the read markers style</string>
<string name="pref_readmarker_title">Readmarker style</string>
<string name="grey">Grey</string>
<string name="blue">Blue</string>
<string name="green_and_blue">Green and blue</string>
</resources>

View file

@ -202,16 +202,13 @@
android:summary="@string/pref_allowmergemessages_sum"
android:title="@string/pref_allowmergemessages" />
-->
<SwitchPreference
android:defaultValue="@bool/use_blue_readmarkers"
android:key="use_blue_readmarkers"
android:summary="@string/pref_use_blue_readmarkers_summary"
android:title="@string/pref_use_blue_readmarkers_title" />
<SwitchPreference
android:defaultValue="@bool/use_green_blue_readmarkers"
android:key="use_green_blue_readmarkers"
android:summary="@string/pref_use_green_blue_readmarkers_summary"
android:title="@string/pref_use_green_blue_readmarkers_title" />
<ListPreference
android:defaultValue="@string/blue"
android:entries="@array/readmarkers_entries"
android:entryValues="@array/readmarkers_values"
android:key="readmarker_style"
android:summary="@string/pref_readmarkers_summary"
android:title="@string/pref_readmarker_title" />
<!-- TODO: Add setting for number of signs to collapse message
<EditTextPreference
android:defaultValue="@string/collapse_message_signs"