Added an expanded view of the date format type selection

Full date in private messages
Minor improvements
Fixed a bug with anti-deletion of messages
This commit is contained in:
gdlbo
2022-06-10 18:58:19 +03:00
parent 083dc40ad9
commit cf3eacc14f
11 changed files with 90 additions and 24 deletions
@@ -22,6 +22,7 @@ import android.util.Log;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.StringRes;
import com.vtosters.lite.UserProfile;
import com.vtosters.lite.VKActivity;
@@ -143,6 +144,10 @@ public class Globals {
return getContext().getString(getIdentifier(resourcename, "string"));
} // Get string via getIdentifier
public static String getStringDate(@StringRes int i, Object... objArr) {
return getContext().getString(i, objArr);
}
public static String getPackageName() {
return getContext().getPackageName();
}
@@ -5,7 +5,10 @@ import static ru.vtosters.lite.ui.fragments.multiaccount.MultiAccountManager.mig
import static ru.vtosters.lite.utils.DeletedMessagesHandler.reloadMessagesList;
import static ru.vtosters.lite.utils.Globals.fixGapps;
import static ru.vtosters.lite.utils.Globals.getContext;
import static ru.vtosters.lite.utils.Globals.getIdentifier;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import static ru.vtosters.lite.utils.Globals.getString;
import static ru.vtosters.lite.utils.Globals.getStringDate;
import static ru.vtosters.lite.utils.Globals.getUserId;
import static ru.vtosters.lite.utils.Globals.registerActivities;
import static ru.vtosters.lite.utils.Newsfeed.setupFilters;
@@ -20,8 +23,11 @@ import android.os.Build;
import android.preference.PreferenceManager;
import com.vk.core.util.Screen;
import com.vk.im.engine.models.users.UserSex;
import com.vtosters.lite.data.Users;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
public class Preferences {
@@ -181,10 +187,6 @@ public class Preferences {
setupFilters();
}
public static boolean fulltime() {
return getBoolValue("fulltime", true);
}
public static boolean gcmfix() {
return getBoolValue("gcmfix", true);
}
@@ -367,4 +369,35 @@ public class Preferences {
return string.isEmpty() ? Locale.getDefault().getLanguage() : string;
}
public static boolean fulltime() {
return getPrefsValue(" ").equals("noyear") || getPrefsValue("dateformat").equals("full") || getPrefsValue("dateformat").equals("noseconds");
}
public static String getDateFormat() {
if (getPrefsValue("dateformat").equals("noyear")) {
return getString("fulltime2");
}
if (getPrefsValue("dateformat").equals("full")) {
return getString("fulltime");
}
return getString("fulltime3");
}
public static String getFormattedDate(UserSex type, long time){
SimpleDateFormat date = new SimpleDateFormat(getDateFormat(), Locale.getDefault());
if(!fulltime()) return null;
try {
return getStringDate(type == UserSex.FEMALE ? getIdentifier("last_seen_profile_f", "string") : getIdentifier("last_seen_profile_m", "string"), new Object[]{date.format(new Date(time))});
} catch (Throwable th) {
th.printStackTrace();
return null;
}
}
}
+6
View File
@@ -505,4 +505,10 @@
<item>🗑</item>
<item>❌</item>
</string-array>
<string-array name="dateformat_value">
<item>По умолчанию</item>
<item>15 апреля в 18:42</item>
<item>15 апреля в 18:42:28</item>
<item>15 апреля 2022 в 18:42:28</item>
</string-array>
</resources>
+4
View File
@@ -4064,6 +4064,8 @@
<string name="vtlnavbar">Покрасить панель навигации</string>
<string name="donate">Помочь проекту</string>
<string name="fulltime">dd MMMM yyyy в HH:mm:ss</string>
<string name="fulltime2">dd MMMM в HH:mm:ss</string>
<string name="fulltime3">dd MMMM в HH:mm</string>
<string name="vtlsfiltershort">"Фильтр коротких ссылок "</string>
<string name="vtlsfiltershortsummary">"Фильтр для блокировки постов с короткими ссылками, такими как bit.ly или cutt.ly
Этот фильтр не затрагивает ссылки vk.cc"</string>
@@ -4439,5 +4441,7 @@
<string name="roundedmsgs">Круглые сообщения</string>
<string name="dateformat">Выберите тип показа дат</string>
<string name="empty_text" />
</resources>
+12
View File
@@ -706,4 +706,16 @@
<item>icon</item>
<item>icon2</item>
</string-array>
<string-array name="dateformat_value">
<item>Default</item>
<item>15 april 18:42</item>
<item>15 april 18:42:28</item>
<item>15 april 2022 18:42:28</item>
</string-array>
<string-array name="dateformat">
<item>default</item>
<item>noseconds</item>
<item>noyear</item>
<item>full</item>
</string-array>
</resources>
+4
View File
@@ -4189,6 +4189,8 @@ Filters are case-sensitive!"</string>
<string name="vtlnavbar">Color navigation bar</string>
<string name="donate">Donate</string>
<string name="fulltime">dd MMMM yyyy HH:mm:ss</string>
<string name="fulltime2">dd MMMM HH:mm:ss</string>
<string name="fulltime3">dd MMMM HH:mm</string>
<string name="vtlsfiltershort">Short link filter</string>
<string name="vtlsfiltershortsummary">"Blocks posts containing short links, such as bit.ly or cutt.ly
Does not affect vk.cc links"</string>
@@ -4573,6 +4575,8 @@ May look like a fake leaving the online"</string>
<string name="roundedmsgs">Rounded messages</string>
<string name="dateformat">Select the date display type</string>
<item type="string" name="APKTOOL_DUMMY_10be" />
<item type="string" name="APKTOOL_DUMMY_10bf" />
<item type="string" name="APKTOOL_DUMMY_10c0" />
+1 -1
View File
@@ -5,7 +5,7 @@
android:defaultValue="default"
android:dialogTitle="@string/activity_undel_dial"
android:entries="@array/undel_value"
android:entryValues="@array/undel"
android:entryValues="@array/undel_value"
android:key="undeletemsg_prefix_value"
android:title="@string/activity_undel_tag" />
<com.vtosters.lite.ui.MaterialSwitchPreference
+7 -5
View File
@@ -25,16 +25,18 @@
android:entryValues="@array/start_values"
android:key="start_values"
android:title="@string/interfacestartfr" />
<com.vtosters.lite.ui.SummaryListPreference
android:defaultValue="default"
android:dialogTitle="@string/dateformat"
android:entries="@array/dateformat_value"
android:entryValues="@array/dateformat"
android:key="dateformat"
android:title="@string/interfaceglobaldates" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="olddock"
android:summary="@string/interface_global_old_icons_summary"
android:title="@string/interface_global_old_icons" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="fulltime"
android:summary="@string/interfaceglobaldatessum"
android:title="@string/interfaceglobaldates" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="shortinfo"
@@ -52,11 +52,9 @@
iput-object v0, p0, Lcom/vk/im/ui/components/attaches_history/attaches/adapter/delegates/DocAttachViewTypeDelegate;->b:Lcom/vk/im/ui/formatters/FileSizeFormatter;
.line 28
new-instance p1, Ljava/text/SimpleDateFormat;
invoke-static {}, Lru/vtosters/lite/utils/Preferences;->setDateFormat()Ljava/text/SimpleDateFormat;
const-string v0, "dd MMMM HH:mm"
invoke-direct {p1, v0}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V
move-result-object p1
iput-object p1, p0, Lcom/vk/im/ui/components/attaches_history/attaches/adapter/delegates/DocAttachViewTypeDelegate;->c:Ljava/text/SimpleDateFormat;
@@ -510,6 +510,16 @@
.method public final a(Lcom/vk/im/engine/models/users/UserSex;J)Ljava/lang/String;
.locals 2
invoke-static {p1, p2, p3}, Lru/vtosters/lite/utils/Preferences;->getFormattedDate(Lcom/vk/im/engine/models/users/UserSex;J)Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_1
return-object v0
.line 1
:cond_1
const-string v0, "userSex"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->b(Ljava/lang/Object;Ljava/lang/String;)V
@@ -731,7 +731,7 @@
move-result v0
if-nez v0, :cond_0
if-eqz v0, :cond_0
.line 18
new-instance v0, Ljava/util/Date;
@@ -1531,15 +1531,7 @@
new-instance v0, Ljava/text/SimpleDateFormat;
sget-object v3, Lcom/vk/core/util/AppContextHolder;->a:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v3
const p0, 0x7f11100f
invoke-virtual {v3, p0}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
invoke-static {}, Lru/vtosters/lite/utils/Preferences;->getDateFormat()Ljava/lang/String;
move-result-object v3