add/edit login totp key
@ -890,6 +890,21 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<AndroidResource Include="Resources\drawable-xxxhdpi\download.png" />
|
<AndroidResource Include="Resources\drawable-xxxhdpi\download.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<AndroidResource Include="Resources\drawable\camera.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<AndroidResource Include="Resources\drawable-hdpi\camera.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<AndroidResource Include="Resources\drawable-xhdpi\camera.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<AndroidResource Include="Resources\drawable-xxhdpi\camera.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<AndroidResource Include="Resources\drawable-xxxhdpi\camera.png" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
|
||||||
<Import Project="..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android.Support.Vector.Drawable.targets" Condition="Exists('..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android.Support.Vector.Drawable.targets')" />
|
<Import Project="..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android.Support.Vector.Drawable.targets" Condition="Exists('..\..\packages\Xamarin.Android.Support.Vector.Drawable.23.3.0\build\Xamarin.Android.Support.Vector.Drawable.targets')" />
|
||||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||||
|
341
src/Android/Resources/Resource.Designer.cs
generated
@ -2295,505 +2295,508 @@ namespace Bit.Android
|
|||||||
public const int accessibility_step2 = 2130837582;
|
public const int accessibility_step2 = 2130837582;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02004f
|
// aapt resource value: 0x7f02004f
|
||||||
public const int cloudup = 2130837583;
|
public const int camera = 2130837583;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020050
|
// aapt resource value: 0x7f020050
|
||||||
public const int cogs = 2130837584;
|
public const int cloudup = 2130837584;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020051
|
// aapt resource value: 0x7f020051
|
||||||
public const int cogs_selected = 2130837585;
|
public const int cogs = 2130837585;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020052
|
// aapt resource value: 0x7f020052
|
||||||
public const int common_full_open_on_phone = 2130837586;
|
public const int cogs_selected = 2130837586;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020053
|
// aapt resource value: 0x7f020053
|
||||||
public const int common_google_signin_btn_icon_dark = 2130837587;
|
public const int common_full_open_on_phone = 2130837587;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020054
|
// aapt resource value: 0x7f020054
|
||||||
public const int common_google_signin_btn_icon_dark_disabled = 2130837588;
|
public const int common_google_signin_btn_icon_dark = 2130837588;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020055
|
// aapt resource value: 0x7f020055
|
||||||
public const int common_google_signin_btn_icon_dark_focused = 2130837589;
|
public const int common_google_signin_btn_icon_dark_disabled = 2130837589;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020056
|
// aapt resource value: 0x7f020056
|
||||||
public const int common_google_signin_btn_icon_dark_normal = 2130837590;
|
public const int common_google_signin_btn_icon_dark_focused = 2130837590;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020057
|
// aapt resource value: 0x7f020057
|
||||||
public const int common_google_signin_btn_icon_dark_pressed = 2130837591;
|
public const int common_google_signin_btn_icon_dark_normal = 2130837591;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020058
|
// aapt resource value: 0x7f020058
|
||||||
public const int common_google_signin_btn_icon_light = 2130837592;
|
public const int common_google_signin_btn_icon_dark_pressed = 2130837592;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020059
|
// aapt resource value: 0x7f020059
|
||||||
public const int common_google_signin_btn_icon_light_disabled = 2130837593;
|
public const int common_google_signin_btn_icon_light = 2130837593;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02005a
|
// aapt resource value: 0x7f02005a
|
||||||
public const int common_google_signin_btn_icon_light_focused = 2130837594;
|
public const int common_google_signin_btn_icon_light_disabled = 2130837594;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02005b
|
// aapt resource value: 0x7f02005b
|
||||||
public const int common_google_signin_btn_icon_light_normal = 2130837595;
|
public const int common_google_signin_btn_icon_light_focused = 2130837595;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02005c
|
// aapt resource value: 0x7f02005c
|
||||||
public const int common_google_signin_btn_icon_light_pressed = 2130837596;
|
public const int common_google_signin_btn_icon_light_normal = 2130837596;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02005d
|
// aapt resource value: 0x7f02005d
|
||||||
public const int common_google_signin_btn_text_dark = 2130837597;
|
public const int common_google_signin_btn_icon_light_pressed = 2130837597;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02005e
|
// aapt resource value: 0x7f02005e
|
||||||
public const int common_google_signin_btn_text_dark_disabled = 2130837598;
|
public const int common_google_signin_btn_text_dark = 2130837598;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02005f
|
// aapt resource value: 0x7f02005f
|
||||||
public const int common_google_signin_btn_text_dark_focused = 2130837599;
|
public const int common_google_signin_btn_text_dark_disabled = 2130837599;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020060
|
// aapt resource value: 0x7f020060
|
||||||
public const int common_google_signin_btn_text_dark_normal = 2130837600;
|
public const int common_google_signin_btn_text_dark_focused = 2130837600;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020061
|
// aapt resource value: 0x7f020061
|
||||||
public const int common_google_signin_btn_text_dark_pressed = 2130837601;
|
public const int common_google_signin_btn_text_dark_normal = 2130837601;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020062
|
// aapt resource value: 0x7f020062
|
||||||
public const int common_google_signin_btn_text_light = 2130837602;
|
public const int common_google_signin_btn_text_dark_pressed = 2130837602;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020063
|
// aapt resource value: 0x7f020063
|
||||||
public const int common_google_signin_btn_text_light_disabled = 2130837603;
|
public const int common_google_signin_btn_text_light = 2130837603;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020064
|
// aapt resource value: 0x7f020064
|
||||||
public const int common_google_signin_btn_text_light_focused = 2130837604;
|
public const int common_google_signin_btn_text_light_disabled = 2130837604;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020065
|
// aapt resource value: 0x7f020065
|
||||||
public const int common_google_signin_btn_text_light_normal = 2130837605;
|
public const int common_google_signin_btn_text_light_focused = 2130837605;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020066
|
// aapt resource value: 0x7f020066
|
||||||
public const int common_google_signin_btn_text_light_pressed = 2130837606;
|
public const int common_google_signin_btn_text_light_normal = 2130837606;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020067
|
// aapt resource value: 0x7f020067
|
||||||
public const int common_ic_googleplayservices = 2130837607;
|
public const int common_google_signin_btn_text_light_pressed = 2130837607;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020068
|
// aapt resource value: 0x7f020068
|
||||||
public const int common_plus_signin_btn_icon_dark = 2130837608;
|
public const int common_ic_googleplayservices = 2130837608;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020069
|
// aapt resource value: 0x7f020069
|
||||||
public const int common_plus_signin_btn_icon_dark_disabled = 2130837609;
|
public const int common_plus_signin_btn_icon_dark = 2130837609;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02006a
|
// aapt resource value: 0x7f02006a
|
||||||
public const int common_plus_signin_btn_icon_dark_focused = 2130837610;
|
public const int common_plus_signin_btn_icon_dark_disabled = 2130837610;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02006b
|
// aapt resource value: 0x7f02006b
|
||||||
public const int common_plus_signin_btn_icon_dark_normal = 2130837611;
|
public const int common_plus_signin_btn_icon_dark_focused = 2130837611;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02006c
|
// aapt resource value: 0x7f02006c
|
||||||
public const int common_plus_signin_btn_icon_dark_pressed = 2130837612;
|
public const int common_plus_signin_btn_icon_dark_normal = 2130837612;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02006d
|
// aapt resource value: 0x7f02006d
|
||||||
public const int common_plus_signin_btn_icon_light = 2130837613;
|
public const int common_plus_signin_btn_icon_dark_pressed = 2130837613;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02006e
|
// aapt resource value: 0x7f02006e
|
||||||
public const int common_plus_signin_btn_icon_light_disabled = 2130837614;
|
public const int common_plus_signin_btn_icon_light = 2130837614;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02006f
|
// aapt resource value: 0x7f02006f
|
||||||
public const int common_plus_signin_btn_icon_light_focused = 2130837615;
|
public const int common_plus_signin_btn_icon_light_disabled = 2130837615;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020070
|
// aapt resource value: 0x7f020070
|
||||||
public const int common_plus_signin_btn_icon_light_normal = 2130837616;
|
public const int common_plus_signin_btn_icon_light_focused = 2130837616;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020071
|
// aapt resource value: 0x7f020071
|
||||||
public const int common_plus_signin_btn_icon_light_pressed = 2130837617;
|
public const int common_plus_signin_btn_icon_light_normal = 2130837617;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020072
|
// aapt resource value: 0x7f020072
|
||||||
public const int common_plus_signin_btn_text_dark = 2130837618;
|
public const int common_plus_signin_btn_icon_light_pressed = 2130837618;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020073
|
// aapt resource value: 0x7f020073
|
||||||
public const int common_plus_signin_btn_text_dark_disabled = 2130837619;
|
public const int common_plus_signin_btn_text_dark = 2130837619;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020074
|
// aapt resource value: 0x7f020074
|
||||||
public const int common_plus_signin_btn_text_dark_focused = 2130837620;
|
public const int common_plus_signin_btn_text_dark_disabled = 2130837620;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020075
|
// aapt resource value: 0x7f020075
|
||||||
public const int common_plus_signin_btn_text_dark_normal = 2130837621;
|
public const int common_plus_signin_btn_text_dark_focused = 2130837621;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020076
|
// aapt resource value: 0x7f020076
|
||||||
public const int common_plus_signin_btn_text_dark_pressed = 2130837622;
|
public const int common_plus_signin_btn_text_dark_normal = 2130837622;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020077
|
// aapt resource value: 0x7f020077
|
||||||
public const int common_plus_signin_btn_text_light = 2130837623;
|
public const int common_plus_signin_btn_text_dark_pressed = 2130837623;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020078
|
// aapt resource value: 0x7f020078
|
||||||
public const int common_plus_signin_btn_text_light_disabled = 2130837624;
|
public const int common_plus_signin_btn_text_light = 2130837624;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020079
|
// aapt resource value: 0x7f020079
|
||||||
public const int common_plus_signin_btn_text_light_focused = 2130837625;
|
public const int common_plus_signin_btn_text_light_disabled = 2130837625;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02007a
|
// aapt resource value: 0x7f02007a
|
||||||
public const int common_plus_signin_btn_text_light_normal = 2130837626;
|
public const int common_plus_signin_btn_text_light_focused = 2130837626;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02007b
|
// aapt resource value: 0x7f02007b
|
||||||
public const int common_plus_signin_btn_text_light_pressed = 2130837627;
|
public const int common_plus_signin_btn_text_light_normal = 2130837627;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02007c
|
// aapt resource value: 0x7f02007c
|
||||||
public const int design_fab_background = 2130837628;
|
public const int common_plus_signin_btn_text_light_pressed = 2130837628;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02007d
|
// aapt resource value: 0x7f02007d
|
||||||
public const int design_snackbar_background = 2130837629;
|
public const int design_fab_background = 2130837629;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02007e
|
// aapt resource value: 0x7f02007e
|
||||||
public const int download = 2130837630;
|
public const int design_snackbar_background = 2130837630;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02007f
|
// aapt resource value: 0x7f02007f
|
||||||
public const int envelope = 2130837631;
|
public const int download = 2130837631;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020080
|
// aapt resource value: 0x7f020080
|
||||||
public const int eye = 2130837632;
|
public const int envelope = 2130837632;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020081
|
// aapt resource value: 0x7f020081
|
||||||
public const int eye_slash = 2130837633;
|
public const int eye = 2130837633;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020082
|
// aapt resource value: 0x7f020082
|
||||||
public const int fa_lock = 2130837634;
|
public const int eye_slash = 2130837634;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020083
|
// aapt resource value: 0x7f020083
|
||||||
public const int fa_lock_selected = 2130837635;
|
public const int fa_lock = 2130837635;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020084
|
// aapt resource value: 0x7f020084
|
||||||
public const int fingerprint = 2130837636;
|
public const int fa_lock_selected = 2130837636;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020085
|
// aapt resource value: 0x7f020085
|
||||||
public const int fingerprint_white = 2130837637;
|
public const int fingerprint = 2130837637;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020086
|
// aapt resource value: 0x7f020086
|
||||||
public const int folder = 2130837638;
|
public const int fingerprint_white = 2130837638;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020087
|
// aapt resource value: 0x7f020087
|
||||||
public const int globe = 2130837639;
|
public const int folder = 2130837639;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020088
|
// aapt resource value: 0x7f020088
|
||||||
public const int hockeyapp_btn_background = 2130837640;
|
public const int globe = 2130837640;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020089
|
// aapt resource value: 0x7f020089
|
||||||
public const int ic_audiotrack = 2130837641;
|
public const int hockeyapp_btn_background = 2130837641;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02008a
|
// aapt resource value: 0x7f02008a
|
||||||
public const int ic_audiotrack_light = 2130837642;
|
public const int ic_audiotrack = 2130837642;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02008b
|
// aapt resource value: 0x7f02008b
|
||||||
public const int ic_bluetooth_grey = 2130837643;
|
public const int ic_audiotrack_light = 2130837643;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02008c
|
// aapt resource value: 0x7f02008c
|
||||||
public const int ic_bluetooth_white = 2130837644;
|
public const int ic_bluetooth_grey = 2130837644;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02008d
|
// aapt resource value: 0x7f02008d
|
||||||
public const int ic_cast_dark = 2130837645;
|
public const int ic_bluetooth_white = 2130837645;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02008e
|
// aapt resource value: 0x7f02008e
|
||||||
public const int ic_cast_disabled_light = 2130837646;
|
public const int ic_cast_dark = 2130837646;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02008f
|
// aapt resource value: 0x7f02008f
|
||||||
public const int ic_cast_grey = 2130837647;
|
public const int ic_cast_disabled_light = 2130837647;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020090
|
// aapt resource value: 0x7f020090
|
||||||
public const int ic_cast_light = 2130837648;
|
public const int ic_cast_grey = 2130837648;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020091
|
// aapt resource value: 0x7f020091
|
||||||
public const int ic_cast_off_light = 2130837649;
|
public const int ic_cast_light = 2130837649;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020092
|
// aapt resource value: 0x7f020092
|
||||||
public const int ic_cast_on_0_light = 2130837650;
|
public const int ic_cast_off_light = 2130837650;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020093
|
// aapt resource value: 0x7f020093
|
||||||
public const int ic_cast_on_1_light = 2130837651;
|
public const int ic_cast_on_0_light = 2130837651;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020094
|
// aapt resource value: 0x7f020094
|
||||||
public const int ic_cast_on_2_light = 2130837652;
|
public const int ic_cast_on_1_light = 2130837652;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020095
|
// aapt resource value: 0x7f020095
|
||||||
public const int ic_cast_on_light = 2130837653;
|
public const int ic_cast_on_2_light = 2130837653;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020096
|
// aapt resource value: 0x7f020096
|
||||||
public const int ic_cast_white = 2130837654;
|
public const int ic_cast_on_light = 2130837654;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020097
|
// aapt resource value: 0x7f020097
|
||||||
public const int ic_close_dark = 2130837655;
|
public const int ic_cast_white = 2130837655;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020098
|
// aapt resource value: 0x7f020098
|
||||||
public const int ic_close_light = 2130837656;
|
public const int ic_close_dark = 2130837656;
|
||||||
|
|
||||||
// aapt resource value: 0x7f020099
|
// aapt resource value: 0x7f020099
|
||||||
public const int ic_collapse = 2130837657;
|
public const int ic_close_light = 2130837657;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02009a
|
// aapt resource value: 0x7f02009a
|
||||||
public const int ic_collapse_00000 = 2130837658;
|
public const int ic_collapse = 2130837658;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02009b
|
// aapt resource value: 0x7f02009b
|
||||||
public const int ic_collapse_00001 = 2130837659;
|
public const int ic_collapse_00000 = 2130837659;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02009c
|
// aapt resource value: 0x7f02009c
|
||||||
public const int ic_collapse_00002 = 2130837660;
|
public const int ic_collapse_00001 = 2130837660;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02009d
|
// aapt resource value: 0x7f02009d
|
||||||
public const int ic_collapse_00003 = 2130837661;
|
public const int ic_collapse_00002 = 2130837661;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02009e
|
// aapt resource value: 0x7f02009e
|
||||||
public const int ic_collapse_00004 = 2130837662;
|
public const int ic_collapse_00003 = 2130837662;
|
||||||
|
|
||||||
// aapt resource value: 0x7f02009f
|
// aapt resource value: 0x7f02009f
|
||||||
public const int ic_collapse_00005 = 2130837663;
|
public const int ic_collapse_00004 = 2130837663;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a0
|
// aapt resource value: 0x7f0200a0
|
||||||
public const int ic_collapse_00006 = 2130837664;
|
public const int ic_collapse_00005 = 2130837664;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a1
|
// aapt resource value: 0x7f0200a1
|
||||||
public const int ic_collapse_00007 = 2130837665;
|
public const int ic_collapse_00006 = 2130837665;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a2
|
// aapt resource value: 0x7f0200a2
|
||||||
public const int ic_collapse_00008 = 2130837666;
|
public const int ic_collapse_00007 = 2130837666;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a3
|
// aapt resource value: 0x7f0200a3
|
||||||
public const int ic_collapse_00009 = 2130837667;
|
public const int ic_collapse_00008 = 2130837667;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a4
|
// aapt resource value: 0x7f0200a4
|
||||||
public const int ic_collapse_00010 = 2130837668;
|
public const int ic_collapse_00009 = 2130837668;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a5
|
// aapt resource value: 0x7f0200a5
|
||||||
public const int ic_collapse_00011 = 2130837669;
|
public const int ic_collapse_00010 = 2130837669;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a6
|
// aapt resource value: 0x7f0200a6
|
||||||
public const int ic_collapse_00012 = 2130837670;
|
public const int ic_collapse_00011 = 2130837670;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a7
|
// aapt resource value: 0x7f0200a7
|
||||||
public const int ic_collapse_00013 = 2130837671;
|
public const int ic_collapse_00012 = 2130837671;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a8
|
// aapt resource value: 0x7f0200a8
|
||||||
public const int ic_collapse_00014 = 2130837672;
|
public const int ic_collapse_00013 = 2130837672;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200a9
|
// aapt resource value: 0x7f0200a9
|
||||||
public const int ic_collapse_00015 = 2130837673;
|
public const int ic_collapse_00014 = 2130837673;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200aa
|
// aapt resource value: 0x7f0200aa
|
||||||
public const int ic_errorstatus = 2130837674;
|
public const int ic_collapse_00015 = 2130837674;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ab
|
// aapt resource value: 0x7f0200ab
|
||||||
public const int ic_expand = 2130837675;
|
public const int ic_errorstatus = 2130837675;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ac
|
// aapt resource value: 0x7f0200ac
|
||||||
public const int ic_expand_00000 = 2130837676;
|
public const int ic_expand = 2130837676;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ad
|
// aapt resource value: 0x7f0200ad
|
||||||
public const int ic_expand_00001 = 2130837677;
|
public const int ic_expand_00000 = 2130837677;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ae
|
// aapt resource value: 0x7f0200ae
|
||||||
public const int ic_expand_00002 = 2130837678;
|
public const int ic_expand_00001 = 2130837678;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200af
|
// aapt resource value: 0x7f0200af
|
||||||
public const int ic_expand_00003 = 2130837679;
|
public const int ic_expand_00002 = 2130837679;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b0
|
// aapt resource value: 0x7f0200b0
|
||||||
public const int ic_expand_00004 = 2130837680;
|
public const int ic_expand_00003 = 2130837680;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b1
|
// aapt resource value: 0x7f0200b1
|
||||||
public const int ic_expand_00005 = 2130837681;
|
public const int ic_expand_00004 = 2130837681;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b2
|
// aapt resource value: 0x7f0200b2
|
||||||
public const int ic_expand_00006 = 2130837682;
|
public const int ic_expand_00005 = 2130837682;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b3
|
// aapt resource value: 0x7f0200b3
|
||||||
public const int ic_expand_00007 = 2130837683;
|
public const int ic_expand_00006 = 2130837683;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b4
|
// aapt resource value: 0x7f0200b4
|
||||||
public const int ic_expand_00008 = 2130837684;
|
public const int ic_expand_00007 = 2130837684;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b5
|
// aapt resource value: 0x7f0200b5
|
||||||
public const int ic_expand_00009 = 2130837685;
|
public const int ic_expand_00008 = 2130837685;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b6
|
// aapt resource value: 0x7f0200b6
|
||||||
public const int ic_expand_00010 = 2130837686;
|
public const int ic_expand_00009 = 2130837686;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b7
|
// aapt resource value: 0x7f0200b7
|
||||||
public const int ic_expand_00011 = 2130837687;
|
public const int ic_expand_00010 = 2130837687;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b8
|
// aapt resource value: 0x7f0200b8
|
||||||
public const int ic_expand_00012 = 2130837688;
|
public const int ic_expand_00011 = 2130837688;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200b9
|
// aapt resource value: 0x7f0200b9
|
||||||
public const int ic_expand_00013 = 2130837689;
|
public const int ic_expand_00012 = 2130837689;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ba
|
// aapt resource value: 0x7f0200ba
|
||||||
public const int ic_expand_00014 = 2130837690;
|
public const int ic_expand_00013 = 2130837690;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200bb
|
// aapt resource value: 0x7f0200bb
|
||||||
public const int ic_expand_00015 = 2130837691;
|
public const int ic_expand_00014 = 2130837691;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200bc
|
// aapt resource value: 0x7f0200bc
|
||||||
public const int ic_media_pause = 2130837692;
|
public const int ic_expand_00015 = 2130837692;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200bd
|
// aapt resource value: 0x7f0200bd
|
||||||
public const int ic_media_play = 2130837693;
|
public const int ic_media_pause = 2130837693;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200be
|
// aapt resource value: 0x7f0200be
|
||||||
public const int ic_media_route_disabled_mono_dark = 2130837694;
|
public const int ic_media_play = 2130837694;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200bf
|
// aapt resource value: 0x7f0200bf
|
||||||
public const int ic_media_route_off_mono_dark = 2130837695;
|
public const int ic_media_route_disabled_mono_dark = 2130837695;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c0
|
// aapt resource value: 0x7f0200c0
|
||||||
public const int ic_media_route_on_0_mono_dark = 2130837696;
|
public const int ic_media_route_off_mono_dark = 2130837696;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c1
|
// aapt resource value: 0x7f0200c1
|
||||||
public const int ic_media_route_on_1_mono_dark = 2130837697;
|
public const int ic_media_route_on_0_mono_dark = 2130837697;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c2
|
// aapt resource value: 0x7f0200c2
|
||||||
public const int ic_media_route_on_2_mono_dark = 2130837698;
|
public const int ic_media_route_on_1_mono_dark = 2130837698;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c3
|
// aapt resource value: 0x7f0200c3
|
||||||
public const int ic_media_route_on_mono_dark = 2130837699;
|
public const int ic_media_route_on_2_mono_dark = 2130837699;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c4
|
// aapt resource value: 0x7f0200c4
|
||||||
public const int ic_pause_dark = 2130837700;
|
public const int ic_media_route_on_mono_dark = 2130837700;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c5
|
// aapt resource value: 0x7f0200c5
|
||||||
public const int ic_pause_light = 2130837701;
|
public const int ic_pause_dark = 2130837701;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c6
|
// aapt resource value: 0x7f0200c6
|
||||||
public const int ic_play_dark = 2130837702;
|
public const int ic_pause_light = 2130837702;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c7
|
// aapt resource value: 0x7f0200c7
|
||||||
public const int ic_play_light = 2130837703;
|
public const int ic_play_dark = 2130837703;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c8
|
// aapt resource value: 0x7f0200c8
|
||||||
public const int ic_speaker_dark = 2130837704;
|
public const int ic_play_light = 2130837704;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200c9
|
// aapt resource value: 0x7f0200c9
|
||||||
public const int ic_speaker_group_dark = 2130837705;
|
public const int ic_speaker_dark = 2130837705;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ca
|
// aapt resource value: 0x7f0200ca
|
||||||
public const int ic_speaker_group_light = 2130837706;
|
public const int ic_speaker_group_dark = 2130837706;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200cb
|
// aapt resource value: 0x7f0200cb
|
||||||
public const int ic_speaker_light = 2130837707;
|
public const int ic_speaker_group_light = 2130837707;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200cc
|
// aapt resource value: 0x7f0200cc
|
||||||
public const int ic_successstatus = 2130837708;
|
public const int ic_speaker_light = 2130837708;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200cd
|
// aapt resource value: 0x7f0200cd
|
||||||
public const int ic_tv_dark = 2130837709;
|
public const int ic_successstatus = 2130837709;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ce
|
// aapt resource value: 0x7f0200ce
|
||||||
public const int ic_tv_light = 2130837710;
|
public const int ic_tv_dark = 2130837710;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200cf
|
// aapt resource value: 0x7f0200cf
|
||||||
public const int icon = 2130837711;
|
public const int ic_tv_light = 2130837711;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d0
|
// aapt resource value: 0x7f0200d0
|
||||||
public const int ion_chevron_right = 2130837712;
|
public const int icon = 2130837712;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d1
|
// aapt resource value: 0x7f0200d1
|
||||||
public const int lightbulb = 2130837713;
|
public const int ion_chevron_right = 2130837713;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d2
|
// aapt resource value: 0x7f0200d2
|
||||||
public const int list_selector = 2130837714;
|
public const int lightbulb = 2130837714;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d3
|
// aapt resource value: 0x7f0200d3
|
||||||
public const int @lock = 2130837715;
|
public const int list_selector = 2130837715;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d4
|
// aapt resource value: 0x7f0200d4
|
||||||
public const int logo = 2130837716;
|
public const int @lock = 2130837716;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d5
|
// aapt resource value: 0x7f0200d5
|
||||||
public const int more = 2130837717;
|
public const int logo = 2130837717;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d6
|
// aapt resource value: 0x7f0200d6
|
||||||
public const int mr_dialog_material_background_dark = 2130837718;
|
public const int more = 2130837718;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d7
|
// aapt resource value: 0x7f0200d7
|
||||||
public const int mr_dialog_material_background_light = 2130837719;
|
public const int mr_dialog_material_background_dark = 2130837719;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d8
|
// aapt resource value: 0x7f0200d8
|
||||||
public const int mr_ic_audiotrack_light = 2130837720;
|
public const int mr_dialog_material_background_light = 2130837720;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200d9
|
// aapt resource value: 0x7f0200d9
|
||||||
public const int mr_ic_cast_dark = 2130837721;
|
public const int mr_ic_audiotrack_light = 2130837721;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200da
|
// aapt resource value: 0x7f0200da
|
||||||
public const int mr_ic_cast_light = 2130837722;
|
public const int mr_ic_cast_dark = 2130837722;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200db
|
// aapt resource value: 0x7f0200db
|
||||||
public const int mr_ic_close_dark = 2130837723;
|
public const int mr_ic_cast_light = 2130837723;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200dc
|
// aapt resource value: 0x7f0200dc
|
||||||
public const int mr_ic_close_light = 2130837724;
|
public const int mr_ic_close_dark = 2130837724;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200dd
|
// aapt resource value: 0x7f0200dd
|
||||||
public const int mr_ic_media_route_connecting_mono_dark = 2130837725;
|
public const int mr_ic_close_light = 2130837725;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200de
|
// aapt resource value: 0x7f0200de
|
||||||
public const int mr_ic_media_route_connecting_mono_light = 2130837726;
|
public const int mr_ic_media_route_connecting_mono_dark = 2130837726;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200df
|
// aapt resource value: 0x7f0200df
|
||||||
public const int mr_ic_media_route_mono_dark = 2130837727;
|
public const int mr_ic_media_route_connecting_mono_light = 2130837727;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e0
|
// aapt resource value: 0x7f0200e0
|
||||||
public const int mr_ic_media_route_mono_light = 2130837728;
|
public const int mr_ic_media_route_mono_dark = 2130837728;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e1
|
// aapt resource value: 0x7f0200e1
|
||||||
public const int mr_ic_pause_dark = 2130837729;
|
public const int mr_ic_media_route_mono_light = 2130837729;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e2
|
// aapt resource value: 0x7f0200e2
|
||||||
public const int mr_ic_pause_light = 2130837730;
|
public const int mr_ic_pause_dark = 2130837730;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e3
|
// aapt resource value: 0x7f0200e3
|
||||||
public const int mr_ic_play_dark = 2130837731;
|
public const int mr_ic_pause_light = 2130837731;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e4
|
// aapt resource value: 0x7f0200e4
|
||||||
public const int mr_ic_play_light = 2130837732;
|
public const int mr_ic_play_dark = 2130837732;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e5
|
// aapt resource value: 0x7f0200e5
|
||||||
public const int notification_sm = 2130837733;
|
public const int mr_ic_play_light = 2130837733;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200f5
|
|
||||||
public const int notification_template_icon_bg = 2130837749;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e6
|
// aapt resource value: 0x7f0200e6
|
||||||
public const int plus = 2130837734;
|
public const int notification_sm = 2130837734;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0200f6
|
||||||
|
public const int notification_template_icon_bg = 2130837750;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e7
|
// aapt resource value: 0x7f0200e7
|
||||||
public const int refresh = 2130837735;
|
public const int plus = 2130837735;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e8
|
// aapt resource value: 0x7f0200e8
|
||||||
public const int roundedbg = 2130837736;
|
public const int refresh = 2130837736;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200e9
|
// aapt resource value: 0x7f0200e9
|
||||||
public const int roundedbgdark = 2130837737;
|
public const int roundedbg = 2130837737;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ea
|
// aapt resource value: 0x7f0200ea
|
||||||
public const int search = 2130837738;
|
public const int roundedbgdark = 2130837738;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200eb
|
// aapt resource value: 0x7f0200eb
|
||||||
public const int share = 2130837739;
|
public const int search = 2130837739;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ec
|
// aapt resource value: 0x7f0200ec
|
||||||
public const int share_tools = 2130837740;
|
public const int share = 2130837740;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ed
|
// aapt resource value: 0x7f0200ed
|
||||||
public const int splash_screen = 2130837741;
|
public const int share_tools = 2130837741;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ee
|
// aapt resource value: 0x7f0200ee
|
||||||
public const int star = 2130837742;
|
public const int splash_screen = 2130837742;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200ef
|
// aapt resource value: 0x7f0200ef
|
||||||
public const int star_selected = 2130837743;
|
public const int star = 2130837743;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200f0
|
// aapt resource value: 0x7f0200f0
|
||||||
public const int tools = 2130837744;
|
public const int star_selected = 2130837744;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200f1
|
// aapt resource value: 0x7f0200f1
|
||||||
public const int tools_selected = 2130837745;
|
public const int tools = 2130837745;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200f2
|
// aapt resource value: 0x7f0200f2
|
||||||
public const int upload = 2130837746;
|
public const int tools_selected = 2130837746;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200f3
|
// aapt resource value: 0x7f0200f3
|
||||||
public const int user = 2130837747;
|
public const int upload = 2130837747;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0200f4
|
// aapt resource value: 0x7f0200f4
|
||||||
public const int yubikey = 2130837748;
|
public const int user = 2130837748;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0200f5
|
||||||
|
public const int yubikey = 2130837749;
|
||||||
|
|
||||||
static Drawable()
|
static Drawable()
|
||||||
{
|
{
|
||||||
|
BIN
src/Android/Resources/drawable-hdpi/camera.png
Normal file
After Width: | Height: | Size: 664 B |
BIN
src/Android/Resources/drawable-xhdpi/camera.png
Normal file
After Width: | Height: | Size: 802 B |
BIN
src/Android/Resources/drawable-xxhdpi/camera.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
src/Android/Resources/drawable-xxxhdpi/camera.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
src/Android/Resources/drawable/camera.png
Normal file
After Width: | Height: | Size: 478 B |
@ -11,6 +11,7 @@
|
|||||||
Username = login.Username?.EncryptedString;
|
Username = login.Username?.EncryptedString;
|
||||||
Password = login.Password?.EncryptedString;
|
Password = login.Password?.EncryptedString;
|
||||||
Notes = login.Notes?.EncryptedString;
|
Notes = login.Notes?.EncryptedString;
|
||||||
|
Totp = login.Totp?.EncryptedString;
|
||||||
Favorite = login.Favorite;
|
Favorite = login.Favorite;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -21,6 +22,7 @@
|
|||||||
public string Username { get; set; }
|
public string Username { get; set; }
|
||||||
public string Password { get; set; }
|
public string Password { get; set; }
|
||||||
public string Notes { get; set; }
|
public string Notes { get; set; }
|
||||||
|
public string Totp { get; set; }
|
||||||
public bool Favorite { get; set; }
|
public bool Favorite { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -51,6 +51,7 @@ namespace Bit.App.Pages
|
|||||||
public FormEntryCell UsernameCell { get; private set; }
|
public FormEntryCell UsernameCell { get; private set; }
|
||||||
public FormEntryCell UriCell { get; private set; }
|
public FormEntryCell UriCell { get; private set; }
|
||||||
public FormEntryCell NameCell { get; private set; }
|
public FormEntryCell NameCell { get; private set; }
|
||||||
|
public FormEntryCell TotpCell { get; private set; }
|
||||||
public FormEditorCell NotesCell { get; private set; }
|
public FormEditorCell NotesCell { get; private set; }
|
||||||
public FormPickerCell FolderCell { get; private set; }
|
public FormPickerCell FolderCell { get; private set; }
|
||||||
public ExtendedTextCell GenerateCell { get; private set; }
|
public ExtendedTextCell GenerateCell { get; private set; }
|
||||||
@ -58,7 +59,15 @@ namespace Bit.App.Pages
|
|||||||
private void Init()
|
private void Init()
|
||||||
{
|
{
|
||||||
NotesCell = new FormEditorCell(height: 180);
|
NotesCell = new FormEditorCell(height: 180);
|
||||||
PasswordCell = new FormEntryCell(AppResources.Password, isPassword: true, nextElement: NotesCell.Editor,
|
|
||||||
|
TotpCell = new FormEntryCell(AppResources.AuthenticatorKey, nextElement: NotesCell.Editor,
|
||||||
|
useButton: true);
|
||||||
|
TotpCell.Button.Image = "camera";
|
||||||
|
TotpCell.Entry.DisableAutocapitalize = true;
|
||||||
|
TotpCell.Entry.Autocorrect = false;
|
||||||
|
TotpCell.Entry.FontFamily = Helpers.OnPlatform(iOS: "Courier", Android: "monospace", WinPhone: "Courier");
|
||||||
|
|
||||||
|
PasswordCell = new FormEntryCell(AppResources.Password, isPassword: true, nextElement: TotpCell.Entry,
|
||||||
useButton: true);
|
useButton: true);
|
||||||
PasswordCell.Button.Image = "eye";
|
PasswordCell.Button.Image = "eye";
|
||||||
PasswordCell.Entry.DisableAutocapitalize = true;
|
PasswordCell.Entry.DisableAutocapitalize = true;
|
||||||
@ -115,6 +124,7 @@ namespace Bit.App.Pages
|
|||||||
},
|
},
|
||||||
new TableSection(" ")
|
new TableSection(" ")
|
||||||
{
|
{
|
||||||
|
TotpCell,
|
||||||
FolderCell,
|
FolderCell,
|
||||||
favoriteCell
|
favoriteCell
|
||||||
},
|
},
|
||||||
@ -132,7 +142,7 @@ namespace Bit.App.Pages
|
|||||||
}
|
}
|
||||||
else if(Device.RuntimePlatform == Device.Android)
|
else if(Device.RuntimePlatform == Device.Android)
|
||||||
{
|
{
|
||||||
PasswordCell.Button.WidthRequest = 40;
|
PasswordCell.Button.WidthRequest = TotpCell.Button.WidthRequest = 40;
|
||||||
}
|
}
|
||||||
|
|
||||||
var saveToolBarItem = new ToolbarItem(AppResources.Save, null, async () =>
|
var saveToolBarItem = new ToolbarItem(AppResources.Save, null, async () =>
|
||||||
@ -163,6 +173,7 @@ namespace Bit.App.Pages
|
|||||||
Username = UsernameCell.Entry.Text?.Encrypt(),
|
Username = UsernameCell.Entry.Text?.Encrypt(),
|
||||||
Password = PasswordCell.Entry.Text?.Encrypt(),
|
Password = PasswordCell.Entry.Text?.Encrypt(),
|
||||||
Notes = NotesCell.Editor.Text?.Encrypt(),
|
Notes = NotesCell.Editor.Text?.Encrypt(),
|
||||||
|
Totp = TotpCell.Entry.Text?.Encrypt(),
|
||||||
Favorite = favoriteCell.On
|
Favorite = favoriteCell.On
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -220,8 +231,10 @@ namespace Bit.App.Pages
|
|||||||
UriCell.InitEvents();
|
UriCell.InitEvents();
|
||||||
NameCell.InitEvents();
|
NameCell.InitEvents();
|
||||||
NotesCell.InitEvents();
|
NotesCell.InitEvents();
|
||||||
|
TotpCell.InitEvents();
|
||||||
FolderCell.InitEvents();
|
FolderCell.InitEvents();
|
||||||
PasswordCell.Button.Clicked += PasswordButton_Clicked;
|
PasswordCell.Button.Clicked += PasswordButton_Clicked;
|
||||||
|
TotpCell.Button.Clicked += TotpButton_Clicked;
|
||||||
GenerateCell.Tapped += GenerateCell_Tapped;
|
GenerateCell.Tapped += GenerateCell_Tapped;
|
||||||
|
|
||||||
if(!_fromAutofill && !_settings.GetValueOrDefault(AddedLoginAlertKey, false))
|
if(!_fromAutofill && !_settings.GetValueOrDefault(AddedLoginAlertKey, false))
|
||||||
@ -250,8 +263,10 @@ namespace Bit.App.Pages
|
|||||||
UriCell.Dispose();
|
UriCell.Dispose();
|
||||||
NameCell.Dispose();
|
NameCell.Dispose();
|
||||||
NotesCell.Dispose();
|
NotesCell.Dispose();
|
||||||
|
TotpCell.Dispose();
|
||||||
FolderCell.Dispose();
|
FolderCell.Dispose();
|
||||||
PasswordCell.Button.Clicked -= PasswordButton_Clicked;
|
PasswordCell.Button.Clicked -= PasswordButton_Clicked;
|
||||||
|
TotpCell.Button.Clicked -= TotpButton_Clicked;
|
||||||
GenerateCell.Tapped -= GenerateCell_Tapped;
|
GenerateCell.Tapped -= GenerateCell_Tapped;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -261,6 +276,11 @@ namespace Bit.App.Pages
|
|||||||
PasswordCell.Button.Image = "eye" + (!PasswordCell.Entry.IsPasswordFromToggled ? "_slash" : string.Empty);
|
PasswordCell.Button.Image = "eye" + (!PasswordCell.Entry.IsPasswordFromToggled ? "_slash" : string.Empty);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void TotpButton_Clicked(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
// launch camera
|
||||||
|
}
|
||||||
|
|
||||||
private async void GenerateCell_Tapped(object sender, EventArgs e)
|
private async void GenerateCell_Tapped(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
var page = new ToolsPasswordGeneratorPage((password) =>
|
var page = new ToolsPasswordGeneratorPage((password) =>
|
||||||
|
@ -38,6 +38,7 @@ namespace Bit.App.Pages
|
|||||||
public FormEntryCell UsernameCell { get; private set; }
|
public FormEntryCell UsernameCell { get; private set; }
|
||||||
public FormEntryCell UriCell { get; private set; }
|
public FormEntryCell UriCell { get; private set; }
|
||||||
public FormEntryCell NameCell { get; private set; }
|
public FormEntryCell NameCell { get; private set; }
|
||||||
|
public FormEntryCell TotpCell { get; private set; }
|
||||||
public FormEditorCell NotesCell { get; private set; }
|
public FormEditorCell NotesCell { get; private set; }
|
||||||
public FormPickerCell FolderCell { get; private set; }
|
public FormPickerCell FolderCell { get; private set; }
|
||||||
public ExtendedTextCell GenerateCell { get; private set; }
|
public ExtendedTextCell GenerateCell { get; private set; }
|
||||||
@ -55,7 +56,15 @@ namespace Bit.App.Pages
|
|||||||
NotesCell = new FormEditorCell(height: 180);
|
NotesCell = new FormEditorCell(height: 180);
|
||||||
NotesCell.Editor.Text = login.Notes?.Decrypt(login.OrganizationId);
|
NotesCell.Editor.Text = login.Notes?.Decrypt(login.OrganizationId);
|
||||||
|
|
||||||
PasswordCell = new FormEntryCell(AppResources.Password, isPassword: true, nextElement: NotesCell.Editor,
|
TotpCell = new FormEntryCell(AppResources.AuthenticatorKey, nextElement: NotesCell.Editor,
|
||||||
|
useButton: true);
|
||||||
|
TotpCell.Entry.Text = login.Totp?.Decrypt(login.OrganizationId);
|
||||||
|
TotpCell.Button.Image = "camera";
|
||||||
|
TotpCell.Entry.DisableAutocapitalize = true;
|
||||||
|
TotpCell.Entry.Autocorrect = false;
|
||||||
|
TotpCell.Entry.FontFamily = Helpers.OnPlatform(iOS: "Courier", Android: "monospace", WinPhone: "Courier");
|
||||||
|
|
||||||
|
PasswordCell = new FormEntryCell(AppResources.Password, isPassword: true, nextElement: TotpCell.Entry,
|
||||||
useButton: true);
|
useButton: true);
|
||||||
PasswordCell.Entry.Text = login.Password?.Decrypt(login.OrganizationId);
|
PasswordCell.Entry.Text = login.Password?.Decrypt(login.OrganizationId);
|
||||||
PasswordCell.Button.Image = "eye";
|
PasswordCell.Button.Image = "eye";
|
||||||
@ -122,6 +131,7 @@ namespace Bit.App.Pages
|
|||||||
},
|
},
|
||||||
new TableSection(" ")
|
new TableSection(" ")
|
||||||
{
|
{
|
||||||
|
TotpCell,
|
||||||
FolderCell,
|
FolderCell,
|
||||||
favoriteCell
|
favoriteCell
|
||||||
},
|
},
|
||||||
@ -143,7 +153,7 @@ namespace Bit.App.Pages
|
|||||||
}
|
}
|
||||||
else if(Device.RuntimePlatform == Device.Android)
|
else if(Device.RuntimePlatform == Device.Android)
|
||||||
{
|
{
|
||||||
PasswordCell.Button.WidthRequest = 40;
|
PasswordCell.Button.WidthRequest = TotpCell.Button.WidthRequest = 40;
|
||||||
}
|
}
|
||||||
|
|
||||||
var saveToolBarItem = new ToolbarItem(AppResources.Save, null, async () =>
|
var saveToolBarItem = new ToolbarItem(AppResources.Save, null, async () =>
|
||||||
@ -172,6 +182,7 @@ namespace Bit.App.Pages
|
|||||||
login.Username = UsernameCell.Entry.Text?.Encrypt(login.OrganizationId);
|
login.Username = UsernameCell.Entry.Text?.Encrypt(login.OrganizationId);
|
||||||
login.Password = PasswordCell.Entry.Text?.Encrypt(login.OrganizationId);
|
login.Password = PasswordCell.Entry.Text?.Encrypt(login.OrganizationId);
|
||||||
login.Notes = NotesCell.Editor.Text?.Encrypt(login.OrganizationId);
|
login.Notes = NotesCell.Editor.Text?.Encrypt(login.OrganizationId);
|
||||||
|
login.Totp = TotpCell.Entry.Text?.Encrypt(login.OrganizationId);
|
||||||
login.Favorite = favoriteCell.On;
|
login.Favorite = favoriteCell.On;
|
||||||
|
|
||||||
if(FolderCell.Picker.SelectedIndex > 0)
|
if(FolderCell.Picker.SelectedIndex > 0)
|
||||||
@ -226,12 +237,17 @@ namespace Bit.App.Pages
|
|||||||
UriCell?.InitEvents();
|
UriCell?.InitEvents();
|
||||||
NameCell?.InitEvents();
|
NameCell?.InitEvents();
|
||||||
NotesCell?.InitEvents();
|
NotesCell?.InitEvents();
|
||||||
|
TotpCell?.InitEvents();
|
||||||
FolderCell?.InitEvents();
|
FolderCell?.InitEvents();
|
||||||
|
|
||||||
if(PasswordCell?.Button != null)
|
if(PasswordCell?.Button != null)
|
||||||
{
|
{
|
||||||
PasswordCell.Button.Clicked += PasswordButton_Clicked;
|
PasswordCell.Button.Clicked += PasswordButton_Clicked;
|
||||||
}
|
}
|
||||||
|
if(TotpCell?.Button != null)
|
||||||
|
{
|
||||||
|
TotpCell.Button.Clicked += TotpButton_Clicked;
|
||||||
|
}
|
||||||
if(GenerateCell != null)
|
if(GenerateCell != null)
|
||||||
{
|
{
|
||||||
GenerateCell.Tapped += GenerateCell_Tapped;
|
GenerateCell.Tapped += GenerateCell_Tapped;
|
||||||
@ -246,6 +262,7 @@ namespace Bit.App.Pages
|
|||||||
{
|
{
|
||||||
base.OnDisappearing();
|
base.OnDisappearing();
|
||||||
PasswordCell?.Dispose();
|
PasswordCell?.Dispose();
|
||||||
|
TotpCell?.Dispose();
|
||||||
UsernameCell?.Dispose();
|
UsernameCell?.Dispose();
|
||||||
UriCell?.Dispose();
|
UriCell?.Dispose();
|
||||||
NameCell?.Dispose();
|
NameCell?.Dispose();
|
||||||
@ -256,6 +273,10 @@ namespace Bit.App.Pages
|
|||||||
{
|
{
|
||||||
PasswordCell.Button.Clicked -= PasswordButton_Clicked;
|
PasswordCell.Button.Clicked -= PasswordButton_Clicked;
|
||||||
}
|
}
|
||||||
|
if(TotpCell?.Button != null)
|
||||||
|
{
|
||||||
|
TotpCell.Button.Clicked -= TotpButton_Clicked;
|
||||||
|
}
|
||||||
if(GenerateCell != null)
|
if(GenerateCell != null)
|
||||||
{
|
{
|
||||||
GenerateCell.Tapped -= GenerateCell_Tapped;
|
GenerateCell.Tapped -= GenerateCell_Tapped;
|
||||||
@ -272,6 +293,11 @@ namespace Bit.App.Pages
|
|||||||
PasswordCell.Button.Image = "eye" + (!PasswordCell.Entry.IsPasswordFromToggled ? "_slash" : string.Empty);
|
PasswordCell.Button.Image = "eye" + (!PasswordCell.Entry.IsPasswordFromToggled ? "_slash" : string.Empty);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void TotpButton_Clicked(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
// launch camera
|
||||||
|
}
|
||||||
|
|
||||||
private async void GenerateCell_Tapped(object sender, EventArgs e)
|
private async void GenerateCell_Tapped(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if(!string.IsNullOrWhiteSpace(PasswordCell.Entry.Text)
|
if(!string.IsNullOrWhiteSpace(PasswordCell.Entry.Text)
|
||||||
|
9
src/App/Resources/AppResources.Designer.cs
generated
@ -178,6 +178,15 @@ namespace Bit.App.Resources {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Looks up a localized string similar to Authenticator Key (TOTP).
|
||||||
|
/// </summary>
|
||||||
|
public static string AuthenticatorKey {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("AuthenticatorKey", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized string similar to Auto-fill.
|
/// Looks up a localized string similar to Auto-fill.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -922,4 +922,7 @@
|
|||||||
<value>This attachment is {0} in size. Are you sure you want to download it onto your device?</value>
|
<value>This attachment is {0} in size. Are you sure you want to download it onto your device?</value>
|
||||||
<comment>The placeholder will show the file size of the attachment. Ex "25 MB"</comment>
|
<comment>The placeholder will show the file size of the attachment. Ex "25 MB"</comment>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="AuthenticatorKey" xml:space="preserve">
|
||||||
|
<value>Authenticator Key (TOTP)</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
BIN
src/iOS/Resources/camera.png
Normal file
After Width: | Height: | Size: 478 B |
BIN
src/iOS/Resources/camera@2x.png
Normal file
After Width: | Height: | Size: 802 B |
BIN
src/iOS/Resources/camera@3x.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
@ -734,6 +734,15 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<BundleResource Include="Resources\download%402x.png" />
|
<BundleResource Include="Resources\download%402x.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\camera.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\camera%402x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\camera%403x.png" />
|
||||||
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
<Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
|
||||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
|