Improved image quality of gray launcher icon (for notification bar)
Improved preferences by grouping entries under app settings
@ -198,8 +198,8 @@ Global
|
|||||||
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.Release|x64.ActiveCfg = Release|Any CPU
|
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
|
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
|
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
|
||||||
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Mixed Platforms.ActiveCfg = Release|Any CPU
|
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Mixed Platforms.ActiveCfg = ReleaseNoNet|Any CPU
|
||||||
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Mixed Platforms.Build.0 = Release|Any CPU
|
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Mixed Platforms.Build.0 = ReleaseNoNet|Any CPU
|
||||||
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
|
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
|
||||||
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
|
{5CF675A5-9BEE-4720-BED9-D5BF14A2EBF9}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
|
@ -32,6 +32,16 @@
|
|||||||
<ErrorReport>prompt</ErrorReport>
|
<ErrorReport>prompt</ErrorReport>
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'ReleaseNoNet|AnyCPU'">
|
||||||
|
<OutputPath>bin\ReleaseNoNet\</OutputPath>
|
||||||
|
<DefineConstants>TRACE</DefineConstants>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
|
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
|
||||||
|
<ErrorReport>prompt</ErrorReport>
|
||||||
|
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Mono.Android" />
|
<Reference Include="Mono.Android" />
|
||||||
<Reference Include="mscorlib" />
|
<Reference Include="mscorlib" />
|
||||||
|
82
src/keepass2android/ChangeLog.cs
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
using Android.App;
|
||||||
|
using Android.Content;
|
||||||
|
using Android.Content.Res;
|
||||||
|
using Android.OS;
|
||||||
|
using Android.Runtime;
|
||||||
|
using Android.Text;
|
||||||
|
using Android.Text.Method;
|
||||||
|
using Android.Views;
|
||||||
|
using Android.Widget;
|
||||||
|
|
||||||
|
namespace keepass2android
|
||||||
|
{
|
||||||
|
public static class ChangeLog
|
||||||
|
{
|
||||||
|
public static void ShowChangeLog(Context ctx, Action onDismiss)
|
||||||
|
{
|
||||||
|
AlertDialog.Builder builder = new AlertDialog.Builder(ctx);
|
||||||
|
builder.SetTitle(ctx.GetString(Resource.String.ChangeLog_title));
|
||||||
|
String[] changeLog = {
|
||||||
|
ctx.GetString(Resource.String.ChangeLog_0_8_5),
|
||||||
|
ctx.GetString(Resource.String.ChangeLog_0_8_4),
|
||||||
|
ctx.GetString(Resource.String.ChangeLog_0_8_3),
|
||||||
|
ctx.GetString(Resource.String.ChangeLog_0_8_2),
|
||||||
|
ctx.GetString(Resource.String.ChangeLog_0_8_1),
|
||||||
|
ctx.GetString(Resource.String.ChangeLog_0_8),
|
||||||
|
ctx.GetString(Resource.String.ChangeLog_0_7),
|
||||||
|
ctx.GetString(Resource.String.ChangeLog)
|
||||||
|
};
|
||||||
|
|
||||||
|
builder.SetPositiveButton(Android.Resource.String.Ok, (dlgSender, dlgEvt) => { });
|
||||||
|
|
||||||
|
builder.SetMessage("temp");
|
||||||
|
Dialog dialog = builder.Create();
|
||||||
|
dialog.DismissEvent += (sender, e) =>
|
||||||
|
{
|
||||||
|
onDismiss();
|
||||||
|
};
|
||||||
|
dialog.Show();
|
||||||
|
TextView message = (TextView)dialog.FindViewById(Android.Resource.Id.Message);
|
||||||
|
|
||||||
|
message.MovementMethod = LinkMovementMethod.Instance;
|
||||||
|
message.TextFormatted = Html.FromHtml(ConcatChangeLog(ctx, changeLog));
|
||||||
|
message.LinksClickable = true;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static string ConcatChangeLog(Context ctx, string[] changeLog)
|
||||||
|
{
|
||||||
|
string res = "";
|
||||||
|
bool isFirst = true;
|
||||||
|
foreach (string c in changeLog)
|
||||||
|
{
|
||||||
|
res += c;
|
||||||
|
if (isFirst)
|
||||||
|
{
|
||||||
|
if (res.EndsWith("\n") == false)
|
||||||
|
res += "\n";
|
||||||
|
string donateUrl = ctx.GetString(Resource.String.donate_url,
|
||||||
|
new Java.Lang.Object[]{ctx.Resources.Configuration.Locale.Language,
|
||||||
|
ctx.PackageName
|
||||||
|
});
|
||||||
|
res += " * <a href=\"" + donateUrl
|
||||||
|
+ "\">" +
|
||||||
|
ctx.GetString(Resource.String.ChangeLog_keptDonate)
|
||||||
|
+ "<a/>";
|
||||||
|
isFirst = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (res.EndsWith("\n\n") == false)
|
||||||
|
res += "\n";
|
||||||
|
}
|
||||||
|
return res.Replace("\n", "<br>");
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
1490
src/keepass2android/Resources/Resource.designer.cs
generated
After Width: | Height: | Size: 743 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 564 B |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 947 B |
After Width: | Height: | Size: 1.3 KiB |
BIN
src/keepass2android/Resources/drawable/transparent.png
Normal file
After Width: | Height: | Size: 128 B |
@ -56,6 +56,15 @@
|
|||||||
|
|
||||||
<bool name="RememberRecentFiles_default">true</bool>
|
<bool name="RememberRecentFiles_default">true</bool>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<string name="password_access_prefs_key">password_access_prefs_key</string>
|
||||||
|
<string name="security_prefs_key">security_prefs_key</string>
|
||||||
|
<string name="display_prefs_key">display_prefs_key</string>
|
||||||
|
<string name="QuickUnlock_prefs_key">QuickUnlock_prefs_key</string>
|
||||||
|
<string name="FileHandling_prefs_key">FileHandling_prefs_key</string>
|
||||||
|
|
||||||
<string name="QuickUnlockDefaultEnabled_key">Enable_QuickUnlock_by_default</string>
|
<string name="QuickUnlockDefaultEnabled_key">Enable_QuickUnlock_by_default</string>
|
||||||
<string name="QuickUnlockLength_key">QuickUnlockLength</string>
|
<string name="QuickUnlockLength_key">QuickUnlockLength</string>
|
||||||
<string name="QuickUnlockLength_default">3</string>
|
<string name="QuickUnlockLength_default">3</string>
|
||||||
|
@ -21,6 +21,12 @@
|
|||||||
<string name="app_timeout_summary">Time before locking database when the application is inactive.</string>
|
<string name="app_timeout_summary">Time before locking database when the application is inactive.</string>
|
||||||
<string name="application">Application</string>
|
<string name="application">Application</string>
|
||||||
<string name="application_settings">Application settings</string>
|
<string name="application_settings">Application settings</string>
|
||||||
|
|
||||||
|
<string name="security_prefs">Security</string>
|
||||||
|
<string name="display_prefs">Display</string>
|
||||||
|
<string name="password_access_prefs">Password entry access</string>
|
||||||
|
<string name="QuickUnlock_prefs">QuickUnlock</string>
|
||||||
|
<string name="FileHandling_prefs">File handling</string>
|
||||||
<string name="brackets">Brackets</string>
|
<string name="brackets">Brackets</string>
|
||||||
<string name="browser_intall_text">File browsing requires the Open Intents File Manager, click below to install it. Due to some quirks in the file manager, browsing may not work correctly, the first time you browse.</string>
|
<string name="browser_intall_text">File browsing requires the Open Intents File Manager, click below to install it. Due to some quirks in the file manager, browsing may not work correctly, the first time you browse.</string>
|
||||||
<string name="building_search_idx">Building search index…</string>
|
<string name="building_search_idx">Building search index…</string>
|
||||||
|
@ -50,11 +50,12 @@
|
|||||||
android:key="@string/app_key"
|
android:key="@string/app_key"
|
||||||
android:title="@string/application"
|
android:title="@string/application"
|
||||||
android:summary="@string/application_settings">
|
android:summary="@string/application_settings">
|
||||||
<CheckBoxPreference
|
|
||||||
android:key="@string/keyfile_key"
|
<PreferenceScreen
|
||||||
android:title="@string/remember_keyfile_title"
|
android:key="@string/security_prefs_key"
|
||||||
android:summary="@string/remember_keyfile_summary"
|
android:title="@string/security_prefs"
|
||||||
android:defaultValue="@bool/keyfile_default"/>
|
>
|
||||||
|
|
||||||
<ListPreference
|
<ListPreference
|
||||||
android:key="@string/clipboard_timeout_key"
|
android:key="@string/clipboard_timeout_key"
|
||||||
android:title="@string/clipboard_timeout"
|
android:title="@string/clipboard_timeout"
|
||||||
@ -72,6 +73,23 @@
|
|||||||
android:dialogTitle="@string/app_timeout"
|
android:dialogTitle="@string/app_timeout"
|
||||||
android:defaultValue="@string/clipboard_timeout_default"/>
|
android:defaultValue="@string/clipboard_timeout_default"/>
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
|
android:key="@string/RememberRecentFiles_key"
|
||||||
|
android:title="@string/RememberRecentFiles_title"
|
||||||
|
android:summary="@string/RememberRecentFiles_summary"
|
||||||
|
android:defaultValue="@bool/RememberRecentFiles_default"/>
|
||||||
|
|
||||||
|
<CheckBoxPreference
|
||||||
|
android:key="@string/keyfile_key"
|
||||||
|
android:title="@string/remember_keyfile_title"
|
||||||
|
android:summary="@string/remember_keyfile_summary"
|
||||||
|
android:defaultValue="@bool/keyfile_default"/>
|
||||||
|
|
||||||
|
</PreferenceScreen>
|
||||||
|
<PreferenceScreen
|
||||||
|
android:key="@string/display_prefs_key"
|
||||||
|
android:title="@string/display_prefs"
|
||||||
|
>
|
||||||
|
<CheckBoxPreference
|
||||||
android:enabled="true"
|
android:enabled="true"
|
||||||
android:persistent="true"
|
android:persistent="true"
|
||||||
android:summary="@string/ShowUnlockedNotification_summary"
|
android:summary="@string/ShowUnlockedNotification_summary"
|
||||||
@ -83,11 +101,6 @@
|
|||||||
android:title="@string/maskpass_title"
|
android:title="@string/maskpass_title"
|
||||||
android:summary="@string/maskpass_summary"
|
android:summary="@string/maskpass_summary"
|
||||||
android:defaultValue="@bool/maskpass_default"/>
|
android:defaultValue="@bool/maskpass_default"/>
|
||||||
<CheckBoxPreference
|
|
||||||
android:key="@string/TanExpiresOnUse_key"
|
|
||||||
android:title="@string/TanExpiresOnUse_title"
|
|
||||||
android:summary="@string/TanExpiresOnUse_summary"
|
|
||||||
android:defaultValue="@bool/TanExpiresOnUse_default"/>
|
|
||||||
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:key="@string/ShowUsernameInList_key"
|
android:key="@string/ShowUsernameInList_key"
|
||||||
@ -103,7 +116,12 @@
|
|||||||
android:entryValues="@array/list_size_values"
|
android:entryValues="@array/list_size_values"
|
||||||
android:dialogTitle="@string/list_size_summary"
|
android:dialogTitle="@string/list_size_summary"
|
||||||
android:defaultValue="@string/list_size_default"/>
|
android:defaultValue="@string/list_size_default"/>
|
||||||
|
</PreferenceScreen>
|
||||||
|
|
||||||
|
<PreferenceScreen
|
||||||
|
android:key="@string/password_access_prefs_key"
|
||||||
|
android:title="@string/password_access_prefs"
|
||||||
|
>
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:enabled="true"
|
android:enabled="true"
|
||||||
android:persistent="true"
|
android:persistent="true"
|
||||||
@ -125,8 +143,11 @@
|
|||||||
android:defaultValue="@bool/OpenKp2aKeyboardAutomatically_default"
|
android:defaultValue="@bool/OpenKp2aKeyboardAutomatically_default"
|
||||||
android:title="@string/OpenKp2aKeyboardAutomatically_title"
|
android:title="@string/OpenKp2aKeyboardAutomatically_title"
|
||||||
android:key="@string/OpenKp2aKeyboardAutomatically_key" />
|
android:key="@string/OpenKp2aKeyboardAutomatically_key" />
|
||||||
|
</PreferenceScreen>
|
||||||
|
<PreferenceScreen
|
||||||
|
android:key="@string/QuickUnlock_prefs_key"
|
||||||
|
android:title="@string/QuickUnlock_prefs"
|
||||||
|
>
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:enabled="true"
|
android:enabled="true"
|
||||||
android:persistent="true"
|
android:persistent="true"
|
||||||
@ -142,6 +163,12 @@
|
|||||||
android:defaultValue="3"
|
android:defaultValue="3"
|
||||||
android:title="@string/QuickUnlockLength_title"
|
android:title="@string/QuickUnlockLength_title"
|
||||||
android:key="@string/QuickUnlockLength_key" />
|
android:key="@string/QuickUnlockLength_key" />
|
||||||
|
</PreferenceScreen>
|
||||||
|
<PreferenceScreen
|
||||||
|
android:key="@string/FileHandling_prefs_key"
|
||||||
|
android:title="@string/FileHandling_prefs"
|
||||||
|
>
|
||||||
|
|
||||||
<EditTextPreference
|
<EditTextPreference
|
||||||
android:enabled="true"
|
android:enabled="true"
|
||||||
android:persistent="true"
|
android:persistent="true"
|
||||||
@ -149,13 +176,6 @@
|
|||||||
android:defaultValue="@string/BinaryDirectory_default"
|
android:defaultValue="@string/BinaryDirectory_default"
|
||||||
android:title="@string/BinaryDirectory_title"
|
android:title="@string/BinaryDirectory_title"
|
||||||
android:key="@string/BinaryDirectory_key" />
|
android:key="@string/BinaryDirectory_key" />
|
||||||
<CheckBoxPreference
|
|
||||||
android:enabled="true"
|
|
||||||
android:persistent="true"
|
|
||||||
android:summary="@string/UseFileTransactions_summary"
|
|
||||||
android:defaultValue="true"
|
|
||||||
android:title="@string/UseFileTransactions_title"
|
|
||||||
android:key="@string/UseFileTransactions_key" />
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:enabled="true"
|
android:enabled="true"
|
||||||
android:persistent="true"
|
android:persistent="true"
|
||||||
@ -163,13 +183,6 @@
|
|||||||
android:defaultValue="true"
|
android:defaultValue="true"
|
||||||
android:title="@string/UseOfflineCache_title"
|
android:title="@string/UseOfflineCache_title"
|
||||||
android:key="@string/UseOfflineCache_key" />
|
android:key="@string/UseOfflineCache_key" />
|
||||||
|
|
||||||
<CheckBoxPreference
|
|
||||||
android:key="@string/RememberRecentFiles_key"
|
|
||||||
android:title="@string/RememberRecentFiles_title"
|
|
||||||
android:summary="@string/RememberRecentFiles_summary"
|
|
||||||
android:defaultValue="@bool/RememberRecentFiles_default"/>
|
|
||||||
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:enabled="true"
|
android:enabled="true"
|
||||||
android:persistent="true"
|
android:persistent="true"
|
||||||
@ -177,6 +190,14 @@
|
|||||||
android:defaultValue="true"
|
android:defaultValue="true"
|
||||||
android:title="@string/CheckForFileChangesOnSave_title"
|
android:title="@string/CheckForFileChangesOnSave_title"
|
||||||
android:key="@string/CheckForFileChangesOnSave_key" />
|
android:key="@string/CheckForFileChangesOnSave_key" />
|
||||||
|
<CheckBoxPreference
|
||||||
|
android:enabled="true"
|
||||||
|
android:persistent="true"
|
||||||
|
android:summary="@string/UseFileTransactions_summary"
|
||||||
|
android:defaultValue="true"
|
||||||
|
android:title="@string/UseFileTransactions_title"
|
||||||
|
android:key="@string/UseFileTransactions_key" />
|
||||||
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:enabled="true"
|
android:enabled="true"
|
||||||
android:persistent="true"
|
android:persistent="true"
|
||||||
@ -184,5 +205,14 @@
|
|||||||
android:defaultValue="@bool/PreloadDatabaseEnabled_default"
|
android:defaultValue="@bool/PreloadDatabaseEnabled_default"
|
||||||
android:title="@string/PreloadDatabaseEnabled_title"
|
android:title="@string/PreloadDatabaseEnabled_title"
|
||||||
android:key="@string/PreloadDatabaseEnabled_key" />
|
android:key="@string/PreloadDatabaseEnabled_key" />
|
||||||
|
<CheckBoxPreference
|
||||||
|
android:key="@string/TanExpiresOnUse_key"
|
||||||
|
android:title="@string/TanExpiresOnUse_title"
|
||||||
|
android:summary="@string/TanExpiresOnUse_summary"
|
||||||
|
android:defaultValue="@bool/TanExpiresOnUse_default"/>
|
||||||
|
|
||||||
|
</PreferenceScreen>
|
||||||
|
|
||||||
|
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
|
@ -735,4 +735,13 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<AndroidResource Include="Resources\values\dimens.xml" />
|
<AndroidResource Include="Resources\values\dimens.xml" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<AndroidResource Include="Resources\drawable-xxhdpi-v11\ic_launcher_gray.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<AndroidResource Include="Resources\drawable-hdpi-v11\ic_launcher_gray.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<AndroidResource Include="Resources\drawable-xhdpi-v11\ic_launcher_gray.png" />
|
||||||
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
@ -51,7 +51,7 @@ namespace keepass2android
|
|||||||
#if NoNet
|
#if NoNet
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
((PreferenceCategory) FindPreference(GetString(Resource.String.db_key))).RemovePreference(cachingPreference);
|
((PreferenceScreen) FindPreference(GetString(Resource.String.FileHandling_prefs_key))).RemovePreference(cachingPreference);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|