diff --git a/src/AndroidFileChooserBinding/AndroidFileChooserBinding.csproj b/src/AndroidFileChooserBinding/AndroidFileChooserBinding.csproj
index 7b39d548..737d4c18 100644
--- a/src/AndroidFileChooserBinding/AndroidFileChooserBinding.csproj
+++ b/src/AndroidFileChooserBinding/AndroidFileChooserBinding.csproj
@@ -10,7 +10,6 @@
AndroidFileChooserBinding
AndroidFileChooserBinding
512
- v2.2
true
diff --git a/src/JavaFileStorageBindings/JavaFileStorageBindings.csproj b/src/JavaFileStorageBindings/JavaFileStorageBindings.csproj
index 12bf66f1..d96be630 100644
--- a/src/JavaFileStorageBindings/JavaFileStorageBindings.csproj
+++ b/src/JavaFileStorageBindings/JavaFileStorageBindings.csproj
@@ -10,7 +10,6 @@
JavaFileStorageBindings
JavaFileStorageBindings
512
- v2.2
true
diff --git a/src/KP2AKdbLibraryBinding/KP2AKdbLibraryBinding.csproj b/src/KP2AKdbLibraryBinding/KP2AKdbLibraryBinding.csproj
index 2bb393b7..74b84473 100644
--- a/src/KP2AKdbLibraryBinding/KP2AKdbLibraryBinding.csproj
+++ b/src/KP2AKdbLibraryBinding/KP2AKdbLibraryBinding.csproj
@@ -10,7 +10,6 @@
KP2AKdbLibraryBinding
KP2AKdbLibraryBinding
512
- v2.2
true
diff --git a/src/KeePass.sln b/src/KeePass.sln
index 8a0931b9..9ec7b121 100644
--- a/src/KeePass.sln
+++ b/src/KeePass.sln
@@ -1,6 +1,8 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2012
+# Visual Studio 2013
+VisualStudioVersion = 12.0.31101.0
+MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KeePassLib2Android", "KeePassLib2Android\KeePassLib2Android.csproj", "{545B4A6B-8BBA-4FBE-92FC-4AC060122A54}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "keepass2android", "keepass2android\keepass2android.csproj", "{A6CF8A86-37C1-4197-80FE-519DE2C842F5}"
@@ -41,6 +43,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MaterialTest", "MaterialTes
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MaterialTest2", "MaterialTest2\MaterialTest2.csproj", "{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MaterialTest3", "MaterialTest3\MaterialTest3.csproj", "{4512BF32-7443-4BF9-B46B-80E7F2D41B36}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -81,6 +85,7 @@ Global
{545B4A6B-8BBA-4FBE-92FC-4AC060122A54}.ReleaseNoNet|x64.ActiveCfg = ReleaseNoNet|Any CPU
{A6CF8A86-37C1-4197-80FE-519DE2C842F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A6CF8A86-37C1-4197-80FE-519DE2C842F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {A6CF8A86-37C1-4197-80FE-519DE2C842F5}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
{A6CF8A86-37C1-4197-80FE-519DE2C842F5}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{A6CF8A86-37C1-4197-80FE-519DE2C842F5}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{A6CF8A86-37C1-4197-80FE-519DE2C842F5}.Debug|Mixed Platforms.Deploy.0 = Debug|Any CPU
@@ -434,6 +439,7 @@ Global
{83B92CEE-9923-44E6-B0B4-9930D0BFE95E}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.Debug|Mixed Platforms.Deploy.0 = Debug|Any CPU
@@ -457,6 +463,30 @@ Global
{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.ReleaseNoNet|Win32.Build.0 = Release|Any CPU
{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
{B7BBC4A2-0301-4DFF-B03C-C88CD4F1F890}.ReleaseNoNet|x64.Build.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Debug|Mixed Platforms.Deploy.0 = Debug|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Debug|Win32.ActiveCfg = Debug|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Release|Any CPU.Deploy.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Release|Mixed Platforms.Deploy.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Release|Win32.ActiveCfg = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.Release|x64.ActiveCfg = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.ReleaseNoNet|Any CPU.Deploy.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.ReleaseNoNet|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.ReleaseNoNet|Mixed Platforms.Build.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.ReleaseNoNet|Mixed Platforms.Deploy.0 = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
+ {4512BF32-7443-4BF9-B46B-80E7F2D41B36}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/src/KeePassLib2Android/KeePassLib2Android.csproj b/src/KeePassLib2Android/KeePassLib2Android.csproj
index 5518fc46..f70ba567 100644
--- a/src/KeePassLib2Android/KeePassLib2Android.csproj
+++ b/src/KeePassLib2Android/KeePassLib2Android.csproj
@@ -12,7 +12,7 @@
Resources\Resource.designer.cs
Resource
KeePassLib2Android
- v4.0
+ v4.0.3
True
diff --git a/src/Kp2aBusinessLogic/SelectStorageLocationActivityBase.cs b/src/Kp2aBusinessLogic/SelectStorageLocationActivityBase.cs
index 9e94df4a..c5ce53bc 100644
--- a/src/Kp2aBusinessLogic/SelectStorageLocationActivityBase.cs
+++ b/src/Kp2aBusinessLogic/SelectStorageLocationActivityBase.cs
@@ -21,10 +21,10 @@ namespace keepass2android
WriteDemanded = 2
}
- protected const int RequestCodeFileStorageSelectionForPrimarySelect = 983713;
- private const int RequestCodeFileStorageSelectionForCopyToWritableLocation = 983714;
- private const int RequestCodeFileFileBrowseForWritableLocation = 983715;
- private const int RequestCodeFileBrowseForOpen = 983716;
+ protected const int RequestCodeFileStorageSelectionForPrimarySelect = 33713;
+ private const int RequestCodeFileStorageSelectionForCopyToWritableLocation = 33714;
+ private const int RequestCodeFileFileBrowseForWritableLocation = 33715;
+ private const int RequestCodeFileBrowseForOpen = 33716;
protected IOConnectionInfo _selectedIoc;
diff --git a/src/MasterKeePlugin/MasterKeePlugin.csproj b/src/MasterKeePlugin/MasterKeePlugin.csproj
index 032ef79b..93999f4c 100644
--- a/src/MasterKeePlugin/MasterKeePlugin.csproj
+++ b/src/MasterKeePlugin/MasterKeePlugin.csproj
@@ -15,6 +15,7 @@
Off
True
Properties\AndroidManifest.xml
+ v5.0
true
diff --git a/src/MaterialTest2/MainActivity.cs b/src/MaterialTest2/MainActivity.cs
index b3f1b877..0405c351 100644
--- a/src/MaterialTest2/MainActivity.cs
+++ b/src/MaterialTest2/MainActivity.cs
@@ -1,19 +1,72 @@
using System;
using Android.App;
using Android.Content;
+using Android.Graphics;
using Android.Runtime;
using Android.Support.V4.View;
using Android.Support.V4.Widget;
using Android.Support.V7.App;
+
+using Android.Support.Design.Widget;
+
using Android.Views;
using Android.Widget;
using Android.OS;
-
+using Android.Util;
using Toolbar = Android.Support.V7.Widget.Toolbar;
namespace MaterialTest2
{
- [Activity(Theme="@style/MyTheme", Label = "MaterialTest", MainLauncher = true, Icon = "@drawable/icon")]
- public class MainActivity : ActionBarActivity
+ public class MyDrawerLayout : Android.Support.V4.Widget.DrawerLayout
+ {
+ private bool _fitsSystemWindows;
+
+ protected MyDrawerLayout(IntPtr javaReference, JniHandleOwnership transfer) : base(javaReference, transfer)
+ {
+ }
+
+ public MyDrawerLayout(Context context, IAttributeSet attrs, int defStyle) : base(context, attrs, defStyle)
+ {
+ }
+
+ public MyDrawerLayout(Context context, IAttributeSet attrs) : base(context, attrs)
+ {
+ }
+
+ public MyDrawerLayout(Context context) : base(context)
+ {
+ }
+
+ private int[] mInsets = new int[4];
+
+ protected override bool FitSystemWindows(Rect insets)
+ {
+ if (Build.VERSION.SdkInt >= Build.VERSION_CODES.Kitkat)
+ {
+ // Intentionally do not modify the bottom inset. For some reason,
+ // if the bottom inset is modified, window resizing stops working.
+ // TODO: Figure out why.
+
+ mInsets[0] = insets.Left;
+ mInsets[1] = insets.Top;
+ mInsets[2] = insets.Right;
+
+ insets.Left = 0;
+ insets.Top = 0;
+ insets.Right = 0;
+ }
+
+ return base.FitSystemWindows(insets);
+
+ }
+ public int[] GetInsets()
+ {
+ return mInsets;
+ }
+ }
+
+
+ [Activity(Theme="@style/MyTheme", Label = "MaterialTest", MainLauncher = false, Icon = "@drawable/icon", WindowSoftInputMode = SoftInput.AdjustResize)]
+ public class MainActivity : AppCompatActivity
{
int count = 1;
@@ -23,6 +76,23 @@ namespace MaterialTest2
private string mDrawerTitle;
+ public override bool OnCreateOptionsMenu(IMenu menu)
+ {
+ MenuInflater.Inflate(Resource.Menu.menu_password, menu);
+ return true;
+ }
+
+ public override bool OnOptionsItemSelected(IMenuItem item)
+ {
+ switch (item.ItemId)
+ {
+ case Android.Resource.Id.Home:
+ mDrawerLayout.OpenDrawer(Android.Support.V4.View.GravityCompat.Start);
+ return true;
+ }
+ return base.OnOptionsItemSelected(item);
+ }
+
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
@@ -32,7 +102,7 @@ namespace MaterialTest2
mDrawerTitle = this.Title;
//mPlanetTitles = this.Resources.GetStringArray (Resource.Array.planets_array);
- mDrawerLayout = FindViewById(Resource.Id.drawerLayout);
+ mDrawerLayout = FindViewById(Resource.Id.drawer_layout);
//mDrawerList = FindViewById (Resource.Id.left_drawer);
@@ -40,7 +110,7 @@ namespace MaterialTest2
// improve performance by indicating the list if fixed size.
//mDrawerList.HasFixedSize = true;
//mDrawerList.SetLayoutManager (new LinearLayoutManager (this));
-
+ NavigationView nv;
// set up the drawer's list view with items and click listener
//mDrawerList.SetAdapter (new PlanetAdapter (mPlanetTitles, this));
// enable ActionBar app icon to behave as action to toggle nav drawer
@@ -59,18 +129,62 @@ namespace MaterialTest2
// and attach an event to it
Button button = FindViewById
true
diff --git a/src/java/JavaFileStorage/bin/javafilestorage.jar b/src/java/JavaFileStorage/bin/javafilestorage.jar
index 0a8a25d9..6ff73f24 100644
Binary files a/src/java/JavaFileStorage/bin/javafilestorage.jar and b/src/java/JavaFileStorage/bin/javafilestorage.jar differ
diff --git a/src/java/KP2AKdbLibrary/bin/kp2akdblibrary.jar b/src/java/KP2AKdbLibrary/bin/kp2akdblibrary.jar
index de228a01..6a241411 100644
Binary files a/src/java/KP2AKdbLibrary/bin/kp2akdblibrary.jar and b/src/java/KP2AKdbLibrary/bin/kp2akdblibrary.jar differ
diff --git a/src/java/Keepass2AndroidPluginSDK/bin/keepass2androidpluginsdk.jar b/src/java/Keepass2AndroidPluginSDK/bin/keepass2androidpluginsdk.jar
index 272dc915..d250b0a8 100644
Binary files a/src/java/Keepass2AndroidPluginSDK/bin/keepass2androidpluginsdk.jar and b/src/java/Keepass2AndroidPluginSDK/bin/keepass2androidpluginsdk.jar differ
diff --git a/src/keepass2android/LockingPreferenceActivity.cs b/src/keepass2android/LockingPreferenceActivity.cs
index 72b6b826..17a88fae 100644
--- a/src/keepass2android/LockingPreferenceActivity.cs
+++ b/src/keepass2android/LockingPreferenceActivity.cs
@@ -16,14 +16,119 @@ This file is part of Keepass2Android, Copyright 2013 Philipp Crocoll. This file
*/
using System;
+using Android.Content.Res;
+using Android.Graphics;
using Android.OS;
using Android.Runtime;
using Android.Preferences;
+using Android.Support.V7.App;
+using Android.Views;
+using Java.Lang;
+using keepass2android;
namespace keepass2android
{
+
+ public class AppCompatPreferenceActivity: PreferenceActivity
+ {
+ public AppCompatPreferenceActivity(IntPtr javaReference, JniHandleOwnership transfer)
+ : base(javaReference, transfer)
+ {
+
+ }
+
+ public AppCompatPreferenceActivity()
+ {
+
+ }
+
+ private AppCompatDelegate _appCompatDelegate;
+
+ AppCompatDelegate Delegate
+ {
+ get
+ {
+ if (_appCompatDelegate == null)
+ _appCompatDelegate = AppCompatDelegate.Create(this, null);
+ return _appCompatDelegate;
+ }
+ }
+
+ protected override void OnCreate(Bundle savedInstanceState)
+ {
+ Delegate.InstallViewFactory();
+ Delegate.OnCreate(savedInstanceState);
+ base.OnCreate(savedInstanceState);
+
+ }
+
+
+ public override MenuInflater MenuInflater
+ {
+ get { return Delegate.MenuInflater; }
+ }
+
+
+ public override void SetContentView(int layoutResId)
+ {
+ Delegate.SetContentView(layoutResId);
+
+ }
+
+
+ public override void SetContentView(View view) {
+ Delegate.SetContentView(view);
+ }
+
+ public override void SetContentView(View view, ViewGroup.LayoutParams @params) {
+ Delegate.SetContentView(view, @params);
+ }
+
+ public override void AddContentView(View view, ViewGroup.LayoutParams @params) {
+ Delegate.AddContentView(view, @params);
+ }
+
+ protected override void OnPostResume()
+ {
+ base.OnPostResume();
+ Delegate.OnPostResume();
+ }
+
+ protected override void OnTitleChanged(ICharSequence title, Color color)
+ {
+ base.OnTitleChanged(title, color);
+ Delegate.SetTitle(title);
+ }
+
+
+ public override void OnConfigurationChanged(Configuration newConfig)
+ {
+ base.OnConfigurationChanged(newConfig);
+ Delegate.OnConfigurationChanged(newConfig);
+ }
+
+
+ protected override void OnStop()
+ {
+ base.OnStop();
+ Delegate.OnStop();
+ }
+
+
+ protected override void OnDestroy()
+ {
+ base.OnDestroy();
+ Delegate.OnDestroy();
+ }
+
+ public override void InvalidateOptionsMenu()
+ {
+ Delegate.InvalidateOptionsMenu();
+ }
+ }
+
- public class LockingPreferenceActivity : PreferenceActivity {
+ public class LockingPreferenceActivity : AppCompatPreferenceActivity {
public LockingPreferenceActivity (IntPtr javaReference, JniHandleOwnership transfer)
: base(javaReference, transfer)
diff --git a/src/keepass2android/Properties/AndroidManifest_debug.xml b/src/keepass2android/Properties/AndroidManifest_debug.xml
index ea637b30..08da7294 100644
--- a/src/keepass2android/Properties/AndroidManifest_debug.xml
+++ b/src/keepass2android/Properties/AndroidManifest_debug.xml
@@ -54,7 +54,7 @@
-
+
diff --git a/src/keepass2android/Properties/AndroidManifest_net.xml b/src/keepass2android/Properties/AndroidManifest_net.xml
index a35a6bd5..f7aae08c 100644
--- a/src/keepass2android/Properties/AndroidManifest_net.xml
+++ b/src/keepass2android/Properties/AndroidManifest_net.xml
@@ -1,7 +1,7 @@
diff --git a/src/keepass2android/Resources/values/strings.xml b/src/keepass2android/Resources/values/strings.xml
index fad9f4d3..7a86f0e8 100644
--- a/src/keepass2android/Resources/values/strings.xml
+++ b/src/keepass2android/Resources/values/strings.xml
@@ -538,7 +538,9 @@
The URI you have entered does not look like a filename. Are you sure this is a valid file?
- Version 0.9.8\n
+ Version 0.9.8 preview 2 (alpha)\n
+ *** NOTE: This preview is meant for early testing of the new UI design. It is currently not fully functional!***
+ * Material design.
* Support for Storage Access Framework (allows write to SD card and Google Drive in KP2A Offline)\n
* Try to detect erroneous user input when entering WebDAV URLs (directory instead of file)\n
* Changed password font\n
diff --git a/src/keepass2android/settings/AppSettingsActivity.cs b/src/keepass2android/settings/AppSettingsActivity.cs
index 3c505ff1..1117ba32 100644
--- a/src/keepass2android/settings/AppSettingsActivity.cs
+++ b/src/keepass2android/settings/AppSettingsActivity.cs
@@ -1,3 +1,4 @@
+
/*
This file is part of Keepass2Android, Copyright 2013 Philipp Crocoll. This file is based on Keepassdroid, Copyright Brian Pellin.
diff --git a/src/monodroid-unittesting/MonoDroidUnitTesting/MonoDroidUnitTesting.csproj b/src/monodroid-unittesting/MonoDroidUnitTesting/MonoDroidUnitTesting.csproj
index 90b255f3..56e385fc 100644
--- a/src/monodroid-unittesting/MonoDroidUnitTesting/MonoDroidUnitTesting.csproj
+++ b/src/monodroid-unittesting/MonoDroidUnitTesting/MonoDroidUnitTesting.csproj
@@ -13,7 +13,6 @@
Off
armeabi
- v2.2