new icons for ios. new renderers for editor, picker, table view. android style changes.
|
@ -196,6 +196,8 @@
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="Controls\ExtendedEditorRenderer.cs" />
|
||||||
|
<Compile Include="Controls\ExtendedPickerRenderer.cs" />
|
||||||
<Compile Include="Controls\ExtendedEntryRenderer.cs" />
|
<Compile Include="Controls\ExtendedEntryRenderer.cs" />
|
||||||
<Compile Include="Resources\Resource.Designer.cs" />
|
<Compile Include="Resources\Resource.Designer.cs" />
|
||||||
<Compile Include="Services\ClipboardService.cs" />
|
<Compile Include="Services\ClipboardService.cs" />
|
||||||
|
|
48
src/Android/Controls/ExtendedEditorRenderer.cs
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
using System;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using Bit.Android.Controls;
|
||||||
|
using Bit.App.Controls;
|
||||||
|
using Xamarin.Forms;
|
||||||
|
using Xamarin.Forms.Platform.Android;
|
||||||
|
|
||||||
|
[assembly: ExportRenderer(typeof(ExtendedEditor), typeof(ExtendedEditorRenderer))]
|
||||||
|
namespace Bit.Android.Controls
|
||||||
|
{
|
||||||
|
public class ExtendedEditorRenderer : EditorRenderer
|
||||||
|
{
|
||||||
|
protected override void OnElementChanged(ElementChangedEventArgs<Editor> e)
|
||||||
|
{
|
||||||
|
base.OnElementChanged(e);
|
||||||
|
|
||||||
|
var view = (ExtendedEditor)Element;
|
||||||
|
|
||||||
|
SetBorder(view);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
|
||||||
|
{
|
||||||
|
var view = (ExtendedEditor)Element;
|
||||||
|
|
||||||
|
if(e.PropertyName == ExtendedEditor.HasBorderProperty.PropertyName)
|
||||||
|
{
|
||||||
|
SetBorder(view);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
base.OnElementPropertyChanged(sender, e);
|
||||||
|
if(e.PropertyName == VisualElement.BackgroundColorProperty.PropertyName)
|
||||||
|
{
|
||||||
|
Control.SetBackgroundColor(view.BackgroundColor.ToAndroid());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetBorder(ExtendedEditor view)
|
||||||
|
{
|
||||||
|
if(!view.HasBorder)
|
||||||
|
{
|
||||||
|
Control.SetBackgroundColor(global::Android.Graphics.Color.Transparent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -51,7 +51,14 @@ namespace Bit.Android.Controls
|
||||||
|
|
||||||
private void SetBorder(ExtendedEntry view)
|
private void SetBorder(ExtendedEntry view)
|
||||||
{
|
{
|
||||||
//Not suported on Android
|
if(!view.HasBorder)
|
||||||
|
{
|
||||||
|
Control.SetBackgroundColor(global::Android.Graphics.Color.Transparent);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Control.SetBackgroundColor(view.BottomBorderColor.ToAndroid());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SetMaxLength(ExtendedEntry view)
|
private void SetMaxLength(ExtendedEntry view)
|
||||||
|
|
48
src/Android/Controls/ExtendedPickerRenderer.cs
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
using System;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using Bit.Android.Controls;
|
||||||
|
using Bit.App.Controls;
|
||||||
|
using Xamarin.Forms;
|
||||||
|
using Xamarin.Forms.Platform.Android;
|
||||||
|
|
||||||
|
[assembly: ExportRenderer(typeof(ExtendedPicker), typeof(ExtendedPickerRenderer))]
|
||||||
|
namespace Bit.Android.Controls
|
||||||
|
{
|
||||||
|
public class ExtendedPickerRenderer : PickerRenderer
|
||||||
|
{
|
||||||
|
protected override void OnElementChanged(ElementChangedEventArgs<Picker> e)
|
||||||
|
{
|
||||||
|
base.OnElementChanged(e);
|
||||||
|
|
||||||
|
var view = (ExtendedPicker)Element;
|
||||||
|
|
||||||
|
SetBorder(view);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
|
||||||
|
{
|
||||||
|
var view = (ExtendedPicker)Element;
|
||||||
|
|
||||||
|
if(e.PropertyName == ExtendedPicker.HasBorderProperty.PropertyName)
|
||||||
|
{
|
||||||
|
SetBorder(view);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
base.OnElementPropertyChanged(sender, e);
|
||||||
|
if(e.PropertyName == VisualElement.BackgroundColorProperty.PropertyName)
|
||||||
|
{
|
||||||
|
Control.SetBackgroundColor(view.BackgroundColor.ToAndroid());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void SetBorder(ExtendedPicker view)
|
||||||
|
{
|
||||||
|
if(!view.HasBorder)
|
||||||
|
{
|
||||||
|
Control.SetBackgroundColor(global::Android.Graphics.Color.Transparent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
51
src/Android/Resources/Resource.Designer.cs
generated
|
@ -1166,32 +1166,32 @@ namespace Bit.Android
|
||||||
public partial class Color
|
public partial class Color
|
||||||
{
|
{
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b004d
|
|
||||||
public const int abc_background_cache_hint_selector_material_dark = 2131427405;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b004e
|
// aapt resource value: 0x7f0b004e
|
||||||
public const int abc_background_cache_hint_selector_material_light = 2131427406;
|
public const int abc_background_cache_hint_selector_material_dark = 2131427406;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b004f
|
// aapt resource value: 0x7f0b004f
|
||||||
public const int abc_color_highlight_material = 2131427407;
|
public const int abc_background_cache_hint_selector_material_light = 2131427407;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0b0050
|
||||||
|
public const int abc_color_highlight_material = 2131427408;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0004
|
// aapt resource value: 0x7f0b0004
|
||||||
public const int abc_input_method_navigation_guard = 2131427332;
|
public const int abc_input_method_navigation_guard = 2131427332;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0050
|
|
||||||
public const int abc_primary_text_disable_only_material_dark = 2131427408;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0051
|
// aapt resource value: 0x7f0b0051
|
||||||
public const int abc_primary_text_disable_only_material_light = 2131427409;
|
public const int abc_primary_text_disable_only_material_dark = 2131427409;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0052
|
// aapt resource value: 0x7f0b0052
|
||||||
public const int abc_primary_text_material_dark = 2131427410;
|
public const int abc_primary_text_disable_only_material_light = 2131427410;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0053
|
// aapt resource value: 0x7f0b0053
|
||||||
public const int abc_primary_text_material_light = 2131427411;
|
public const int abc_primary_text_material_dark = 2131427411;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0054
|
// aapt resource value: 0x7f0b0054
|
||||||
public const int abc_search_url_text = 2131427412;
|
public const int abc_primary_text_material_light = 2131427412;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0b0055
|
||||||
|
public const int abc_search_url_text = 2131427413;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0005
|
// aapt resource value: 0x7f0b0005
|
||||||
public const int abc_search_url_text_normal = 2131427333;
|
public const int abc_search_url_text_normal = 2131427333;
|
||||||
|
@ -1202,14 +1202,14 @@ namespace Bit.Android
|
||||||
// aapt resource value: 0x7f0b0007
|
// aapt resource value: 0x7f0b0007
|
||||||
public const int abc_search_url_text_selected = 2131427335;
|
public const int abc_search_url_text_selected = 2131427335;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0055
|
|
||||||
public const int abc_secondary_text_material_dark = 2131427413;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0056
|
// aapt resource value: 0x7f0b0056
|
||||||
public const int abc_secondary_text_material_light = 2131427414;
|
public const int abc_secondary_text_material_dark = 2131427414;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b004c
|
// aapt resource value: 0x7f0b0057
|
||||||
public const int accent = 2131427404;
|
public const int abc_secondary_text_material_light = 2131427415;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0b004d
|
||||||
|
public const int accent = 2131427405;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0008
|
// aapt resource value: 0x7f0b0008
|
||||||
public const int accent_material_dark = 2131427336;
|
public const int accent_material_dark = 2131427336;
|
||||||
|
@ -1331,6 +1331,9 @@ namespace Bit.Android
|
||||||
// aapt resource value: 0x7f0b001f
|
// aapt resource value: 0x7f0b001f
|
||||||
public const int hint_foreground_material_light = 2131427359;
|
public const int hint_foreground_material_light = 2131427359;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0b004b
|
||||||
|
public const int lightgray = 2131427403;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0020
|
// aapt resource value: 0x7f0b0020
|
||||||
public const int material_blue_grey_800 = 2131427360;
|
public const int material_blue_grey_800 = 2131427360;
|
||||||
|
|
||||||
|
@ -1367,8 +1370,8 @@ namespace Bit.Android
|
||||||
// aapt resource value: 0x7f0b002b
|
// aapt resource value: 0x7f0b002b
|
||||||
public const int material_grey_900 = 2131427371;
|
public const int material_grey_900 = 2131427371;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b004b
|
// aapt resource value: 0x7f0b004c
|
||||||
public const int primary = 2131427403;
|
public const int primary = 2131427404;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b002c
|
// aapt resource value: 0x7f0b002c
|
||||||
public const int primary_dark_material_dark = 2131427372;
|
public const int primary_dark_material_dark = 2131427372;
|
||||||
|
@ -1418,11 +1421,11 @@ namespace Bit.Android
|
||||||
// aapt resource value: 0x7f0b003b
|
// aapt resource value: 0x7f0b003b
|
||||||
public const int switch_thumb_disabled_material_light = 2131427387;
|
public const int switch_thumb_disabled_material_light = 2131427387;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0057
|
|
||||||
public const int switch_thumb_material_dark = 2131427415;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b0058
|
// aapt resource value: 0x7f0b0058
|
||||||
public const int switch_thumb_material_light = 2131427416;
|
public const int switch_thumb_material_dark = 2131427416;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0b0059
|
||||||
|
public const int switch_thumb_material_light = 2131427417;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0b003c
|
// aapt resource value: 0x7f0b003c
|
||||||
public const int switch_thumb_normal_material_dark = 2131427388;
|
public const int switch_thumb_normal_material_dark = 2131427388;
|
||||||
|
|
|
@ -4,6 +4,6 @@
|
||||||
<item name="android:colorPrimary">@color/primary</item>
|
<item name="android:colorPrimary">@color/primary</item>
|
||||||
<item name="android:textColorPrimary">@color/darkgray</item>
|
<item name="android:textColorPrimary">@color/darkgray</item>
|
||||||
<item name="android:colorAccent">@color/accent</item>
|
<item name="android:colorAccent">@color/accent</item>
|
||||||
<item name="android:windowBackground">@color/white</item>
|
<item name="android:windowBackground">@color/lightgray</item>
|
||||||
</style>
|
</style>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
<color name="white">#FFFFFF</color>
|
<color name="white">#FFFFFF</color>
|
||||||
<color name="darkgray">#333333</color>
|
<color name="darkgray">#333333</color>
|
||||||
<color name="gray">#738182</color>
|
<color name="gray">#738182</color>
|
||||||
|
<color name="lightgray">#ecf0f5</color>
|
||||||
<color name="primary">#222d32</color>
|
<color name="primary">#222d32</color>
|
||||||
<color name="accent">#3c8dbc</color>
|
<color name="accent">#3c8dbc</color>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -4,6 +4,6 @@
|
||||||
<item name="android:colorPrimary">@color/primary</item>
|
<item name="android:colorPrimary">@color/primary</item>
|
||||||
<item name="android:textColorPrimary">@color/darkgray</item>
|
<item name="android:textColorPrimary">@color/darkgray</item>
|
||||||
<item name="android:colorAccent">@color/accent</item>
|
<item name="android:colorAccent">@color/accent</item>
|
||||||
<item name="android:windowBackground">@color/white</item>
|
<item name="android:windowBackground">@color/lightgray</item>
|
||||||
</style>
|
</style>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -45,6 +45,8 @@
|
||||||
<Compile Include="Behaviors\ConnectivityBehavior.cs" />
|
<Compile Include="Behaviors\ConnectivityBehavior.cs" />
|
||||||
<Compile Include="Behaviors\RequiredValidationBehavior.cs" />
|
<Compile Include="Behaviors\RequiredValidationBehavior.cs" />
|
||||||
<Compile Include="Controls\EntryLabel.cs" />
|
<Compile Include="Controls\EntryLabel.cs" />
|
||||||
|
<Compile Include="Controls\ExtendedEditor.cs" />
|
||||||
|
<Compile Include="Controls\ExtendedTableView.cs" />
|
||||||
<Compile Include="Controls\ExtendedPicker.cs" />
|
<Compile Include="Controls\ExtendedPicker.cs" />
|
||||||
<Compile Include="Controls\ExtendedEntry.cs" />
|
<Compile Include="Controls\ExtendedEntry.cs" />
|
||||||
<Compile Include="Controls\ExtendedTabbedPage.cs" />
|
<Compile Include="Controls\ExtendedTabbedPage.cs" />
|
||||||
|
|
17
src/App/Controls/ExtendedEditor.cs
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
using System;
|
||||||
|
using Xamarin.Forms;
|
||||||
|
|
||||||
|
namespace Bit.App.Controls
|
||||||
|
{
|
||||||
|
public class ExtendedEditor : Editor
|
||||||
|
{
|
||||||
|
public static readonly BindableProperty HasBorderProperty =
|
||||||
|
BindableProperty.Create(nameof(HasBorder), typeof(bool), typeof(ExtendedEditor), true);
|
||||||
|
|
||||||
|
public bool HasBorder
|
||||||
|
{
|
||||||
|
get { return (bool)GetValue(HasBorderProperty); }
|
||||||
|
set { SetValue(HasBorderProperty, value); }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
9
src/App/Controls/ExtendedTableView.cs
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
using System;
|
||||||
|
using Xamarin.Forms;
|
||||||
|
|
||||||
|
namespace Bit.App.Controls
|
||||||
|
{
|
||||||
|
public class ExtendedTableView : TableView
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
|
@ -43,7 +43,7 @@ namespace Bit.App.Pages
|
||||||
}
|
}
|
||||||
var usernameEntry = new ExtendedEntry { HasBorder = false };
|
var usernameEntry = new ExtendedEntry { HasBorder = false };
|
||||||
var passwordEntry = new ExtendedEntry { IsPassword = true, HasBorder = false };
|
var passwordEntry = new ExtendedEntry { IsPassword = true, HasBorder = false };
|
||||||
var notesEditor = new Editor { HeightRequest = 75 };
|
var notesEditor = new ExtendedEditor { HeightRequest = Device.OS == TargetPlatform.iOS ? 70 : 90, HasBorder = false };
|
||||||
|
|
||||||
var uriStackLayout = new FormEntryStackLayout();
|
var uriStackLayout = new FormEntryStackLayout();
|
||||||
uriStackLayout.Children.Add(new EntryLabel { Text = AppResources.URI });
|
uriStackLayout.Children.Add(new EntryLabel { Text = AppResources.URI });
|
||||||
|
@ -76,15 +76,13 @@ namespace Bit.App.Pages
|
||||||
passwordCell.View = passwordStackLayout;
|
passwordCell.View = passwordStackLayout;
|
||||||
|
|
||||||
var notesStackLayout = new FormEntryStackLayout();
|
var notesStackLayout = new FormEntryStackLayout();
|
||||||
notesStackLayout.Children.Add(new EntryLabel { Text = AppResources.Notes });
|
|
||||||
notesStackLayout.Children.Add(notesEditor);
|
notesStackLayout.Children.Add(notesEditor);
|
||||||
var notesCell = new ViewCell();
|
var notesCell = new ViewCell();
|
||||||
notesCell.View = notesStackLayout;
|
notesCell.View = notesStackLayout;
|
||||||
|
|
||||||
var table = new TableView
|
var mainTable = new ExtendedTableView
|
||||||
{
|
{
|
||||||
Intent = TableIntent.Form,
|
Intent = TableIntent.Settings,
|
||||||
RowHeight = 65,
|
|
||||||
HasUnevenRows = true,
|
HasUnevenRows = true,
|
||||||
Root = new TableRoot
|
Root = new TableRoot
|
||||||
{
|
{
|
||||||
|
@ -94,15 +92,37 @@ namespace Bit.App.Pages
|
||||||
nameCell,
|
nameCell,
|
||||||
folderCell,
|
folderCell,
|
||||||
usernameCell,
|
usernameCell,
|
||||||
passwordCell,
|
passwordCell
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
var notesTable = new ExtendedTableView
|
||||||
|
{
|
||||||
|
Intent = TableIntent.Settings,
|
||||||
|
HasUnevenRows = true,
|
||||||
|
Root = new TableRoot
|
||||||
|
{
|
||||||
|
new TableSection(AppResources.Notes)
|
||||||
|
{
|
||||||
notesCell
|
notesCell
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if(Device.OS == TargetPlatform.iOS)
|
||||||
|
{
|
||||||
|
mainTable.RowHeight = 70;
|
||||||
|
notesTable.RowHeight = 90;
|
||||||
|
}
|
||||||
|
|
||||||
|
var tablesStackLayout = new StackLayout();
|
||||||
|
tablesStackLayout.Children.Add(mainTable);
|
||||||
|
tablesStackLayout.Children.Add(notesTable);
|
||||||
|
|
||||||
var scrollView = new ScrollView
|
var scrollView = new ScrollView
|
||||||
{
|
{
|
||||||
Content = table,
|
Content = tablesStackLayout,
|
||||||
Orientation = ScrollOrientation.Vertical
|
Orientation = ScrollOrientation.Vertical
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -169,6 +189,7 @@ namespace Bit.App.Pages
|
||||||
public FormEntryStackLayout()
|
public FormEntryStackLayout()
|
||||||
{
|
{
|
||||||
Padding = new Thickness(15, 15, 15, 0);
|
Padding = new Thickness(15, 15, 15, 0);
|
||||||
|
BackgroundColor = Color.White;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
39
src/iOS/Controls/ExtendedTableViewRenderer.cs
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
using System;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using Bit.App.Controls;
|
||||||
|
using Bit.iOS.Controls;
|
||||||
|
using UIKit;
|
||||||
|
using Xamarin.Forms;
|
||||||
|
using Xamarin.Forms.Platform.iOS;
|
||||||
|
|
||||||
|
[assembly: ExportRenderer(typeof(ExtendedTableView), typeof(ExtendedTableViewRenderer))]
|
||||||
|
namespace Bit.iOS.Controls
|
||||||
|
{
|
||||||
|
public class ExtendedTableViewRenderer : TableViewRenderer
|
||||||
|
{
|
||||||
|
protected override void OnElementChanged(ElementChangedEventArgs<TableView> e)
|
||||||
|
{
|
||||||
|
base.OnElementChanged(e);
|
||||||
|
|
||||||
|
var view = e.NewElement as ExtendedTableView;
|
||||||
|
if(view != null)
|
||||||
|
{
|
||||||
|
CorrectMargins(view);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e)
|
||||||
|
{
|
||||||
|
base.OnElementPropertyChanged(sender, e);
|
||||||
|
|
||||||
|
var view = (ExtendedTableView)Element;
|
||||||
|
|
||||||
|
CorrectMargins(view);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CorrectMargins(ExtendedTableView view)
|
||||||
|
{
|
||||||
|
Control.ContentInset = new UIEdgeInsets(-10, 0, -100, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -31,6 +31,10 @@
|
||||||
<string>1.0</string>
|
<string>1.0</string>
|
||||||
<key>CFBundleIconFiles</key>
|
<key>CFBundleIconFiles</key>
|
||||||
<array>
|
<array>
|
||||||
|
<string>Icon-72@2x.png</string>
|
||||||
|
<string>Icon-72.png</string>
|
||||||
|
<string>Icon@2x.png</string>
|
||||||
|
<string>Icon.png</string>
|
||||||
<string>Icon-60@2x.png</string>
|
<string>Icon-60@2x.png</string>
|
||||||
<string>Icon-76.png</string>
|
<string>Icon-76.png</string>
|
||||||
<string>Icon-76@2x.png</string>
|
<string>Icon-76@2x.png</string>
|
||||||
|
@ -39,6 +43,8 @@
|
||||||
<string>Default-568h@2x.png</string>
|
<string>Default-568h@2x.png</string>
|
||||||
<string>Default-Portrait.png</string>
|
<string>Default-Portrait.png</string>
|
||||||
<string>Default-Portrait@2x.png</string>
|
<string>Default-Portrait@2x.png</string>
|
||||||
|
<string>Icon-Small-50@2x.png</string>
|
||||||
|
<string>Icon-Small-50.png</string>
|
||||||
<string>Icon-Small-40.png</string>
|
<string>Icon-Small-40.png</string>
|
||||||
<string>Icon-Small-40@2x.png</string>
|
<string>Icon-Small-40@2x.png</string>
|
||||||
<string>Icon-Small.png</string>
|
<string>Icon-Small.png</string>
|
||||||
|
@ -48,5 +54,19 @@
|
||||||
<string>LaunchScreen</string>
|
<string>LaunchScreen</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>0.0.1</string>
|
<string>0.0.1</string>
|
||||||
|
<key>UIMainStoryboardFile~ipad</key>
|
||||||
|
<string>LaunchScreen</string>
|
||||||
|
<key>UIStatusBarTintParameters</key>
|
||||||
|
<dict>
|
||||||
|
<key>UINavigationBar</key>
|
||||||
|
<dict>
|
||||||
|
<key>Style</key>
|
||||||
|
<string>UIBarStyleDefault</string>
|
||||||
|
<key>Translucent</key>
|
||||||
|
<false/>
|
||||||
|
<key>BackgroundImage</key>
|
||||||
|
<string></string>
|
||||||
|
</dict>
|
||||||
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
BIN
src/iOS/Resources/Icon-120.png
Normal file
After (image error) Size: 4.9 KiB |
BIN
src/iOS/Resources/Icon-152.png
Normal file
After (image error) Size: 8.6 KiB |
BIN
src/iOS/Resources/Icon-16.png
Normal file
After (image error) Size: 342 B |
BIN
src/iOS/Resources/Icon-24.png
Normal file
After (image error) Size: 543 B |
BIN
src/iOS/Resources/Icon-32.png
Normal file
After (image error) Size: 568 B |
BIN
src/iOS/Resources/Icon-40.png
Normal file
After (image error) Size: 1 KiB |
BIN
src/iOS/Resources/Icon-40@2x.png
Normal file
After (image error) Size: 2 KiB |
BIN
src/iOS/Resources/Icon-40@3x.png
Normal file
After (image error) Size: 4.9 KiB |
BIN
src/iOS/Resources/Icon-60.png
Normal file
After (image error) Size: 1.9 KiB |
Before (image error) Size: 1.7 KiB After (image error) Size: 4.9 KiB |
Before (image error) Size: 21 KiB After (image error) Size: 15 KiB |
BIN
src/iOS/Resources/Icon-64.png
Normal file
After (image error) Size: 951 B |
BIN
src/iOS/Resources/Icon-72.png
Normal file
After (image error) Size: 2.1 KiB |
BIN
src/iOS/Resources/Icon-72@2x.png
Normal file
After (image error) Size: 4.4 KiB |
Before (image error) Size: 1.2 KiB After (image error) Size: 3.1 KiB |
Before (image error) Size: 2.2 KiB After (image error) Size: 8.6 KiB |
Before (image error) Size: 729 B After (image error) Size: 1 KiB |
Before (image error) Size: 1.2 KiB After (image error) Size: 2 KiB |
Before (image error) Size: 12 KiB After (image error) Size: 4.9 KiB |
BIN
src/iOS/Resources/Icon-Small-50.png
Normal file
After (image error) Size: 1.9 KiB |
BIN
src/iOS/Resources/Icon-Small-50@2x.png
Normal file
After (image error) Size: 4.4 KiB |
Before (image error) Size: 1.1 KiB After (image error) Size: 863 B |
Before (image error) Size: 955 B After (image error) Size: 2.2 KiB |
Before (image error) Size: 7.1 KiB After (image error) Size: 4.3 KiB |
BIN
src/iOS/Resources/Icon.png
Normal file
After (image error) Size: 2 KiB |
BIN
src/iOS/Resources/Icon@2x.png
Normal file
After (image error) Size: 6.3 KiB |
BIN
src/iOS/Resources/Icon@3x.png
Normal file
After (image error) Size: 16 KiB |
BIN
src/iOS/Resources/iTunesArtwork.png
Normal file
After (image error) Size: 7.6 KiB |
BIN
src/iOS/Resources/iTunesArtwork@2x.png
Normal file
After (image error) Size: 16 KiB |
|
@ -101,6 +101,7 @@
|
||||||
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="Controls\ExtendedTableViewRenderer.cs" />
|
||||||
<Compile Include="Controls\ExtendedPickerRenderer.cs" />
|
<Compile Include="Controls\ExtendedPickerRenderer.cs" />
|
||||||
<Compile Include="Controls\ExtendedEntryRenderer.cs" />
|
<Compile Include="Controls\ExtendedEntryRenderer.cs" />
|
||||||
<Compile Include="Controls\ExtendedTabbedPageRenderer.cs" />
|
<Compile Include="Controls\ExtendedTabbedPageRenderer.cs" />
|
||||||
|
@ -112,8 +113,6 @@
|
||||||
<None Include="Entitlements.plist" />
|
<None Include="Entitlements.plist" />
|
||||||
<None Include="Info.plist" />
|
<None Include="Info.plist" />
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<ITunesArtwork Include="iTunesArtwork" />
|
|
||||||
<ITunesArtwork Include="iTunesArtwork@2x" />
|
|
||||||
<None Include="packages.config" />
|
<None Include="packages.config" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
@ -273,6 +272,63 @@
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<BundleResource Include="Resources\ion-plus%403x.png" />
|
<BundleResource Include="Resources\ion-plus%403x.png" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-120.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-60.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-40%403x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-40%402x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-40.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-32.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-16.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-152.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-24.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-64.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-72.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-72%402x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-Small-50.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon-Small-50%402x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon%402x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BundleResource Include="Resources\Icon%403x.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ITunesArtwork Include="Resources\iTunesArtwork.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ITunesArtwork Include="Resources\iTunesArtwork%402x.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>
|
||||||
|
|
Before (image error) Size: 16 KiB |
Before (image error) Size: 20 KiB |