diff --git a/PlantBox.Client/PlantBox.Client.Android/MainActivity.cs b/PlantBox.Client/PlantBox.Client.Android/MainActivity.cs
index 3226bad..c9496bf 100644
--- a/PlantBox.Client/PlantBox.Client.Android/MainActivity.cs
+++ b/PlantBox.Client/PlantBox.Client.Android/MainActivity.cs
@@ -6,6 +6,7 @@ using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
+using Acr.UserDialogs;
namespace PlantBox.Client.Droid
{
@@ -20,6 +21,9 @@ namespace PlantBox.Client.Droid
base.OnCreate(savedInstanceState);
global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
LoadApplication(new App());
+
+ // Acr
+ UserDialogs.Init(this);
}
}
}
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj b/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj
index 132e00e..9f3d80b 100644
--- a/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj
+++ b/PlantBox.Client/PlantBox.Client.Android/PlantBox.Client.Android.csproj
@@ -53,6 +53,9 @@
+
+ 7.0.4
+
diff --git a/PlantBox.Client/PlantBox.Client.Android/Resources/Resource.designer.cs b/PlantBox.Client/PlantBox.Client.Android/Resources/Resource.designer.cs
index 4e7a65e..d3c75d0 100644
--- a/PlantBox.Client/PlantBox.Client.Android/Resources/Resource.designer.cs
+++ b/PlantBox.Client/PlantBox.Client.Android/Resources/Resource.designer.cs
@@ -26,6 +26,43 @@ namespace PlantBox.Client.Droid
public static void UpdateIdValues()
{
+ global::AndroidHUD.Resource.Attribute.ahBarColor = global::PlantBox.Client.Droid.Resource.Attribute.ahBarColor;
+ global::AndroidHUD.Resource.Attribute.ahBarLength = global::PlantBox.Client.Droid.Resource.Attribute.ahBarLength;
+ global::AndroidHUD.Resource.Attribute.ahBarWidth = global::PlantBox.Client.Droid.Resource.Attribute.ahBarWidth;
+ global::AndroidHUD.Resource.Attribute.ahCircleColor = global::PlantBox.Client.Droid.Resource.Attribute.ahCircleColor;
+ global::AndroidHUD.Resource.Attribute.ahDelayMillis = global::PlantBox.Client.Droid.Resource.Attribute.ahDelayMillis;
+ global::AndroidHUD.Resource.Attribute.ahRadius = global::PlantBox.Client.Droid.Resource.Attribute.ahRadius;
+ global::AndroidHUD.Resource.Attribute.ahRimColor = global::PlantBox.Client.Droid.Resource.Attribute.ahRimColor;
+ global::AndroidHUD.Resource.Attribute.ahRimWidth = global::PlantBox.Client.Droid.Resource.Attribute.ahRimWidth;
+ global::AndroidHUD.Resource.Attribute.ahSpinSpeed = global::PlantBox.Client.Droid.Resource.Attribute.ahSpinSpeed;
+ global::AndroidHUD.Resource.Attribute.ahText = global::PlantBox.Client.Droid.Resource.Attribute.ahText;
+ global::AndroidHUD.Resource.Attribute.ahTextColor = global::PlantBox.Client.Droid.Resource.Attribute.ahTextColor;
+ global::AndroidHUD.Resource.Attribute.ahTextSize = global::PlantBox.Client.Droid.Resource.Attribute.ahTextSize;
+ global::AndroidHUD.Resource.Drawable.ic_errorstatus = global::PlantBox.Client.Droid.Resource.Drawable.ic_errorstatus;
+ global::AndroidHUD.Resource.Drawable.ic_successstatus = global::PlantBox.Client.Droid.Resource.Drawable.ic_successstatus;
+ global::AndroidHUD.Resource.Drawable.roundedbg = global::PlantBox.Client.Droid.Resource.Drawable.roundedbg;
+ global::AndroidHUD.Resource.Drawable.roundedbgdark = global::PlantBox.Client.Droid.Resource.Drawable.roundedbgdark;
+ global::AndroidHUD.Resource.Id.loadingImage = global::PlantBox.Client.Droid.Resource.Id.loadingImage;
+ global::AndroidHUD.Resource.Id.loadingProgressBar = global::PlantBox.Client.Droid.Resource.Id.loadingProgressBar;
+ global::AndroidHUD.Resource.Id.loadingProgressWheel = global::PlantBox.Client.Droid.Resource.Id.loadingProgressWheel;
+ global::AndroidHUD.Resource.Id.textViewStatus = global::PlantBox.Client.Droid.Resource.Id.textViewStatus;
+ global::AndroidHUD.Resource.Layout.loading = global::PlantBox.Client.Droid.Resource.Layout.loading;
+ global::AndroidHUD.Resource.Layout.loadingimage = global::PlantBox.Client.Droid.Resource.Layout.loadingimage;
+ global::AndroidHUD.Resource.Layout.loadingprogress = global::PlantBox.Client.Droid.Resource.Layout.loadingprogress;
+ global::AndroidHUD.Resource.String.library_name = global::PlantBox.Client.Droid.Resource.String.library_name;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahBarColor = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahBarColor;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahBarLength = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahBarLength;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahBarWidth = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahBarWidth;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahCircleColor = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahCircleColor;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahDelayMillis = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahDelayMillis;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahRadius = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahRadius;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahRimColor = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahRimColor;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahRimWidth = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahRimWidth;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahSpinSpeed = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahSpinSpeed;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahText = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahText;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahTextColor = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahTextColor;
+ global::AndroidHUD.Resource.Styleable.ProgressWheel_ahTextSize = global::PlantBox.Client.Droid.Resource.Styleable.ProgressWheel_ahTextSize;
global::Xamarin.Forms.Platform.Android.Resource.Attribute.actionBarSize = global::PlantBox.Client.Droid.Resource.Attribute.actionBarSize;
}
@@ -211,6 +248,42 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f01008e
public const int activityChooserViewStyle = 2130772110;
+ // aapt resource value: 0x7f010176
+ public const int ahBarColor = 2130772342;
+
+ // aapt resource value: 0x7f01017e
+ public const int ahBarLength = 2130772350;
+
+ // aapt resource value: 0x7f01017d
+ public const int ahBarWidth = 2130772349;
+
+ // aapt resource value: 0x7f01017b
+ public const int ahCircleColor = 2130772347;
+
+ // aapt resource value: 0x7f01017a
+ public const int ahDelayMillis = 2130772346;
+
+ // aapt resource value: 0x7f01017c
+ public const int ahRadius = 2130772348;
+
+ // aapt resource value: 0x7f010177
+ public const int ahRimColor = 2130772343;
+
+ // aapt resource value: 0x7f010178
+ public const int ahRimWidth = 2130772344;
+
+ // aapt resource value: 0x7f010179
+ public const int ahSpinSpeed = 2130772345;
+
+ // aapt resource value: 0x7f010173
+ public const int ahText = 2130772339;
+
+ // aapt resource value: 0x7f010174
+ public const int ahTextColor = 2130772340;
+
+ // aapt resource value: 0x7f010175
+ public const int ahTextSize = 2130772341;
+
// aapt resource value: 0x7f0100b3
public const int alertDialogButtonGroupStyle = 2130772147;
@@ -2342,26 +2415,26 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f020053
public const int avd_hide_password = 2130837587;
- // aapt resource value: 0x7f02012f
- public const int avd_hide_password_1 = 2130837807;
+ // aapt resource value: 0x7f020133
+ public const int avd_hide_password_1 = 2130837811;
- // aapt resource value: 0x7f020130
- public const int avd_hide_password_2 = 2130837808;
+ // aapt resource value: 0x7f020134
+ public const int avd_hide_password_2 = 2130837812;
- // aapt resource value: 0x7f020131
- public const int avd_hide_password_3 = 2130837809;
+ // aapt resource value: 0x7f020135
+ public const int avd_hide_password_3 = 2130837813;
// aapt resource value: 0x7f020054
public const int avd_show_password = 2130837588;
- // aapt resource value: 0x7f020132
- public const int avd_show_password_1 = 2130837810;
+ // aapt resource value: 0x7f020136
+ public const int avd_show_password_1 = 2130837814;
- // aapt resource value: 0x7f020133
- public const int avd_show_password_2 = 2130837811;
+ // aapt resource value: 0x7f020137
+ public const int avd_show_password_2 = 2130837815;
- // aapt resource value: 0x7f020134
- public const int avd_show_password_3 = 2130837812;
+ // aapt resource value: 0x7f020138
+ public const int avd_show_password_3 = 2130837816;
// aapt resource value: 0x7f020055
public const int design_bottom_navigation_item_background = 2130837589;
@@ -2394,628 +2467,640 @@ namespace PlantBox.Client.Droid
public const int ic_dialog_close_light = 2130837598;
// aapt resource value: 0x7f02005f
- public const int ic_group_collapse_00 = 2130837599;
+ public const int ic_errorstatus = 2130837599;
// aapt resource value: 0x7f020060
- public const int ic_group_collapse_01 = 2130837600;
+ public const int ic_group_collapse_00 = 2130837600;
// aapt resource value: 0x7f020061
- public const int ic_group_collapse_02 = 2130837601;
+ public const int ic_group_collapse_01 = 2130837601;
// aapt resource value: 0x7f020062
- public const int ic_group_collapse_03 = 2130837602;
+ public const int ic_group_collapse_02 = 2130837602;
// aapt resource value: 0x7f020063
- public const int ic_group_collapse_04 = 2130837603;
+ public const int ic_group_collapse_03 = 2130837603;
// aapt resource value: 0x7f020064
- public const int ic_group_collapse_05 = 2130837604;
+ public const int ic_group_collapse_04 = 2130837604;
// aapt resource value: 0x7f020065
- public const int ic_group_collapse_06 = 2130837605;
+ public const int ic_group_collapse_05 = 2130837605;
// aapt resource value: 0x7f020066
- public const int ic_group_collapse_07 = 2130837606;
+ public const int ic_group_collapse_06 = 2130837606;
// aapt resource value: 0x7f020067
- public const int ic_group_collapse_08 = 2130837607;
+ public const int ic_group_collapse_07 = 2130837607;
// aapt resource value: 0x7f020068
- public const int ic_group_collapse_09 = 2130837608;
+ public const int ic_group_collapse_08 = 2130837608;
// aapt resource value: 0x7f020069
- public const int ic_group_collapse_10 = 2130837609;
+ public const int ic_group_collapse_09 = 2130837609;
// aapt resource value: 0x7f02006a
- public const int ic_group_collapse_11 = 2130837610;
+ public const int ic_group_collapse_10 = 2130837610;
// aapt resource value: 0x7f02006b
- public const int ic_group_collapse_12 = 2130837611;
+ public const int ic_group_collapse_11 = 2130837611;
// aapt resource value: 0x7f02006c
- public const int ic_group_collapse_13 = 2130837612;
+ public const int ic_group_collapse_12 = 2130837612;
// aapt resource value: 0x7f02006d
- public const int ic_group_collapse_14 = 2130837613;
+ public const int ic_group_collapse_13 = 2130837613;
// aapt resource value: 0x7f02006e
- public const int ic_group_collapse_15 = 2130837614;
+ public const int ic_group_collapse_14 = 2130837614;
// aapt resource value: 0x7f02006f
- public const int ic_group_expand_00 = 2130837615;
+ public const int ic_group_collapse_15 = 2130837615;
// aapt resource value: 0x7f020070
- public const int ic_group_expand_01 = 2130837616;
+ public const int ic_group_expand_00 = 2130837616;
// aapt resource value: 0x7f020071
- public const int ic_group_expand_02 = 2130837617;
+ public const int ic_group_expand_01 = 2130837617;
// aapt resource value: 0x7f020072
- public const int ic_group_expand_03 = 2130837618;
+ public const int ic_group_expand_02 = 2130837618;
// aapt resource value: 0x7f020073
- public const int ic_group_expand_04 = 2130837619;
+ public const int ic_group_expand_03 = 2130837619;
// aapt resource value: 0x7f020074
- public const int ic_group_expand_05 = 2130837620;
+ public const int ic_group_expand_04 = 2130837620;
// aapt resource value: 0x7f020075
- public const int ic_group_expand_06 = 2130837621;
+ public const int ic_group_expand_05 = 2130837621;
// aapt resource value: 0x7f020076
- public const int ic_group_expand_07 = 2130837622;
+ public const int ic_group_expand_06 = 2130837622;
// aapt resource value: 0x7f020077
- public const int ic_group_expand_08 = 2130837623;
+ public const int ic_group_expand_07 = 2130837623;
// aapt resource value: 0x7f020078
- public const int ic_group_expand_09 = 2130837624;
+ public const int ic_group_expand_08 = 2130837624;
// aapt resource value: 0x7f020079
- public const int ic_group_expand_10 = 2130837625;
+ public const int ic_group_expand_09 = 2130837625;
// aapt resource value: 0x7f02007a
- public const int ic_group_expand_11 = 2130837626;
+ public const int ic_group_expand_10 = 2130837626;
// aapt resource value: 0x7f02007b
- public const int ic_group_expand_12 = 2130837627;
+ public const int ic_group_expand_11 = 2130837627;
// aapt resource value: 0x7f02007c
- public const int ic_group_expand_13 = 2130837628;
+ public const int ic_group_expand_12 = 2130837628;
// aapt resource value: 0x7f02007d
- public const int ic_group_expand_14 = 2130837629;
+ public const int ic_group_expand_13 = 2130837629;
// aapt resource value: 0x7f02007e
- public const int ic_group_expand_15 = 2130837630;
+ public const int ic_group_expand_14 = 2130837630;
// aapt resource value: 0x7f02007f
- public const int ic_media_pause_dark = 2130837631;
+ public const int ic_group_expand_15 = 2130837631;
// aapt resource value: 0x7f020080
- public const int ic_media_pause_light = 2130837632;
+ public const int ic_media_pause_dark = 2130837632;
// aapt resource value: 0x7f020081
- public const int ic_media_play_dark = 2130837633;
+ public const int ic_media_pause_light = 2130837633;
// aapt resource value: 0x7f020082
- public const int ic_media_play_light = 2130837634;
+ public const int ic_media_play_dark = 2130837634;
// aapt resource value: 0x7f020083
- public const int ic_media_stop_dark = 2130837635;
+ public const int ic_media_play_light = 2130837635;
// aapt resource value: 0x7f020084
- public const int ic_media_stop_light = 2130837636;
+ public const int ic_media_stop_dark = 2130837636;
// aapt resource value: 0x7f020085
- public const int ic_mr_button_connected_00_dark = 2130837637;
+ public const int ic_media_stop_light = 2130837637;
// aapt resource value: 0x7f020086
- public const int ic_mr_button_connected_00_light = 2130837638;
+ public const int ic_mr_button_connected_00_dark = 2130837638;
// aapt resource value: 0x7f020087
- public const int ic_mr_button_connected_01_dark = 2130837639;
+ public const int ic_mr_button_connected_00_light = 2130837639;
// aapt resource value: 0x7f020088
- public const int ic_mr_button_connected_01_light = 2130837640;
+ public const int ic_mr_button_connected_01_dark = 2130837640;
// aapt resource value: 0x7f020089
- public const int ic_mr_button_connected_02_dark = 2130837641;
+ public const int ic_mr_button_connected_01_light = 2130837641;
// aapt resource value: 0x7f02008a
- public const int ic_mr_button_connected_02_light = 2130837642;
+ public const int ic_mr_button_connected_02_dark = 2130837642;
// aapt resource value: 0x7f02008b
- public const int ic_mr_button_connected_03_dark = 2130837643;
+ public const int ic_mr_button_connected_02_light = 2130837643;
// aapt resource value: 0x7f02008c
- public const int ic_mr_button_connected_03_light = 2130837644;
+ public const int ic_mr_button_connected_03_dark = 2130837644;
// aapt resource value: 0x7f02008d
- public const int ic_mr_button_connected_04_dark = 2130837645;
+ public const int ic_mr_button_connected_03_light = 2130837645;
// aapt resource value: 0x7f02008e
- public const int ic_mr_button_connected_04_light = 2130837646;
+ public const int ic_mr_button_connected_04_dark = 2130837646;
// aapt resource value: 0x7f02008f
- public const int ic_mr_button_connected_05_dark = 2130837647;
+ public const int ic_mr_button_connected_04_light = 2130837647;
// aapt resource value: 0x7f020090
- public const int ic_mr_button_connected_05_light = 2130837648;
+ public const int ic_mr_button_connected_05_dark = 2130837648;
// aapt resource value: 0x7f020091
- public const int ic_mr_button_connected_06_dark = 2130837649;
+ public const int ic_mr_button_connected_05_light = 2130837649;
// aapt resource value: 0x7f020092
- public const int ic_mr_button_connected_06_light = 2130837650;
+ public const int ic_mr_button_connected_06_dark = 2130837650;
// aapt resource value: 0x7f020093
- public const int ic_mr_button_connected_07_dark = 2130837651;
+ public const int ic_mr_button_connected_06_light = 2130837651;
// aapt resource value: 0x7f020094
- public const int ic_mr_button_connected_07_light = 2130837652;
+ public const int ic_mr_button_connected_07_dark = 2130837652;
// aapt resource value: 0x7f020095
- public const int ic_mr_button_connected_08_dark = 2130837653;
+ public const int ic_mr_button_connected_07_light = 2130837653;
// aapt resource value: 0x7f020096
- public const int ic_mr_button_connected_08_light = 2130837654;
+ public const int ic_mr_button_connected_08_dark = 2130837654;
// aapt resource value: 0x7f020097
- public const int ic_mr_button_connected_09_dark = 2130837655;
+ public const int ic_mr_button_connected_08_light = 2130837655;
// aapt resource value: 0x7f020098
- public const int ic_mr_button_connected_09_light = 2130837656;
+ public const int ic_mr_button_connected_09_dark = 2130837656;
// aapt resource value: 0x7f020099
- public const int ic_mr_button_connected_10_dark = 2130837657;
+ public const int ic_mr_button_connected_09_light = 2130837657;
// aapt resource value: 0x7f02009a
- public const int ic_mr_button_connected_10_light = 2130837658;
+ public const int ic_mr_button_connected_10_dark = 2130837658;
// aapt resource value: 0x7f02009b
- public const int ic_mr_button_connected_11_dark = 2130837659;
+ public const int ic_mr_button_connected_10_light = 2130837659;
// aapt resource value: 0x7f02009c
- public const int ic_mr_button_connected_11_light = 2130837660;
+ public const int ic_mr_button_connected_11_dark = 2130837660;
// aapt resource value: 0x7f02009d
- public const int ic_mr_button_connected_12_dark = 2130837661;
+ public const int ic_mr_button_connected_11_light = 2130837661;
// aapt resource value: 0x7f02009e
- public const int ic_mr_button_connected_12_light = 2130837662;
+ public const int ic_mr_button_connected_12_dark = 2130837662;
// aapt resource value: 0x7f02009f
- public const int ic_mr_button_connected_13_dark = 2130837663;
+ public const int ic_mr_button_connected_12_light = 2130837663;
// aapt resource value: 0x7f0200a0
- public const int ic_mr_button_connected_13_light = 2130837664;
+ public const int ic_mr_button_connected_13_dark = 2130837664;
// aapt resource value: 0x7f0200a1
- public const int ic_mr_button_connected_14_dark = 2130837665;
+ public const int ic_mr_button_connected_13_light = 2130837665;
// aapt resource value: 0x7f0200a2
- public const int ic_mr_button_connected_14_light = 2130837666;
+ public const int ic_mr_button_connected_14_dark = 2130837666;
// aapt resource value: 0x7f0200a3
- public const int ic_mr_button_connected_15_dark = 2130837667;
+ public const int ic_mr_button_connected_14_light = 2130837667;
// aapt resource value: 0x7f0200a4
- public const int ic_mr_button_connected_15_light = 2130837668;
+ public const int ic_mr_button_connected_15_dark = 2130837668;
// aapt resource value: 0x7f0200a5
- public const int ic_mr_button_connected_16_dark = 2130837669;
+ public const int ic_mr_button_connected_15_light = 2130837669;
// aapt resource value: 0x7f0200a6
- public const int ic_mr_button_connected_16_light = 2130837670;
+ public const int ic_mr_button_connected_16_dark = 2130837670;
// aapt resource value: 0x7f0200a7
- public const int ic_mr_button_connected_17_dark = 2130837671;
+ public const int ic_mr_button_connected_16_light = 2130837671;
// aapt resource value: 0x7f0200a8
- public const int ic_mr_button_connected_17_light = 2130837672;
+ public const int ic_mr_button_connected_17_dark = 2130837672;
// aapt resource value: 0x7f0200a9
- public const int ic_mr_button_connected_18_dark = 2130837673;
+ public const int ic_mr_button_connected_17_light = 2130837673;
// aapt resource value: 0x7f0200aa
- public const int ic_mr_button_connected_18_light = 2130837674;
+ public const int ic_mr_button_connected_18_dark = 2130837674;
// aapt resource value: 0x7f0200ab
- public const int ic_mr_button_connected_19_dark = 2130837675;
+ public const int ic_mr_button_connected_18_light = 2130837675;
// aapt resource value: 0x7f0200ac
- public const int ic_mr_button_connected_19_light = 2130837676;
+ public const int ic_mr_button_connected_19_dark = 2130837676;
// aapt resource value: 0x7f0200ad
- public const int ic_mr_button_connected_20_dark = 2130837677;
+ public const int ic_mr_button_connected_19_light = 2130837677;
// aapt resource value: 0x7f0200ae
- public const int ic_mr_button_connected_20_light = 2130837678;
+ public const int ic_mr_button_connected_20_dark = 2130837678;
// aapt resource value: 0x7f0200af
- public const int ic_mr_button_connected_21_dark = 2130837679;
+ public const int ic_mr_button_connected_20_light = 2130837679;
// aapt resource value: 0x7f0200b0
- public const int ic_mr_button_connected_21_light = 2130837680;
+ public const int ic_mr_button_connected_21_dark = 2130837680;
// aapt resource value: 0x7f0200b1
- public const int ic_mr_button_connected_22_dark = 2130837681;
+ public const int ic_mr_button_connected_21_light = 2130837681;
// aapt resource value: 0x7f0200b2
- public const int ic_mr_button_connected_22_light = 2130837682;
+ public const int ic_mr_button_connected_22_dark = 2130837682;
// aapt resource value: 0x7f0200b3
- public const int ic_mr_button_connected_23_dark = 2130837683;
+ public const int ic_mr_button_connected_22_light = 2130837683;
// aapt resource value: 0x7f0200b4
- public const int ic_mr_button_connected_23_light = 2130837684;
+ public const int ic_mr_button_connected_23_dark = 2130837684;
// aapt resource value: 0x7f0200b5
- public const int ic_mr_button_connected_24_dark = 2130837685;
+ public const int ic_mr_button_connected_23_light = 2130837685;
// aapt resource value: 0x7f0200b6
- public const int ic_mr_button_connected_24_light = 2130837686;
+ public const int ic_mr_button_connected_24_dark = 2130837686;
// aapt resource value: 0x7f0200b7
- public const int ic_mr_button_connected_25_dark = 2130837687;
+ public const int ic_mr_button_connected_24_light = 2130837687;
// aapt resource value: 0x7f0200b8
- public const int ic_mr_button_connected_25_light = 2130837688;
+ public const int ic_mr_button_connected_25_dark = 2130837688;
// aapt resource value: 0x7f0200b9
- public const int ic_mr_button_connected_26_dark = 2130837689;
+ public const int ic_mr_button_connected_25_light = 2130837689;
// aapt resource value: 0x7f0200ba
- public const int ic_mr_button_connected_26_light = 2130837690;
+ public const int ic_mr_button_connected_26_dark = 2130837690;
// aapt resource value: 0x7f0200bb
- public const int ic_mr_button_connected_27_dark = 2130837691;
+ public const int ic_mr_button_connected_26_light = 2130837691;
// aapt resource value: 0x7f0200bc
- public const int ic_mr_button_connected_27_light = 2130837692;
+ public const int ic_mr_button_connected_27_dark = 2130837692;
// aapt resource value: 0x7f0200bd
- public const int ic_mr_button_connected_28_dark = 2130837693;
+ public const int ic_mr_button_connected_27_light = 2130837693;
// aapt resource value: 0x7f0200be
- public const int ic_mr_button_connected_28_light = 2130837694;
+ public const int ic_mr_button_connected_28_dark = 2130837694;
// aapt resource value: 0x7f0200bf
- public const int ic_mr_button_connected_29_dark = 2130837695;
+ public const int ic_mr_button_connected_28_light = 2130837695;
// aapt resource value: 0x7f0200c0
- public const int ic_mr_button_connected_29_light = 2130837696;
+ public const int ic_mr_button_connected_29_dark = 2130837696;
// aapt resource value: 0x7f0200c1
- public const int ic_mr_button_connected_30_dark = 2130837697;
+ public const int ic_mr_button_connected_29_light = 2130837697;
// aapt resource value: 0x7f0200c2
- public const int ic_mr_button_connected_30_light = 2130837698;
+ public const int ic_mr_button_connected_30_dark = 2130837698;
// aapt resource value: 0x7f0200c3
- public const int ic_mr_button_connecting_00_dark = 2130837699;
+ public const int ic_mr_button_connected_30_light = 2130837699;
// aapt resource value: 0x7f0200c4
- public const int ic_mr_button_connecting_00_light = 2130837700;
+ public const int ic_mr_button_connecting_00_dark = 2130837700;
// aapt resource value: 0x7f0200c5
- public const int ic_mr_button_connecting_01_dark = 2130837701;
+ public const int ic_mr_button_connecting_00_light = 2130837701;
// aapt resource value: 0x7f0200c6
- public const int ic_mr_button_connecting_01_light = 2130837702;
+ public const int ic_mr_button_connecting_01_dark = 2130837702;
// aapt resource value: 0x7f0200c7
- public const int ic_mr_button_connecting_02_dark = 2130837703;
+ public const int ic_mr_button_connecting_01_light = 2130837703;
// aapt resource value: 0x7f0200c8
- public const int ic_mr_button_connecting_02_light = 2130837704;
+ public const int ic_mr_button_connecting_02_dark = 2130837704;
// aapt resource value: 0x7f0200c9
- public const int ic_mr_button_connecting_03_dark = 2130837705;
+ public const int ic_mr_button_connecting_02_light = 2130837705;
// aapt resource value: 0x7f0200ca
- public const int ic_mr_button_connecting_03_light = 2130837706;
+ public const int ic_mr_button_connecting_03_dark = 2130837706;
// aapt resource value: 0x7f0200cb
- public const int ic_mr_button_connecting_04_dark = 2130837707;
+ public const int ic_mr_button_connecting_03_light = 2130837707;
// aapt resource value: 0x7f0200cc
- public const int ic_mr_button_connecting_04_light = 2130837708;
+ public const int ic_mr_button_connecting_04_dark = 2130837708;
// aapt resource value: 0x7f0200cd
- public const int ic_mr_button_connecting_05_dark = 2130837709;
+ public const int ic_mr_button_connecting_04_light = 2130837709;
// aapt resource value: 0x7f0200ce
- public const int ic_mr_button_connecting_05_light = 2130837710;
+ public const int ic_mr_button_connecting_05_dark = 2130837710;
// aapt resource value: 0x7f0200cf
- public const int ic_mr_button_connecting_06_dark = 2130837711;
+ public const int ic_mr_button_connecting_05_light = 2130837711;
// aapt resource value: 0x7f0200d0
- public const int ic_mr_button_connecting_06_light = 2130837712;
+ public const int ic_mr_button_connecting_06_dark = 2130837712;
// aapt resource value: 0x7f0200d1
- public const int ic_mr_button_connecting_07_dark = 2130837713;
+ public const int ic_mr_button_connecting_06_light = 2130837713;
// aapt resource value: 0x7f0200d2
- public const int ic_mr_button_connecting_07_light = 2130837714;
+ public const int ic_mr_button_connecting_07_dark = 2130837714;
// aapt resource value: 0x7f0200d3
- public const int ic_mr_button_connecting_08_dark = 2130837715;
+ public const int ic_mr_button_connecting_07_light = 2130837715;
// aapt resource value: 0x7f0200d4
- public const int ic_mr_button_connecting_08_light = 2130837716;
+ public const int ic_mr_button_connecting_08_dark = 2130837716;
// aapt resource value: 0x7f0200d5
- public const int ic_mr_button_connecting_09_dark = 2130837717;
+ public const int ic_mr_button_connecting_08_light = 2130837717;
// aapt resource value: 0x7f0200d6
- public const int ic_mr_button_connecting_09_light = 2130837718;
+ public const int ic_mr_button_connecting_09_dark = 2130837718;
// aapt resource value: 0x7f0200d7
- public const int ic_mr_button_connecting_10_dark = 2130837719;
+ public const int ic_mr_button_connecting_09_light = 2130837719;
// aapt resource value: 0x7f0200d8
- public const int ic_mr_button_connecting_10_light = 2130837720;
+ public const int ic_mr_button_connecting_10_dark = 2130837720;
// aapt resource value: 0x7f0200d9
- public const int ic_mr_button_connecting_11_dark = 2130837721;
+ public const int ic_mr_button_connecting_10_light = 2130837721;
// aapt resource value: 0x7f0200da
- public const int ic_mr_button_connecting_11_light = 2130837722;
+ public const int ic_mr_button_connecting_11_dark = 2130837722;
// aapt resource value: 0x7f0200db
- public const int ic_mr_button_connecting_12_dark = 2130837723;
+ public const int ic_mr_button_connecting_11_light = 2130837723;
// aapt resource value: 0x7f0200dc
- public const int ic_mr_button_connecting_12_light = 2130837724;
+ public const int ic_mr_button_connecting_12_dark = 2130837724;
// aapt resource value: 0x7f0200dd
- public const int ic_mr_button_connecting_13_dark = 2130837725;
+ public const int ic_mr_button_connecting_12_light = 2130837725;
// aapt resource value: 0x7f0200de
- public const int ic_mr_button_connecting_13_light = 2130837726;
+ public const int ic_mr_button_connecting_13_dark = 2130837726;
// aapt resource value: 0x7f0200df
- public const int ic_mr_button_connecting_14_dark = 2130837727;
+ public const int ic_mr_button_connecting_13_light = 2130837727;
// aapt resource value: 0x7f0200e0
- public const int ic_mr_button_connecting_14_light = 2130837728;
+ public const int ic_mr_button_connecting_14_dark = 2130837728;
// aapt resource value: 0x7f0200e1
- public const int ic_mr_button_connecting_15_dark = 2130837729;
+ public const int ic_mr_button_connecting_14_light = 2130837729;
// aapt resource value: 0x7f0200e2
- public const int ic_mr_button_connecting_15_light = 2130837730;
+ public const int ic_mr_button_connecting_15_dark = 2130837730;
// aapt resource value: 0x7f0200e3
- public const int ic_mr_button_connecting_16_dark = 2130837731;
+ public const int ic_mr_button_connecting_15_light = 2130837731;
// aapt resource value: 0x7f0200e4
- public const int ic_mr_button_connecting_16_light = 2130837732;
+ public const int ic_mr_button_connecting_16_dark = 2130837732;
// aapt resource value: 0x7f0200e5
- public const int ic_mr_button_connecting_17_dark = 2130837733;
+ public const int ic_mr_button_connecting_16_light = 2130837733;
// aapt resource value: 0x7f0200e6
- public const int ic_mr_button_connecting_17_light = 2130837734;
+ public const int ic_mr_button_connecting_17_dark = 2130837734;
// aapt resource value: 0x7f0200e7
- public const int ic_mr_button_connecting_18_dark = 2130837735;
+ public const int ic_mr_button_connecting_17_light = 2130837735;
// aapt resource value: 0x7f0200e8
- public const int ic_mr_button_connecting_18_light = 2130837736;
+ public const int ic_mr_button_connecting_18_dark = 2130837736;
// aapt resource value: 0x7f0200e9
- public const int ic_mr_button_connecting_19_dark = 2130837737;
+ public const int ic_mr_button_connecting_18_light = 2130837737;
// aapt resource value: 0x7f0200ea
- public const int ic_mr_button_connecting_19_light = 2130837738;
+ public const int ic_mr_button_connecting_19_dark = 2130837738;
// aapt resource value: 0x7f0200eb
- public const int ic_mr_button_connecting_20_dark = 2130837739;
+ public const int ic_mr_button_connecting_19_light = 2130837739;
// aapt resource value: 0x7f0200ec
- public const int ic_mr_button_connecting_20_light = 2130837740;
+ public const int ic_mr_button_connecting_20_dark = 2130837740;
// aapt resource value: 0x7f0200ed
- public const int ic_mr_button_connecting_21_dark = 2130837741;
+ public const int ic_mr_button_connecting_20_light = 2130837741;
// aapt resource value: 0x7f0200ee
- public const int ic_mr_button_connecting_21_light = 2130837742;
+ public const int ic_mr_button_connecting_21_dark = 2130837742;
// aapt resource value: 0x7f0200ef
- public const int ic_mr_button_connecting_22_dark = 2130837743;
+ public const int ic_mr_button_connecting_21_light = 2130837743;
// aapt resource value: 0x7f0200f0
- public const int ic_mr_button_connecting_22_light = 2130837744;
+ public const int ic_mr_button_connecting_22_dark = 2130837744;
// aapt resource value: 0x7f0200f1
- public const int ic_mr_button_connecting_23_dark = 2130837745;
+ public const int ic_mr_button_connecting_22_light = 2130837745;
// aapt resource value: 0x7f0200f2
- public const int ic_mr_button_connecting_23_light = 2130837746;
+ public const int ic_mr_button_connecting_23_dark = 2130837746;
// aapt resource value: 0x7f0200f3
- public const int ic_mr_button_connecting_24_dark = 2130837747;
+ public const int ic_mr_button_connecting_23_light = 2130837747;
// aapt resource value: 0x7f0200f4
- public const int ic_mr_button_connecting_24_light = 2130837748;
+ public const int ic_mr_button_connecting_24_dark = 2130837748;
// aapt resource value: 0x7f0200f5
- public const int ic_mr_button_connecting_25_dark = 2130837749;
+ public const int ic_mr_button_connecting_24_light = 2130837749;
// aapt resource value: 0x7f0200f6
- public const int ic_mr_button_connecting_25_light = 2130837750;
+ public const int ic_mr_button_connecting_25_dark = 2130837750;
// aapt resource value: 0x7f0200f7
- public const int ic_mr_button_connecting_26_dark = 2130837751;
+ public const int ic_mr_button_connecting_25_light = 2130837751;
// aapt resource value: 0x7f0200f8
- public const int ic_mr_button_connecting_26_light = 2130837752;
+ public const int ic_mr_button_connecting_26_dark = 2130837752;
// aapt resource value: 0x7f0200f9
- public const int ic_mr_button_connecting_27_dark = 2130837753;
+ public const int ic_mr_button_connecting_26_light = 2130837753;
// aapt resource value: 0x7f0200fa
- public const int ic_mr_button_connecting_27_light = 2130837754;
+ public const int ic_mr_button_connecting_27_dark = 2130837754;
// aapt resource value: 0x7f0200fb
- public const int ic_mr_button_connecting_28_dark = 2130837755;
+ public const int ic_mr_button_connecting_27_light = 2130837755;
// aapt resource value: 0x7f0200fc
- public const int ic_mr_button_connecting_28_light = 2130837756;
+ public const int ic_mr_button_connecting_28_dark = 2130837756;
// aapt resource value: 0x7f0200fd
- public const int ic_mr_button_connecting_29_dark = 2130837757;
+ public const int ic_mr_button_connecting_28_light = 2130837757;
// aapt resource value: 0x7f0200fe
- public const int ic_mr_button_connecting_29_light = 2130837758;
+ public const int ic_mr_button_connecting_29_dark = 2130837758;
// aapt resource value: 0x7f0200ff
- public const int ic_mr_button_connecting_30_dark = 2130837759;
+ public const int ic_mr_button_connecting_29_light = 2130837759;
// aapt resource value: 0x7f020100
- public const int ic_mr_button_connecting_30_light = 2130837760;
+ public const int ic_mr_button_connecting_30_dark = 2130837760;
// aapt resource value: 0x7f020101
- public const int ic_mr_button_disabled_dark = 2130837761;
+ public const int ic_mr_button_connecting_30_light = 2130837761;
// aapt resource value: 0x7f020102
- public const int ic_mr_button_disabled_light = 2130837762;
+ public const int ic_mr_button_disabled_dark = 2130837762;
// aapt resource value: 0x7f020103
- public const int ic_mr_button_disconnected_dark = 2130837763;
+ public const int ic_mr_button_disabled_light = 2130837763;
// aapt resource value: 0x7f020104
- public const int ic_mr_button_disconnected_light = 2130837764;
+ public const int ic_mr_button_disconnected_dark = 2130837764;
// aapt resource value: 0x7f020105
- public const int ic_mr_button_grey = 2130837765;
+ public const int ic_mr_button_disconnected_light = 2130837765;
// aapt resource value: 0x7f020106
- public const int ic_vol_type_speaker_dark = 2130837766;
+ public const int ic_mr_button_grey = 2130837766;
// aapt resource value: 0x7f020107
- public const int ic_vol_type_speaker_group_dark = 2130837767;
+ public const int ic_successstatus = 2130837767;
// aapt resource value: 0x7f020108
- public const int ic_vol_type_speaker_group_light = 2130837768;
+ public const int ic_vol_type_speaker_dark = 2130837768;
// aapt resource value: 0x7f020109
- public const int ic_vol_type_speaker_light = 2130837769;
+ public const int ic_vol_type_speaker_group_dark = 2130837769;
// aapt resource value: 0x7f02010a
- public const int ic_vol_type_tv_dark = 2130837770;
+ public const int ic_vol_type_speaker_group_light = 2130837770;
// aapt resource value: 0x7f02010b
- public const int ic_vol_type_tv_light = 2130837771;
+ public const int ic_vol_type_speaker_light = 2130837771;
// aapt resource value: 0x7f02010c
- public const int mr_button_connected_dark = 2130837772;
+ public const int ic_vol_type_tv_dark = 2130837772;
// aapt resource value: 0x7f02010d
- public const int mr_button_connected_light = 2130837773;
+ public const int ic_vol_type_tv_light = 2130837773;
// aapt resource value: 0x7f02010e
- public const int mr_button_connecting_dark = 2130837774;
+ public const int mr_button_connected_dark = 2130837774;
// aapt resource value: 0x7f02010f
- public const int mr_button_connecting_light = 2130837775;
+ public const int mr_button_connected_light = 2130837775;
// aapt resource value: 0x7f020110
- public const int mr_button_dark = 2130837776;
+ public const int mr_button_connecting_dark = 2130837776;
// aapt resource value: 0x7f020111
- public const int mr_button_light = 2130837777;
+ public const int mr_button_connecting_light = 2130837777;
// aapt resource value: 0x7f020112
- public const int mr_dialog_close_dark = 2130837778;
+ public const int mr_button_dark = 2130837778;
// aapt resource value: 0x7f020113
- public const int mr_dialog_close_light = 2130837779;
+ public const int mr_button_light = 2130837779;
// aapt resource value: 0x7f020114
- public const int mr_dialog_material_background_dark = 2130837780;
+ public const int mr_dialog_close_dark = 2130837780;
// aapt resource value: 0x7f020115
- public const int mr_dialog_material_background_light = 2130837781;
+ public const int mr_dialog_close_light = 2130837781;
// aapt resource value: 0x7f020116
- public const int mr_group_collapse = 2130837782;
+ public const int mr_dialog_material_background_dark = 2130837782;
// aapt resource value: 0x7f020117
- public const int mr_group_expand = 2130837783;
+ public const int mr_dialog_material_background_light = 2130837783;
// aapt resource value: 0x7f020118
- public const int mr_media_pause_dark = 2130837784;
+ public const int mr_group_collapse = 2130837784;
// aapt resource value: 0x7f020119
- public const int mr_media_pause_light = 2130837785;
+ public const int mr_group_expand = 2130837785;
// aapt resource value: 0x7f02011a
- public const int mr_media_play_dark = 2130837786;
+ public const int mr_media_pause_dark = 2130837786;
// aapt resource value: 0x7f02011b
- public const int mr_media_play_light = 2130837787;
+ public const int mr_media_pause_light = 2130837787;
// aapt resource value: 0x7f02011c
- public const int mr_media_stop_dark = 2130837788;
+ public const int mr_media_play_dark = 2130837788;
// aapt resource value: 0x7f02011d
- public const int mr_media_stop_light = 2130837789;
+ public const int mr_media_play_light = 2130837789;
// aapt resource value: 0x7f02011e
- public const int mr_vol_type_audiotrack_dark = 2130837790;
+ public const int mr_media_stop_dark = 2130837790;
// aapt resource value: 0x7f02011f
- public const int mr_vol_type_audiotrack_light = 2130837791;
+ public const int mr_media_stop_light = 2130837791;
// aapt resource value: 0x7f020120
- public const int navigation_empty_icon = 2130837792;
+ public const int mr_vol_type_audiotrack_dark = 2130837792;
// aapt resource value: 0x7f020121
- public const int notification_action_background = 2130837793;
+ public const int mr_vol_type_audiotrack_light = 2130837793;
// aapt resource value: 0x7f020122
- public const int notification_bg = 2130837794;
+ public const int navigation_empty_icon = 2130837794;
// aapt resource value: 0x7f020123
- public const int notification_bg_low = 2130837795;
+ public const int notification_action_background = 2130837795;
// aapt resource value: 0x7f020124
- public const int notification_bg_low_normal = 2130837796;
+ public const int notification_bg = 2130837796;
// aapt resource value: 0x7f020125
- public const int notification_bg_low_pressed = 2130837797;
+ public const int notification_bg_low = 2130837797;
// aapt resource value: 0x7f020126
- public const int notification_bg_normal = 2130837798;
+ public const int notification_bg_low_normal = 2130837798;
// aapt resource value: 0x7f020127
- public const int notification_bg_normal_pressed = 2130837799;
+ public const int notification_bg_low_pressed = 2130837799;
// aapt resource value: 0x7f020128
- public const int notification_icon_background = 2130837800;
-
- // aapt resource value: 0x7f02012d
- public const int notification_template_icon_bg = 2130837805;
-
- // aapt resource value: 0x7f02012e
- public const int notification_template_icon_low_bg = 2130837806;
+ public const int notification_bg_normal = 2130837800;
// aapt resource value: 0x7f020129
- public const int notification_tile_bg = 2130837801;
+ public const int notification_bg_normal_pressed = 2130837801;
// aapt resource value: 0x7f02012a
- public const int notify_panel_notification_icon_bg = 2130837802;
+ public const int notification_icon_background = 2130837802;
+
+ // aapt resource value: 0x7f020131
+ public const int notification_template_icon_bg = 2130837809;
+
+ // aapt resource value: 0x7f020132
+ public const int notification_template_icon_low_bg = 2130837810;
// aapt resource value: 0x7f02012b
- public const int tooltip_frame_dark = 2130837803;
+ public const int notification_tile_bg = 2130837803;
// aapt resource value: 0x7f02012c
- public const int tooltip_frame_light = 2130837804;
+ public const int notify_panel_notification_icon_bg = 2130837804;
+
+ // aapt resource value: 0x7f02012d
+ public const int roundedbg = 2130837805;
+
+ // aapt resource value: 0x7f02012e
+ public const int roundedbgdark = 2130837806;
+
+ // aapt resource value: 0x7f02012f
+ public const int tooltip_frame_dark = 2130837807;
+
+ // aapt resource value: 0x7f020130
+ public const int tooltip_frame_light = 2130837808;
static Drawable()
{
@@ -3048,8 +3133,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090037
public const int SYM = 2131296311;
- // aapt resource value: 0x7f0900b6
- public const int action0 = 2131296438;
+ // aapt resource value: 0x7f0900ba
+ public const int action0 = 2131296442;
// aapt resource value: 0x7f09007c
public const int action_bar = 2131296380;
@@ -3072,17 +3157,17 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f09005a
public const int action_bar_title = 2131296346;
- // aapt resource value: 0x7f0900b3
- public const int action_container = 2131296435;
+ // aapt resource value: 0x7f0900b7
+ public const int action_container = 2131296439;
// aapt resource value: 0x7f09007d
public const int action_context_bar = 2131296381;
- // aapt resource value: 0x7f0900ba
- public const int action_divider = 2131296442;
+ // aapt resource value: 0x7f0900be
+ public const int action_divider = 2131296446;
- // aapt resource value: 0x7f0900b4
- public const int action_image = 2131296436;
+ // aapt resource value: 0x7f0900b8
+ public const int action_image = 2131296440;
// aapt resource value: 0x7f090003
public const int action_menu_divider = 2131296259;
@@ -3099,11 +3184,11 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f09005c
public const int action_mode_close_button = 2131296348;
- // aapt resource value: 0x7f0900b5
- public const int action_text = 2131296437;
+ // aapt resource value: 0x7f0900b9
+ public const int action_text = 2131296441;
- // aapt resource value: 0x7f0900c3
- public const int actions = 2131296451;
+ // aapt resource value: 0x7f0900c7
+ public const int actions = 2131296455;
// aapt resource value: 0x7f09005d
public const int activity_chooser_view_content = 2131296349;
@@ -3138,8 +3223,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090063
public const int buttonPanel = 2131296355;
- // aapt resource value: 0x7f0900b7
- public const int cancel_action = 2131296439;
+ // aapt resource value: 0x7f0900bb
+ public const int cancel_action = 2131296443;
// aapt resource value: 0x7f090045
public const int center = 2131296325;
@@ -3153,8 +3238,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090073
public const int checkbox = 2131296371;
- // aapt resource value: 0x7f0900bf
- public const int chronometer = 2131296447;
+ // aapt resource value: 0x7f0900c3
+ public const int chronometer = 2131296451;
// aapt resource value: 0x7f09004e
public const int clip_horizontal = 2131296334;
@@ -3210,8 +3295,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090030
public const int end = 2131296304;
- // aapt resource value: 0x7f0900c5
- public const int end_padder = 2131296453;
+ // aapt resource value: 0x7f0900c9
+ public const int end_padder = 2131296457;
// aapt resource value: 0x7f09003f
public const int enterAlways = 2131296319;
@@ -3255,8 +3340,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090062
public const int icon = 2131296354;
- // aapt resource value: 0x7f0900c4
- public const int icon_group = 2131296452;
+ // aapt resource value: 0x7f0900c8
+ public const int icon_group = 2131296456;
// aapt resource value: 0x7f09003a
public const int ifRoom = 2131296314;
@@ -3264,8 +3349,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f09005f
public const int image = 2131296351;
- // aapt resource value: 0x7f0900c0
- public const int info = 2131296448;
+ // aapt resource value: 0x7f0900c4
+ public const int info = 2131296452;
// aapt resource value: 0x7f090059
public const int italic = 2131296345;
@@ -3291,14 +3376,23 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090061
public const int list_item = 2131296353;
- // aapt resource value: 0x7f0900ca
- public const int masked = 2131296458;
+ // aapt resource value: 0x7f09009b
+ public const int loadingImage = 2131296411;
- // aapt resource value: 0x7f0900b9
- public const int media_actions = 2131296441;
+ // aapt resource value: 0x7f090099
+ public const int loadingProgressBar = 2131296409;
- // aapt resource value: 0x7f0900c8
- public const int message = 2131296456;
+ // aapt resource value: 0x7f09009c
+ public const int loadingProgressWheel = 2131296412;
+
+ // aapt resource value: 0x7f0900ce
+ public const int masked = 2131296462;
+
+ // aapt resource value: 0x7f0900bd
+ public const int media_actions = 2131296445;
+
+ // aapt resource value: 0x7f0900cc
+ public const int message = 2131296460;
// aapt resource value: 0x7f090031
public const int middle = 2131296305;
@@ -3306,80 +3400,80 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090053
public const int mini = 2131296339;
- // aapt resource value: 0x7f0900a5
- public const int mr_art = 2131296421;
-
- // aapt resource value: 0x7f09009a
- public const int mr_chooser_list = 2131296410;
-
- // aapt resource value: 0x7f09009d
- public const int mr_chooser_route_desc = 2131296413;
-
- // aapt resource value: 0x7f09009b
- public const int mr_chooser_route_icon = 2131296411;
-
- // aapt resource value: 0x7f09009c
- public const int mr_chooser_route_name = 2131296412;
-
- // aapt resource value: 0x7f090099
- public const int mr_chooser_title = 2131296409;
-
- // aapt resource value: 0x7f0900a2
- public const int mr_close = 2131296418;
-
- // aapt resource value: 0x7f0900a8
- public const int mr_control_divider = 2131296424;
-
- // aapt resource value: 0x7f0900ae
- public const int mr_control_playback_ctrl = 2131296430;
-
- // aapt resource value: 0x7f0900b1
- public const int mr_control_subtitle = 2131296433;
-
- // aapt resource value: 0x7f0900b0
- public const int mr_control_title = 2131296432;
-
- // aapt resource value: 0x7f0900af
- public const int mr_control_title_container = 2131296431;
-
- // aapt resource value: 0x7f0900a3
- public const int mr_custom_control = 2131296419;
-
- // aapt resource value: 0x7f0900a4
- public const int mr_default_control = 2131296420;
-
- // aapt resource value: 0x7f09009f
- public const int mr_dialog_area = 2131296415;
+ // aapt resource value: 0x7f0900a9
+ public const int mr_art = 2131296425;
// aapt resource value: 0x7f09009e
- public const int mr_expandable_area = 2131296414;
-
- // aapt resource value: 0x7f0900b2
- public const int mr_group_expand_collapse = 2131296434;
-
- // aapt resource value: 0x7f0900a6
- public const int mr_media_main_control = 2131296422;
+ public const int mr_chooser_list = 2131296414;
// aapt resource value: 0x7f0900a1
- public const int mr_name = 2131296417;
+ public const int mr_chooser_route_desc = 2131296417;
- // aapt resource value: 0x7f0900a7
- public const int mr_playback_control = 2131296423;
+ // aapt resource value: 0x7f09009f
+ public const int mr_chooser_route_icon = 2131296415;
// aapt resource value: 0x7f0900a0
- public const int mr_title_bar = 2131296416;
+ public const int mr_chooser_route_name = 2131296416;
- // aapt resource value: 0x7f0900a9
- public const int mr_volume_control = 2131296425;
+ // aapt resource value: 0x7f09009d
+ public const int mr_chooser_title = 2131296413;
- // aapt resource value: 0x7f0900aa
- public const int mr_volume_group_list = 2131296426;
+ // aapt resource value: 0x7f0900a6
+ public const int mr_close = 2131296422;
// aapt resource value: 0x7f0900ac
- public const int mr_volume_item_icon = 2131296428;
+ public const int mr_control_divider = 2131296428;
+
+ // aapt resource value: 0x7f0900b2
+ public const int mr_control_playback_ctrl = 2131296434;
+
+ // aapt resource value: 0x7f0900b5
+ public const int mr_control_subtitle = 2131296437;
+
+ // aapt resource value: 0x7f0900b4
+ public const int mr_control_title = 2131296436;
+
+ // aapt resource value: 0x7f0900b3
+ public const int mr_control_title_container = 2131296435;
+
+ // aapt resource value: 0x7f0900a7
+ public const int mr_custom_control = 2131296423;
+
+ // aapt resource value: 0x7f0900a8
+ public const int mr_default_control = 2131296424;
+
+ // aapt resource value: 0x7f0900a3
+ public const int mr_dialog_area = 2131296419;
+
+ // aapt resource value: 0x7f0900a2
+ public const int mr_expandable_area = 2131296418;
+
+ // aapt resource value: 0x7f0900b6
+ public const int mr_group_expand_collapse = 2131296438;
+
+ // aapt resource value: 0x7f0900aa
+ public const int mr_media_main_control = 2131296426;
+
+ // aapt resource value: 0x7f0900a5
+ public const int mr_name = 2131296421;
+
+ // aapt resource value: 0x7f0900ab
+ public const int mr_playback_control = 2131296427;
+
+ // aapt resource value: 0x7f0900a4
+ public const int mr_title_bar = 2131296420;
// aapt resource value: 0x7f0900ad
- public const int mr_volume_slider = 2131296429;
+ public const int mr_volume_control = 2131296429;
+
+ // aapt resource value: 0x7f0900ae
+ public const int mr_volume_group_list = 2131296430;
+
+ // aapt resource value: 0x7f0900b0
+ public const int mr_volume_item_icon = 2131296432;
+
+ // aapt resource value: 0x7f0900b1
+ public const int mr_volume_slider = 2131296433;
// aapt resource value: 0x7f090028
public const int multiply = 2131296296;
@@ -3396,14 +3490,14 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f09001e
public const int normal = 2131296286;
- // aapt resource value: 0x7f0900c2
- public const int notification_background = 2131296450;
+ // aapt resource value: 0x7f0900c6
+ public const int notification_background = 2131296454;
- // aapt resource value: 0x7f0900bc
- public const int notification_main_column = 2131296444;
+ // aapt resource value: 0x7f0900c0
+ public const int notification_main_column = 2131296448;
- // aapt resource value: 0x7f0900bb
- public const int notification_main_column_container = 2131296443;
+ // aapt resource value: 0x7f0900bf
+ public const int notification_main_column_container = 2131296447;
// aapt resource value: 0x7f09004c
public const int parallax = 2131296332;
@@ -3429,11 +3523,11 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f09004a
public const int right = 2131296330;
- // aapt resource value: 0x7f0900c1
- public const int right_icon = 2131296449;
+ // aapt resource value: 0x7f0900c5
+ public const int right_icon = 2131296453;
- // aapt resource value: 0x7f0900bd
- public const int right_side = 2131296445;
+ // aapt resource value: 0x7f0900c1
+ public const int right_side = 2131296449;
// aapt resource value: 0x7f09000c
public const int save_image_matrix = 2131296268;
@@ -3507,8 +3601,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090025
public const int showTitle = 2131296293;
- // aapt resource value: 0x7f0900c6
- public const int sliding_tabs = 2131296454;
+ // aapt resource value: 0x7f0900ca
+ public const int sliding_tabs = 2131296458;
// aapt resource value: 0x7f09008b
public const int smallLabel = 2131296395;
@@ -3540,8 +3634,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f09004b
public const int start = 2131296331;
- // aapt resource value: 0x7f0900b8
- public const int status_bar_latest_event_content = 2131296440;
+ // aapt resource value: 0x7f0900bc
+ public const int status_bar_latest_event_content = 2131296444;
// aapt resource value: 0x7f090076
public const int submenuarrow = 2131296374;
@@ -3567,6 +3661,9 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090069
public const int textSpacerNoTitle = 2131296361;
+ // aapt resource value: 0x7f09009a
+ public const int textViewStatus = 2131296410;
+
// aapt resource value: 0x7f090098
public const int text_input_password_toggle = 2131296408;
@@ -3576,8 +3673,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090015
public const int textinput_error = 2131296277;
- // aapt resource value: 0x7f0900be
- public const int time = 2131296446;
+ // aapt resource value: 0x7f0900c2
+ public const int time = 2131296450;
// aapt resource value: 0x7f09001c
public const int title = 2131296284;
@@ -3588,8 +3685,8 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f09006f
public const int title_template = 2131296367;
- // aapt resource value: 0x7f0900c7
- public const int toolbar = 2131296455;
+ // aapt resource value: 0x7f0900cb
+ public const int toolbar = 2131296459;
// aapt resource value: 0x7f09003e
public const int top = 2131296318;
@@ -3627,11 +3724,11 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f090016
public const int view_offset_helper = 2131296278;
- // aapt resource value: 0x7f0900c9
- public const int visible = 2131296457;
+ // aapt resource value: 0x7f0900cd
+ public const int visible = 2131296461;
- // aapt resource value: 0x7f0900ab
- public const int volume_item_container = 2131296427;
+ // aapt resource value: 0x7f0900af
+ public const int volume_item_container = 2131296431;
// aapt resource value: 0x7f09003c
public const int withText = 2131296316;
@@ -3844,88 +3941,97 @@ namespace PlantBox.Client.Droid
public const int design_text_input_password_icon = 2130968615;
// aapt resource value: 0x7f040028
- public const int mr_chooser_dialog = 2130968616;
+ public const int loading = 2130968616;
// aapt resource value: 0x7f040029
- public const int mr_chooser_list_item = 2130968617;
+ public const int loadingimage = 2130968617;
// aapt resource value: 0x7f04002a
- public const int mr_controller_material_dialog_b = 2130968618;
+ public const int loadingprogress = 2130968618;
// aapt resource value: 0x7f04002b
- public const int mr_controller_volume_item = 2130968619;
+ public const int mr_chooser_dialog = 2130968619;
// aapt resource value: 0x7f04002c
- public const int mr_playback_control = 2130968620;
+ public const int mr_chooser_list_item = 2130968620;
// aapt resource value: 0x7f04002d
- public const int mr_volume_control = 2130968621;
+ public const int mr_controller_material_dialog_b = 2130968621;
// aapt resource value: 0x7f04002e
- public const int notification_action = 2130968622;
+ public const int mr_controller_volume_item = 2130968622;
// aapt resource value: 0x7f04002f
- public const int notification_action_tombstone = 2130968623;
+ public const int mr_playback_control = 2130968623;
// aapt resource value: 0x7f040030
- public const int notification_media_action = 2130968624;
+ public const int mr_volume_control = 2130968624;
// aapt resource value: 0x7f040031
- public const int notification_media_cancel_action = 2130968625;
+ public const int notification_action = 2130968625;
// aapt resource value: 0x7f040032
- public const int notification_template_big_media = 2130968626;
+ public const int notification_action_tombstone = 2130968626;
// aapt resource value: 0x7f040033
- public const int notification_template_big_media_custom = 2130968627;
+ public const int notification_media_action = 2130968627;
// aapt resource value: 0x7f040034
- public const int notification_template_big_media_narrow = 2130968628;
+ public const int notification_media_cancel_action = 2130968628;
// aapt resource value: 0x7f040035
- public const int notification_template_big_media_narrow_custom = 2130968629;
+ public const int notification_template_big_media = 2130968629;
// aapt resource value: 0x7f040036
- public const int notification_template_custom_big = 2130968630;
+ public const int notification_template_big_media_custom = 2130968630;
// aapt resource value: 0x7f040037
- public const int notification_template_icon_group = 2130968631;
+ public const int notification_template_big_media_narrow = 2130968631;
// aapt resource value: 0x7f040038
- public const int notification_template_lines_media = 2130968632;
+ public const int notification_template_big_media_narrow_custom = 2130968632;
// aapt resource value: 0x7f040039
- public const int notification_template_media = 2130968633;
+ public const int notification_template_custom_big = 2130968633;
// aapt resource value: 0x7f04003a
- public const int notification_template_media_custom = 2130968634;
+ public const int notification_template_icon_group = 2130968634;
// aapt resource value: 0x7f04003b
- public const int notification_template_part_chronometer = 2130968635;
+ public const int notification_template_lines_media = 2130968635;
// aapt resource value: 0x7f04003c
- public const int notification_template_part_time = 2130968636;
+ public const int notification_template_media = 2130968636;
// aapt resource value: 0x7f04003d
- public const int select_dialog_item_material = 2130968637;
+ public const int notification_template_media_custom = 2130968637;
// aapt resource value: 0x7f04003e
- public const int select_dialog_multichoice_material = 2130968638;
+ public const int notification_template_part_chronometer = 2130968638;
// aapt resource value: 0x7f04003f
- public const int select_dialog_singlechoice_material = 2130968639;
+ public const int notification_template_part_time = 2130968639;
// aapt resource value: 0x7f040040
- public const int support_simple_spinner_dropdown_item = 2130968640;
+ public const int select_dialog_item_material = 2130968640;
// aapt resource value: 0x7f040041
- public const int Tabbar = 2130968641;
+ public const int select_dialog_multichoice_material = 2130968641;
// aapt resource value: 0x7f040042
- public const int Toolbar = 2130968642;
+ public const int select_dialog_singlechoice_material = 2130968642;
// aapt resource value: 0x7f040043
- public const int tooltip = 2130968643;
+ public const int support_simple_spinner_dropdown_item = 2130968643;
+
+ // aapt resource value: 0x7f040044
+ public const int Tabbar = 2130968644;
+
+ // aapt resource value: 0x7f040045
+ public const int Toolbar = 2130968645;
+
+ // aapt resource value: 0x7f040046
+ public const int tooltip = 2130968646;
static Layout()
{
@@ -4061,6 +4167,9 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0x7f0a0035
public const int character_counter_pattern = 2131361845;
+ // aapt resource value: 0x7f0a003c
+ public const int library_name = 2131361852;
+
// aapt resource value: 0x7f0a0000
public const int mr_button_content_description = 2131361792;
@@ -6893,6 +7002,56 @@ namespace PlantBox.Client.Droid
// aapt resource value: 0
public const int PopupWindowBackgroundState_state_above_anchor = 0;
+ public static int[] ProgressWheel = new int[] {
+ 2130772339,
+ 2130772340,
+ 2130772341,
+ 2130772342,
+ 2130772343,
+ 2130772344,
+ 2130772345,
+ 2130772346,
+ 2130772347,
+ 2130772348,
+ 2130772349,
+ 2130772350};
+
+ // aapt resource value: 3
+ public const int ProgressWheel_ahBarColor = 3;
+
+ // aapt resource value: 11
+ public const int ProgressWheel_ahBarLength = 11;
+
+ // aapt resource value: 10
+ public const int ProgressWheel_ahBarWidth = 10;
+
+ // aapt resource value: 8
+ public const int ProgressWheel_ahCircleColor = 8;
+
+ // aapt resource value: 7
+ public const int ProgressWheel_ahDelayMillis = 7;
+
+ // aapt resource value: 9
+ public const int ProgressWheel_ahRadius = 9;
+
+ // aapt resource value: 4
+ public const int ProgressWheel_ahRimColor = 4;
+
+ // aapt resource value: 5
+ public const int ProgressWheel_ahRimWidth = 5;
+
+ // aapt resource value: 6
+ public const int ProgressWheel_ahSpinSpeed = 6;
+
+ // aapt resource value: 0
+ public const int ProgressWheel_ahText = 0;
+
+ // aapt resource value: 1
+ public const int ProgressWheel_ahTextColor = 1;
+
+ // aapt resource value: 2
+ public const int ProgressWheel_ahTextSize = 2;
+
public static int[] RecycleListView = new int[] {
2130772200,
2130772201};
diff --git a/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj b/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj
index db2fb59..fd14f3c 100644
--- a/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj
+++ b/PlantBox.Client/PlantBox.Client.UWP/PlantBox.Client.UWP.csproj
@@ -189,6 +189,9 @@
+
+ 7.0.4
+
diff --git a/PlantBox.Client/PlantBox.Client.iOS/PlantBox.Client.iOS.csproj b/PlantBox.Client/PlantBox.Client.iOS/PlantBox.Client.iOS.csproj
index 93ecbb4..ee52c78 100644
--- a/PlantBox.Client/PlantBox.Client.iOS/PlantBox.Client.iOS.csproj
+++ b/PlantBox.Client/PlantBox.Client.iOS/PlantBox.Client.iOS.csproj
@@ -148,6 +148,9 @@
+
+ 7.0.4
+
diff --git a/PlantBox.Client/PlantBox.Client/App.xaml b/PlantBox.Client/PlantBox.Client/App.xaml
index a33e4b4..4fe3087 100644
--- a/PlantBox.Client/PlantBox.Client/App.xaml
+++ b/PlantBox.Client/PlantBox.Client/App.xaml
@@ -1,8 +1,15 @@
-
+
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/App.xaml.cs b/PlantBox.Client/PlantBox.Client/App.xaml.cs
index 18645c0..0507602 100644
--- a/PlantBox.Client/PlantBox.Client/App.xaml.cs
+++ b/PlantBox.Client/PlantBox.Client/App.xaml.cs
@@ -1,4 +1,6 @@
using PlantBox.Client.Forms;
+using PlantBox.Client.Resources;
+using PlantBox.Client.ViewModels;
using System;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;
@@ -8,10 +10,20 @@ namespace PlantBox.Client
{
public partial class App : Application
{
+ public static SettingsViewModel Settings { get; private set; }
+
public App()
{
InitializeComponent();
+ // Load settings
+ Settings = (SettingsViewModel)Resources["Settings"];
+
+ if (Settings.Language != null)
+ {
+ Locale.Culture = Settings.Language;
+ }
+
MainPage = new MainPage();
}
@@ -23,6 +35,7 @@ namespace PlantBox.Client
protected override void OnSleep()
{
// Handle when your app sleeps
+ Settings.Save();
}
protected override void OnResume()
diff --git a/PlantBox.Client/PlantBox.Client/Converters/JsonCultureInfoConverter.cs b/PlantBox.Client/PlantBox.Client/Converters/JsonCultureInfoConverter.cs
new file mode 100644
index 0000000..6f5f326
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Converters/JsonCultureInfoConverter.cs
@@ -0,0 +1,29 @@
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Text;
+
+namespace PlantBox.Client.Converters
+{
+ class JsonCultureInfoConverter : JsonConverter
+ {
+ public override bool CanConvert(Type objectType)
+ {
+ return objectType == typeof(CultureInfo) ? true : false;
+ }
+
+ public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
+ {
+ var c = new CultureInfo((string)reader.Value);
+ return c;
+ }
+
+ public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
+ {
+ var culture = (CultureInfo)value;
+
+ writer.WriteValue(culture.Name);
+ }
+ }
+}
diff --git a/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs b/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs
index 9b87c37..d19de7e 100644
--- a/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs
+++ b/PlantBox.Client/PlantBox.Client/Extensions/LocaleExtension.cs
@@ -22,7 +22,7 @@ namespace PlantBox.Client.Extensions
public object ProvideValue(IServiceProvider serviceProvider)
{
- return _resourceManager.GetString(Name) ?? $"#{Name}";
+ return _resourceManager.GetString(Name, Locale.Culture) ?? $"#{Name}";
}
}
}
diff --git a/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml
index fb8a099..0ef00d4 100644
--- a/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml
+++ b/PlantBox.Client/PlantBox.Client/Forms/AboutPage.xaml
@@ -3,12 +3,9 @@
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:extensions="clr-namespace:PlantBox.Client.Extensions"
xmlns:models="clr-namespace:PlantBox.Client.Models"
- x:Class="PlantBox.Client.Forms.AboutPage"
- Padding="{OnPlatform UWP=10}">
+ x:Class="PlantBox.Client.Forms.AboutPage">
+ HorizontalOptions="FillAndExpand"
+ VerticalOptions="CenterAndExpand"
+ Margin="15, 0, 0, 0">
+ WidthRequest="32"
+ Source="{Binding Image}" />
+ VerticalOptions="CenterAndExpand"
+ Margin="5, 0, 0, 0"
+ Style="{DynamicResource SubtitleStyle}"
+ Text="{Binding Title}" />
diff --git a/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml
new file mode 100644
index 0000000..a2731cb
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml.cs b/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml.cs
new file mode 100644
index 0000000..50fe848
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/LanguageSelectorPage.xaml.cs
@@ -0,0 +1,46 @@
+using Acr.UserDialogs;
+using PlantBox.Client.Resources;
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+using Xamarin.Forms;
+using Xamarin.Forms.Xaml;
+
+namespace PlantBox.Client.Forms.Settings
+{
+ [XamlCompilation(XamlCompilationOptions.Compile)]
+ public partial class LanguageSelectorPage : ContentPage
+ {
+ private CultureInfo[] _supportedCultures = new CultureInfo[]
+ {
+ new CultureInfo("en-US"),
+ new CultureInfo("fr-FR")
+ };
+
+ public LanguageSelectorPage()
+ {
+ InitializeComponent();
+
+ listView.ItemsSource = _supportedCultures;
+ }
+
+ private async void ListView_ItemTapped(object sender, ItemTappedEventArgs e)
+ {
+ if (e.Item is CultureInfo culture)
+ {
+ App.Settings.Language = culture;
+ Locale.Culture = culture;
+
+ await App.Settings.SaveAsync();
+
+ (Application.Current as App).MainPage = new MainPage();
+ //await DisplayAlert(Locale.LanguageChangedTitle, Locale.LanguageChangedMessage, "Ok");
+ //await Navigation.PopAsync();
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml
index 6b640d5..8f8df19 100644
--- a/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml
+++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml
@@ -1,12 +1,29 @@
+ xmlns:extensions="clr-namespace:PlantBox.Client.Extensions"
+ x:Class="PlantBox.Client.Forms.Settings.SettingsPage"
+ BindingContext="{StaticResource Settings}">
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs
index 530d059..0b7bf3b 100644
--- a/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs
+++ b/PlantBox.Client/PlantBox.Client/Forms/Settings/SettingsPage.xaml.cs
@@ -1,5 +1,7 @@
-using System;
+using PlantBox.Client.Resources;
+using System;
using System.Collections.Generic;
+using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@@ -12,9 +14,38 @@ namespace PlantBox.Client.Forms.Settings
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class SettingsPage : ContentPage
{
- public SettingsPage ()
+ public SettingsPage()
{
- InitializeComponent ();
+ InitializeComponent();
+
+ // Save on close
+ Disappearing += async (s, e) => await App.Settings.SaveAsync();
+
+ // Can't apply style to cells, so...
+ ApplyStyle();
}
- }
+
+ private void ApplyStyle()
+ {
+ foreach (var cell in table.Root.SelectMany(x => x))
+ {
+ if (cell is TextCell textCell)
+ {
+ if (Device.RuntimePlatform == Device.UWP)
+ {
+ textCell.TextColor = Color.Accent;
+ }
+ }
+ else if (cell is SwitchCell switchCell)
+ {
+ switchCell.Tapped += (s, e) => (s as SwitchCell).On = !(s as SwitchCell).On;
+ }
+ }
+ }
+
+ private async void Language_Tapped(object sender, EventArgs e)
+ {
+ await Navigation.PushAsync(new LanguageSelectorPage());
+ }
+ }
}
\ No newline at end of file
diff --git a/PlantBox.Client/PlantBox.Client/Models/Settings.cs b/PlantBox.Client/PlantBox.Client/Models/Settings.cs
new file mode 100644
index 0000000..22c25ea
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/Models/Settings.cs
@@ -0,0 +1,18 @@
+using Newtonsoft.Json;
+using PlantBox.Client.Converters;
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Text;
+
+namespace PlantBox.Client.Models
+{
+ class Settings
+ {
+ [JsonConverter(typeof(JsonCultureInfoConverter))]
+ public CultureInfo Language { get; set; }
+
+ public bool NotificationsDisabled { get; set; } = false;
+ public bool NotificationsMuted { get; set; } = false;
+ }
+}
diff --git a/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj b/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj
index dd18574..7d307df 100644
--- a/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj
+++ b/PlantBox.Client/PlantBox.Client/PlantBox.Client.csproj
@@ -27,6 +27,8 @@
+
+
@@ -47,6 +49,9 @@
MSBuild:UpdateDesignTimeXaml
+
+ MSBuild:UpdateDesignTimeXaml
+
MSBuild:UpdateDesignTimeXaml
@@ -57,10 +62,9 @@
-
-
-
-
+
+ LanguageSelectorPage.xaml
+
True
True
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs b/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs
index ccc21bd..ec415a7 100644
--- a/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs
+++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.Designer.cs
@@ -78,6 +78,15 @@ namespace PlantBox.Client.Resources {
}
}
+ ///
+ /// Recherche une chaîne localisée semblable à General.
+ ///
+ internal static string General {
+ get {
+ return ResourceManager.GetString("General", resourceCulture);
+ }
+ }
+
///
/// Recherche une chaîne localisée semblable à Home.
///
@@ -96,6 +105,42 @@ namespace PlantBox.Client.Resources {
}
}
+ ///
+ /// Recherche une chaîne localisée semblable à Changes will take effect at next start.
+ ///
+ internal static string LanguageChangedMessage {
+ get {
+ return ResourceManager.GetString("LanguageChangedMessage", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Language changed.
+ ///
+ internal static string LanguageChangedTitle {
+ get {
+ return ResourceManager.GetString("LanguageChangedTitle", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Language.
+ ///
+ internal static string LanguageSetting {
+ get {
+ return ResourceManager.GetString("LanguageSetting", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Change the language.
+ ///
+ internal static string LanguageSettingDetail {
+ get {
+ return ResourceManager.GetString("LanguageSettingDetail", resourceCulture);
+ }
+ }
+
///
/// Recherche une chaîne localisée semblable à Libraries.
///
@@ -105,6 +150,42 @@ namespace PlantBox.Client.Resources {
}
}
+ ///
+ /// Recherche une chaîne localisée semblable à Media.
+ ///
+ internal static string Media {
+ get {
+ return ResourceManager.GetString("Media", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Notifications.
+ ///
+ internal static string Notifications {
+ get {
+ return ResourceManager.GetString("Notifications", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Desactivate notifications.
+ ///
+ internal static string NotificationsDisabled {
+ get {
+ return ResourceManager.GetString("NotificationsDisabled", resourceCulture);
+ }
+ }
+
+ ///
+ /// Recherche une chaîne localisée semblable à Mute notifications.
+ ///
+ internal static string NotificationsMuted {
+ get {
+ return ResourceManager.GetString("NotificationsMuted", resourceCulture);
+ }
+ }
+
///
/// Recherche une chaîne localisée semblable à Settings.
///
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx b/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx
index cb3f81c..4cedf84 100644
--- a/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx
+++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.fr.resx
@@ -123,17 +123,44 @@
Auteur
+
+ Général
+
Accueil
Informations
+
+ Les changements prendront effet au prochain lancement
+
+
+ Langue modifiée
+
+
+ Langue
+
+
+ Modifie la langue
+
Bibliothèques
+
+ Media
+
+
+ Notifications
+
+
+ Désactiver les notifications
+
+
+ Rendre muet les notifications
+
- Options
+ Préférences
Version
diff --git a/PlantBox.Client/PlantBox.Client/Resources/Locale.resx b/PlantBox.Client/PlantBox.Client/Resources/Locale.resx
index 6b9a86b..da0c427 100644
--- a/PlantBox.Client/PlantBox.Client/Resources/Locale.resx
+++ b/PlantBox.Client/PlantBox.Client/Resources/Locale.resx
@@ -123,15 +123,42 @@
Author
+
+ General
+
Home
Informations
+
+ Changes will take effect at next start
+
+
+ Language changed
+
+
+ Language
+
+
+ Change the language
+
Libraries
+
+ Media
+
+
+ Notifications
+
+
+ Desactivate notifications
+
+
+ Mute notifications
+
Settings
diff --git a/PlantBox.Client/PlantBox.Client/ViewModels/SettingsViewModel.cs b/PlantBox.Client/PlantBox.Client/ViewModels/SettingsViewModel.cs
new file mode 100644
index 0000000..2b9e90d
--- /dev/null
+++ b/PlantBox.Client/PlantBox.Client/ViewModels/SettingsViewModel.cs
@@ -0,0 +1,94 @@
+using Newtonsoft.Json;
+using PlantBox.Client.Models;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Globalization;
+using System.IO;
+using System.Runtime.CompilerServices;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace PlantBox.Client.ViewModels
+{
+ public class SettingsViewModel : INotifyPropertyChanged
+ {
+ public event PropertyChangedEventHandler PropertyChanged;
+
+ public const string FileName = "Settings.json";
+ public string FilePath => Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), FileName);
+
+ private Settings _settings;
+
+ // Settings
+ public CultureInfo Language
+ {
+ get => _settings.Language;
+ set
+ {
+ if (value != _settings.Language)
+ {
+ _settings.Language = value;
+ OnPropertyChanged();
+ }
+ }
+ }
+ public bool NotificationsDisabled
+ {
+ get => _settings.NotificationsDisabled;
+ set
+ {
+ if (value != _settings.NotificationsDisabled)
+ {
+ _settings.NotificationsDisabled = value;
+ OnPropertyChanged();
+ }
+ }
+ }
+ public bool NotificationsMuted
+ {
+ get => _settings.NotificationsMuted;
+ set
+ {
+ if (value != _settings.NotificationsMuted)
+ {
+ _settings.NotificationsMuted = value;
+ OnPropertyChanged();
+ }
+ }
+ }
+
+ public SettingsViewModel()
+ {
+ if (File.Exists(FilePath))
+ {
+ _settings = JsonConvert.DeserializeObject(File.ReadAllText(FilePath));
+ }
+ else
+ {
+ _settings = new Settings();
+ }
+ }
+
+ public void Save()
+ {
+ using (var file = new StreamWriter(FilePath, false))
+ {
+ file.WriteLine(JsonConvert.SerializeObject(_settings));
+ }
+ }
+
+ public async Task SaveAsync()
+ {
+ using (var file = new StreamWriter(FilePath, false))
+ {
+ await file.WriteLineAsync(JsonConvert.SerializeObject(_settings));
+ }
+ }
+
+ public void OnPropertyChanged([CallerMemberName] string propertyName = null)
+ {
+ PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
+ }
+ }
+}