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:
@@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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" />
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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"
|
||||
|
||||
+2
-4
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user