From c53db46d3ca091432a286528e60745ccb2e77063 Mon Sep 17 00:00:00 2001 From: Matthew Leibowitz Date: Thu, 10 May 2018 23:35:25 +0200 Subject: [PATCH 1/2] Making the samples for Tizen much better - and other small improvements --- .../SkiaSharpSample.Android/MainActivity.cs | 24 +-- .../SkiaSharpSample.Tizen/Program.cs | 21 +++ .../SkiaSharpSample.Tizen.cs | 21 --- .../SkiaSharpSample.UWP/App.xaml.cs | 140 +++++++++--------- .../SkiaSharpSample.UWP/MainPage.xaml.cs | 16 +- .../SkiaSharpSample.iOS/AppDelegate.cs | 40 ++--- .../Xamarin.Forms/SkiaSharpSample.iOS/Main.cs | 20 +-- .../PlatformShared/SamplesInitializer.cs | 19 +++ .../Xamarin.Forms/Android/Android.csproj | 7 + .../Android/Resources/drawable-hdpi/more.png | Bin 0 -> 474 bytes .../Android/Resources/drawable-ldpi/more.png | Bin 0 -> 370 bytes .../Android/Resources/drawable-mdpi/more.png | Bin 0 -> 355 bytes .../Android/Resources/drawable-xhdpi/more.png | Bin 0 -> 616 bytes .../Resources/drawable-xxhdpi/more.png | Bin 0 -> 1065 bytes .../Resources/drawable-xxxhdpi/more.png | Bin 0 -> 1531 bytes .../Android/Resources/drawable/more.png | Bin 0 -> 474 bytes .../Xamarin.Forms/Core/DetailsPage.xaml | 10 +- .../Xamarin.Forms/Core/DetailsPage.xaml.cs | 27 +++- .../Xamarin.Forms/Core/MainPage.xaml.cs | 11 ++ .../Xamarin.Forms/Core/MasterPage.xaml | 4 +- samples/Gallery/Xamarin.Forms/Mac/Mac.csproj | 3 + .../Xamarin.Forms/Mac/Resources/more.png | Bin 0 -> 256 bytes .../Xamarin.Forms/Mac/Resources/more@2x.png | Bin 0 -> 370 bytes .../Xamarin.Forms/Mac/Resources/more@3x.png | Bin 0 -> 687 bytes .../Gallery/Xamarin.Forms/SkiaSharpSample.sln | 2 +- .../{SkiaSharpGallery.Tizen.cs => Program.cs} | 50 +++---- ...arpGallery.Tizen.csproj => TizenOS.csproj} | 2 +- .../Xamarin.Forms/Tizen/res/configure.png | Bin 0 -> 901 bytes .../Xamarin.Forms/Tizen/res/hamburger.png | Bin 0 -> 174 bytes .../Gallery/Xamarin.Forms/Tizen/res/more.png | Bin 0 -> 355 bytes .../Xamarin.Forms/Tizen/res/slideshow.png | Bin 0 -> 954 bytes .../shared/res/SkiaSharpGallery.Tizen.png | Bin 10097 -> 0 bytes .../Tizen/shared/res/TizenOS.png | Bin 0 -> 5788 bytes .../Xamarin.Forms/Tizen/tizen-manifest.xml | 11 +- samples/Gallery/Xamarin.Forms/UWP/App.xaml.cs | 8 +- .../Gallery/Xamarin.Forms/UWP/Assets/more.png | Bin 0 -> 2087 bytes samples/Gallery/Xamarin.Forms/UWP/UWP.csproj | 1 + .../Xamarin.Forms/iOS/Resources/more.png | Bin 0 -> 256 bytes .../Xamarin.Forms/iOS/Resources/more@2x.png | Bin 0 -> 370 bytes .../Xamarin.Forms/iOS/Resources/more@3x.png | Bin 0 -> 687 bytes samples/Gallery/Xamarin.Forms/iOS/iOS.csproj | 3 + 41 files changed, 260 insertions(+), 180 deletions(-) create mode 100644 samples/Basic/Xamarin.Forms/SkiaSharpSample.Tizen/Program.cs delete mode 100644 samples/Basic/Xamarin.Forms/SkiaSharpSample.Tizen/SkiaSharpSample.Tizen.cs create mode 100644 samples/Gallery/Xamarin.Forms/Android/Resources/drawable-hdpi/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Android/Resources/drawable-ldpi/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Android/Resources/drawable-mdpi/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Android/Resources/drawable-xhdpi/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Android/Resources/drawable-xxhdpi/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Android/Resources/drawable-xxxhdpi/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Android/Resources/drawable/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Mac/Resources/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Mac/Resources/more@2x.png create mode 100644 samples/Gallery/Xamarin.Forms/Mac/Resources/more@3x.png rename samples/Gallery/Xamarin.Forms/Tizen/{SkiaSharpGallery.Tizen.cs => Program.cs} (75%) mode change 100755 => 100644 rename samples/Gallery/Xamarin.Forms/Tizen/{SkiaSharpGallery.Tizen.csproj => TizenOS.csproj} (98%) create mode 100644 samples/Gallery/Xamarin.Forms/Tizen/res/configure.png create mode 100644 samples/Gallery/Xamarin.Forms/Tizen/res/hamburger.png create mode 100644 samples/Gallery/Xamarin.Forms/Tizen/res/more.png create mode 100644 samples/Gallery/Xamarin.Forms/Tizen/res/slideshow.png delete mode 100755 samples/Gallery/Xamarin.Forms/Tizen/shared/res/SkiaSharpGallery.Tizen.png create mode 100644 samples/Gallery/Xamarin.Forms/Tizen/shared/res/TizenOS.png create mode 100644 samples/Gallery/Xamarin.Forms/UWP/Assets/more.png create mode 100644 samples/Gallery/Xamarin.Forms/iOS/Resources/more.png create mode 100644 samples/Gallery/Xamarin.Forms/iOS/Resources/more@2x.png create mode 100644 samples/Gallery/Xamarin.Forms/iOS/Resources/more@3x.png diff --git a/samples/Basic/Xamarin.Forms/SkiaSharpSample.Android/MainActivity.cs b/samples/Basic/Xamarin.Forms/SkiaSharpSample.Android/MainActivity.cs index 80d01f54..cb52b2fe 100644 --- a/samples/Basic/Xamarin.Forms/SkiaSharpSample.Android/MainActivity.cs +++ b/samples/Basic/Xamarin.Forms/SkiaSharpSample.Android/MainActivity.cs @@ -9,19 +9,19 @@ using Android.OS; namespace SkiaSharpSample.Droid { - [Activity(Label = "SkiaSharpSample", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] - public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity - { - protected override void OnCreate(Bundle bundle) - { - TabLayoutResource = Resource.Layout.Tabbar; - ToolbarResource = Resource.Layout.Toolbar; + [Activity(Label = "SkiaSharpSample", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] + public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity + { + protected override void OnCreate(Bundle bundle) + { + TabLayoutResource = Resource.Layout.Tabbar; + ToolbarResource = Resource.Layout.Toolbar; - base.OnCreate(bundle); + base.OnCreate(bundle); - global::Xamarin.Forms.Forms.Init(this, bundle); - LoadApplication(new App()); - } - } + global::Xamarin.Forms.Forms.Init(this, bundle); + LoadApplication(new App()); + } + } } diff --git a/samples/Basic/Xamarin.Forms/SkiaSharpSample.Tizen/Program.cs b/samples/Basic/Xamarin.Forms/SkiaSharpSample.Tizen/Program.cs new file mode 100644 index 00000000..9559bcf8 --- /dev/null +++ b/samples/Basic/Xamarin.Forms/SkiaSharpSample.Tizen/Program.cs @@ -0,0 +1,21 @@ +using System; + +namespace SkiaSharpSample +{ + public class Program : global::Xamarin.Forms.Platform.Tizen.FormsApplication + { + protected override void OnCreate() + { + base.OnCreate(); + + LoadApplication(new App()); + } + + public static void Main(string[] args) + { + var app = new Program(); + global::Xamarin.Forms.Platform.Tizen.Forms.Init(app); + app.Run(args); + } + } +} diff --git a/samples/Basic/Xamarin.Forms/SkiaSharpSample.Tizen/SkiaSharpSample.Tizen.cs b/samples/Basic/Xamarin.Forms/SkiaSharpSample.Tizen/SkiaSharpSample.Tizen.cs deleted file mode 100644 index a06ef840..00000000 --- a/samples/Basic/Xamarin.Forms/SkiaSharpSample.Tizen/SkiaSharpSample.Tizen.cs +++ /dev/null @@ -1,21 +0,0 @@ -using System; - -namespace SkiaSharpSample -{ - class Program : global::Xamarin.Forms.Platform.Tizen.FormsApplication - { - protected override void OnCreate() - { - base.OnCreate(); - - LoadApplication(new App()); - } - - static void Main(string[] args) - { - var app = new Program(); - global::Xamarin.Forms.Platform.Tizen.Forms.Init(app); - app.Run(args); - } - } -} diff --git a/samples/Basic/Xamarin.Forms/SkiaSharpSample.UWP/App.xaml.cs b/samples/Basic/Xamarin.Forms/SkiaSharpSample.UWP/App.xaml.cs index 85b2a1d5..ec68611b 100644 --- a/samples/Basic/Xamarin.Forms/SkiaSharpSample.UWP/App.xaml.cs +++ b/samples/Basic/Xamarin.Forms/SkiaSharpSample.UWP/App.xaml.cs @@ -17,85 +17,85 @@ using Windows.UI.Xaml.Navigation; namespace SkiaSharpSample.UWP { - /// - /// Provides application-specific behavior to supplement the default Application class. - /// - sealed partial class App : Application - { - /// - /// Initializes the singleton application object. This is the first line of authored code - /// executed, and as such is the logical equivalent of main() or WinMain(). - /// - public App() - { - this.InitializeComponent(); - this.Suspending += OnSuspending; - } + /// + /// Provides application-specific behavior to supplement the default Application class. + /// + sealed partial class App : Application + { + /// + /// Initializes the singleton application object. This is the first line of authored code + /// executed, and as such is the logical equivalent of main() or WinMain(). + /// + public App() + { + this.InitializeComponent(); + this.Suspending += OnSuspending; + } - /// - /// Invoked when the application is launched normally by the end user. Other entry points - /// will be used such as when the application is launched to open a specific file. - /// - /// Details about the launch request and process. - protected override void OnLaunched(LaunchActivatedEventArgs e) - { + /// + /// Invoked when the application is launched normally by the end user. Other entry points + /// will be used such as when the application is launched to open a specific file. + /// + /// Details about the launch request and process. + protected override void OnLaunched(LaunchActivatedEventArgs e) + { - Frame rootFrame = Window.Current.Content as Frame; + Frame rootFrame = Window.Current.Content as Frame; - // Do not repeat app initialization when the Window already has content, - // just ensure that the window is active - if (rootFrame == null) - { - // Create a Frame to act as the navigation context and navigate to the first page - rootFrame = new Frame(); + // Do not repeat app initialization when the Window already has content, + // just ensure that the window is active + if (rootFrame == null) + { + // Create a Frame to act as the navigation context and navigate to the first page + rootFrame = new Frame(); - rootFrame.NavigationFailed += OnNavigationFailed; + rootFrame.NavigationFailed += OnNavigationFailed; - Xamarin.Forms.Forms.Init(e); + Xamarin.Forms.Forms.Init(e); - if (e.PreviousExecutionState == ApplicationExecutionState.Terminated) - { - //TODO: Load state from previously suspended application - } + if (e.PreviousExecutionState == ApplicationExecutionState.Terminated) + { + //TODO: Load state from previously suspended application + } - // Place the frame in the current Window - Window.Current.Content = rootFrame; - } + // Place the frame in the current Window + Window.Current.Content = rootFrame; + } - if (rootFrame.Content == null) - { - // When the navigation stack isn't restored navigate to the first page, - // configuring the new page by passing required information as a navigation - // parameter - rootFrame.Navigate(typeof(MainPage), e.Arguments); - } - // Ensure the current window is active - Window.Current.Activate(); - } + if (rootFrame.Content == null) + { + // When the navigation stack isn't restored navigate to the first page, + // configuring the new page by passing required information as a navigation + // parameter + rootFrame.Navigate(typeof(MainPage), e.Arguments); + } + // Ensure the current window is active + Window.Current.Activate(); + } - /// - /// Invoked when Navigation to a certain page fails - /// - /// The Frame which failed navigation - /// Details about the navigation failure - void OnNavigationFailed(object sender, NavigationFailedEventArgs e) - { - throw new Exception("Failed to load Page " + e.SourcePageType.FullName); - } + /// + /// Invoked when Navigation to a certain page fails + /// + /// The Frame which failed navigation + /// Details about the navigation failure + void OnNavigationFailed(object sender, NavigationFailedEventArgs e) + { + throw new Exception("Failed to load Page " + e.SourcePageType.FullName); + } - /// - /// Invoked when application execution is being suspended. Application state is saved - /// without knowing whether the application will be terminated or resumed with the contents - /// of memory still intact. - /// - /// The source of the suspend request. - /// Details about the suspend request. - private void OnSuspending(object sender, SuspendingEventArgs e) - { - var deferral = e.SuspendingOperation.GetDeferral(); - //TODO: Save application state and stop any background activity - deferral.Complete(); - } - } + /// + /// Invoked when application execution is being suspended. Application state is saved + /// without knowing whether the application will be terminated or resumed with the contents + /// of memory still intact. + /// + /// The source of the suspend request. + /// Details about the suspend request. + private void OnSuspending(object sender, SuspendingEventArgs e) + { + var deferral = e.SuspendingOperation.GetDeferral(); + //TODO: Save application state and stop any background activity + deferral.Complete(); + } + } } diff --git a/samples/Basic/Xamarin.Forms/SkiaSharpSample.UWP/MainPage.xaml.cs b/samples/Basic/Xamarin.Forms/SkiaSharpSample.UWP/MainPage.xaml.cs index aeb62c55..1a002315 100644 --- a/samples/Basic/Xamarin.Forms/SkiaSharpSample.UWP/MainPage.xaml.cs +++ b/samples/Basic/Xamarin.Forms/SkiaSharpSample.UWP/MainPage.xaml.cs @@ -15,13 +15,13 @@ using Windows.UI.Xaml.Navigation; namespace SkiaSharpSample.UWP { - public sealed partial class MainPage - { - public MainPage() - { - this.InitializeComponent(); + public sealed partial class MainPage + { + public MainPage() + { + this.InitializeComponent(); - LoadApplication(new SkiaSharpSample.App()); - } - } + LoadApplication(new SkiaSharpSample.App()); + } + } } diff --git a/samples/Basic/Xamarin.Forms/SkiaSharpSample.iOS/AppDelegate.cs b/samples/Basic/Xamarin.Forms/SkiaSharpSample.iOS/AppDelegate.cs index bb25e6ec..2ac78188 100644 --- a/samples/Basic/Xamarin.Forms/SkiaSharpSample.iOS/AppDelegate.cs +++ b/samples/Basic/Xamarin.Forms/SkiaSharpSample.iOS/AppDelegate.cs @@ -7,25 +7,25 @@ using UIKit; namespace SkiaSharpSample.iOS { - // The UIApplicationDelegate for the application. This class is responsible for launching the - // User Interface of the application, as well as listening (and optionally responding) to - // application events from iOS. - [Register("AppDelegate")] - public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate - { - // - // This method is invoked when the application has loaded and is ready to run. In this - // method you should instantiate the window, load the UI into it and then make the window - // visible. - // - // You have 17 seconds to return from this method, or iOS will terminate your application. - // - public override bool FinishedLaunching(UIApplication app, NSDictionary options) - { - global::Xamarin.Forms.Forms.Init(); - LoadApplication(new App()); + // The UIApplicationDelegate for the application. This class is responsible for launching the + // User Interface of the application, as well as listening (and optionally responding) to + // application events from iOS. + [Register("AppDelegate")] + public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate + { + // + // This method is invoked when the application has loaded and is ready to run. In this + // method you should instantiate the window, load the UI into it and then make the window + // visible. + // + // You have 17 seconds to return from this method, or iOS will terminate your application. + // + public override bool FinishedLaunching(UIApplication app, NSDictionary options) + { + global::Xamarin.Forms.Forms.Init(); + LoadApplication(new App()); - return base.FinishedLaunching(app, options); - } - } + return base.FinishedLaunching(app, options); + } + } } diff --git a/samples/Basic/Xamarin.Forms/SkiaSharpSample.iOS/Main.cs b/samples/Basic/Xamarin.Forms/SkiaSharpSample.iOS/Main.cs index 46d95294..203e0e00 100644 --- a/samples/Basic/Xamarin.Forms/SkiaSharpSample.iOS/Main.cs +++ b/samples/Basic/Xamarin.Forms/SkiaSharpSample.iOS/Main.cs @@ -7,14 +7,14 @@ using UIKit; namespace SkiaSharpSample.iOS { - public class Application - { - // This is the main entry point of the application. - static void Main(string[] args) - { - // if you want to use a different Application Delegate class from "AppDelegate" - // you can specify it here. - UIApplication.Main(args, null, "AppDelegate"); - } - } + public class Application + { + // This is the main entry point of the application. + static void Main(string[] args) + { + // if you want to use a different Application Delegate class from "AppDelegate" + // you can specify it here. + UIApplication.Main(args, null, "AppDelegate"); + } + } } diff --git a/samples/Gallery/PlatformShared/SamplesInitializer.cs b/samples/Gallery/PlatformShared/SamplesInitializer.cs index a1d98c1f..83cf00bc 100644 --- a/samples/Gallery/PlatformShared/SamplesInitializer.cs +++ b/samples/Gallery/PlatformShared/SamplesInitializer.cs @@ -1,5 +1,6 @@ using System; using System.IO; +using System.Linq; #if WINDOWS_UWP using Windows.ApplicationModel; using Windows.Storage; @@ -17,6 +18,9 @@ using Android.Content; using System.Diagnostics; using System.Reflection; using System.Windows; +#elif TIZEN4_0 +using Tizen.Applications; +using Xamarin.Forms.Platform.Tizen; #endif namespace SkiaSharpSample @@ -42,6 +46,8 @@ namespace SkiaSharpSample #elif __DESKTOP__ var root = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); var path = Path.Combine(root, "Media", fontName); +#elif TIZEN4_0 + var path = ResourcePath.GetPath(fontName); #endif #if WINDOWS_UWP @@ -53,6 +59,8 @@ namespace SkiaSharpSample var localStorage = System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyDocuments); #elif __DESKTOP__ var localStorage = System.Windows.Forms.Application.LocalUserAppDataPath; +#elif TIZEN4_0 + var localStorage = Application.Current.DirectoryInfo.Data; #endif SamplesManager.ContentFontPath = path; @@ -114,6 +122,17 @@ namespace SkiaSharpSample Application.Context.StartActivity(intent); #elif __DESKTOP__ Process.Start(path); +#elif TIZEN4_0 + var appControl = new AppControl + { + Operation = AppControlOperations.View, + Uri = "file://" + path + }; + var matchedApplications = AppControl.GetMatchedApplicationIds(appControl); + if (matchedApplications.Any()) + { + AppControl.SendLaunchRequest(appControl); + } #endif } } diff --git a/samples/Gallery/Xamarin.Forms/Android/Android.csproj b/samples/Gallery/Xamarin.Forms/Android/Android.csproj index bdd857d4..3f680305 100644 --- a/samples/Gallery/Xamarin.Forms/Android/Android.csproj +++ b/samples/Gallery/Xamarin.Forms/Android/Android.csproj @@ -109,18 +109,25 @@ + + + + + + + diff --git a/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-hdpi/more.png b/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-hdpi/more.png new file mode 100644 index 0000000000000000000000000000000000000000..91b750d5fb83d8733a6438c1e25300c836f8f0ac GIT binary patch literal 474 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)(C|TkfQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXJq(MA#*AN17odo7$lQpV>dEly53Joc-f~%^IT9xaOqEt=+|q%l)t#4n{F?x{GvYPy?g)b zy)k05Hkuvv>3OiPXWeZl<7>-ibP9g?YrRX3`)tJQBsI4S{5vmxjm$W9OT^fa$^QbU ze`-nZJ-*;GM>wkf8|=#Cf~s17Wa9Pb*^+lVd<}&kx7~~Rs+OI-cgp{qSLdqKj>*Fdi5@UHx3vIVCg! E07~Q4A^-pY literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-ldpi/more.png b/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-ldpi/more.png new file mode 100644 index 0000000000000000000000000000000000000000..583f763050737f61c5546ff8643f70ef71a98583 GIT binary patch literal 370 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}c0*}aI z1_r)EAj~ML;ne^Xlq_+LC<)F_D=AMbN@XZW%*-p%%S$a$Fwry6Gcx?BkU15o=)I?l zV@QPi(Mz{E4+RLcJZ#w4*;|q6pzFLrB;WVNX0azr`EniaKjN8lV3*_t@#C%hPtt|` z7lp=NuUB0>xyR4Q>f{R*Oop<~1CHny)2H<&#`k!guF!pdu=?Y?wR6K5;sl=a#CBN! z`J`_0xuJ$5uDI1gyTkeuL-`5g#vO;3pWEEL!?@YTyu;ew_JGKzno@>+%PiDiINW*o z`dM~<+x&Kc@*l!63g?6#ojY#-P^xNastwEhS!_#F{|M(jVEBCL-j=4>I32avKXxxe Y!A;W>_DlQxfL>?tboFyt=akR{00`Wa82|tP literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-mdpi/more.png b/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-mdpi/more.png new file mode 100644 index 0000000000000000000000000000000000000000..abd89f7a898d2df5e3266237bcef31f87e2c8026 GIT binary patch literal 355 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCmUKs7M+SzC{oH>NS%G}c0*}aI z1_r)EAj~ML;ne^Xlq_+LC<)F_D=AMbN@XZW%*-p%%S$a$Fwry6Gcx?BkU15o=z*t; zV@QVc)hnJ{Oo2QM7wtOU?cK$E&!^DhfO#W_Z}9%tm>$bj4)cKj#zhQ2=1vVobW z&CfiO%~0R^E>Y(f`w8Y*XDu)IW!*g-@#)v+hHaDEx0Uw*)rWtYugI@ae<*xM%U=GE k*SED3=LVoF<&u9gPAaWtUsGzd5a?G1Pgg&ebxsLQ0PPurr~m)} literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-xhdpi/more.png b/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-xhdpi/more.png new file mode 100644 index 0000000000000000000000000000000000000000..95aa8657c141ea6061a448f36df3be9518135e54 GIT binary patch literal 616 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGoEa{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)(C|TkfQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXJq(MA#*AN1LIRq z7srr_xVJZ=yRJA$I6SPpw725ss*2-VJJvbf?f9``OQ^xVxqg>qEu0Fu>?Hgq|5Eh1 z=>6@_ncwbAeOW0{zDM$1?0U9a#iuWQHh4F~pW*wue3;Z9nRl_DBcM_d zzgl=++4NZNVvUVIrJJ#j@!sxtKZ9bbfQH((eYzy)yuAPL+ShL#s%1C60lDJ(yPv;m zOKRoL{WIABa@N_#&+RMLo-U1>_P)(n{qcO&=ZSkRZceQGc}BhAr-a$r{pqvkUo=eD kG3BRbxM7<0^wS4%!};%9Yvrmp0aFEor>mdKI;Vst0OR=(M*si- literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-xxhdpi/more.png b/samples/Gallery/Xamarin.Forms/Android/Resources/drawable-xxhdpi/more.png new file mode 100644 index 0000000000000000000000000000000000000000..6c6f9107d44181daa47ff3d5a4516b9928744833 GIT binary patch literal 1065 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 E07~Q4A^-pY literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Core/DetailsPage.xaml b/samples/Gallery/Xamarin.Forms/Core/DetailsPage.xaml index a294384e..476779f2 100644 --- a/samples/Gallery/Xamarin.Forms/Core/DetailsPage.xaml +++ b/samples/Gallery/Xamarin.Forms/Core/DetailsPage.xaml @@ -6,12 +6,18 @@ - + + + + - + + + + diff --git a/samples/Gallery/Xamarin.Forms/Core/DetailsPage.xaml.cs b/samples/Gallery/Xamarin.Forms/Core/DetailsPage.xaml.cs index 3ef60ad2..86d8b3bd 100644 --- a/samples/Gallery/Xamarin.Forms/Core/DetailsPage.xaml.cs +++ b/samples/Gallery/Xamarin.Forms/Core/DetailsPage.xaml.cs @@ -12,6 +12,17 @@ namespace SkiaSharpSample : base(root) { InitializeComponent(); + + if (Device.RuntimePlatform == "Tizen") + { + ToolbarItems.Clear(); + var item = new ToolbarItem + { + Icon = "more.png" + }; + item.Clicked += OnMore; + ToolbarItems.Add(item); + } } public SampleBase Sample @@ -28,10 +39,24 @@ namespace SkiaSharpSample public event EventHandler PlaySamples; + private async void OnMore(object sender, EventArgs e) + { + var result = await DisplayActionSheet("More", "Close", null, "Configure Backend", "Toggle Slideshow"); + switch (result) + { + case "Toggle Slideshow": + OnPlaySamples(sender, e); + break; + case "Configure Backend": + OnConfigureBackend(sender, e); + break; + } + } + private async void OnConfigureBackend(object sender, EventArgs e) { var items = Enum.GetNames(typeof(SampleBackends)).Except(new[] { nameof(SampleBackends.All) }); - var backendString = await DisplayActionSheet("Select Backend:", "Cancel", null, items.ToArray()); + var backendString = await DisplayActionSheet("Select Backend:", "Close", null, items.ToArray()); SampleBackends backend; if (Enum.TryParse(backendString, out backend)) diff --git a/samples/Gallery/Xamarin.Forms/Core/MainPage.xaml.cs b/samples/Gallery/Xamarin.Forms/Core/MainPage.xaml.cs index a813d57d..d9050978 100644 --- a/samples/Gallery/Xamarin.Forms/Core/MainPage.xaml.cs +++ b/samples/Gallery/Xamarin.Forms/Core/MainPage.xaml.cs @@ -25,6 +25,17 @@ namespace SkiaSharpSample }; detailsPage.PlaySamples += delegate { masterPage.CycleSamples(); }; + if (Device.RuntimePlatform == "Tizen") + { + var hamburger = new ToolbarItem + { + Icon = "hamburger.png", + Order = ToolbarItemOrder.Secondary + }; + hamburger.Clicked += delegate { IsPresented = !IsPresented; }; + detailsPage.ToolbarItems.Add(hamburger); + } + Master = masterPage; Detail = detailsPage; } diff --git a/samples/Gallery/Xamarin.Forms/Core/MasterPage.xaml b/samples/Gallery/Xamarin.Forms/Core/MasterPage.xaml index 4fc678d1..f61ca2cb 100644 --- a/samples/Gallery/Xamarin.Forms/Core/MasterPage.xaml +++ b/samples/Gallery/Xamarin.Forms/Core/MasterPage.xaml @@ -5,7 +5,9 @@ x:Class="SkiaSharpSample.MasterPage" Title="SkiaSharp" BackgroundColor="#EEEEEE"> - + + + diff --git a/samples/Gallery/Xamarin.Forms/Mac/Mac.csproj b/samples/Gallery/Xamarin.Forms/Mac/Mac.csproj index bc07411b..92eba355 100644 --- a/samples/Gallery/Xamarin.Forms/Mac/Mac.csproj +++ b/samples/Gallery/Xamarin.Forms/Mac/Mac.csproj @@ -109,6 +109,9 @@ + + + diff --git a/samples/Gallery/Xamarin.Forms/Mac/Resources/more.png b/samples/Gallery/Xamarin.Forms/Mac/Resources/more.png new file mode 100644 index 0000000000000000000000000000000000000000..f0fd852c0f7ad971ab8c141409c31f6df867f50e GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)(C|TkfQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXJq(MA#*BFQLU$o zV~Bzopr0QA6LQ~&?~ literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Mac/Resources/more@2x.png b/samples/Gallery/Xamarin.Forms/Mac/Resources/more@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..583f763050737f61c5546ff8643f70ef71a98583 GIT binary patch literal 370 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}c0*}aI z1_r)EAj~ML;ne^Xlq_+LC<)F_D=AMbN@XZW%*-p%%S$a$Fwry6Gcx?BkU15o=)I?l zV@QPi(Mz{E4+RLcJZ#w4*;|q6pzFLrB;WVNX0azr`EniaKjN8lV3*_t@#C%hPtt|` z7lp=NuUB0>xyR4Q>f{R*Oop<~1CHny)2H<&#`k!guF!pdu=?Y?wR6K5;sl=a#CBN! z`J`_0xuJ$5uDI1gyTkeuL-`5g#vO;3pWEEL!?@YTyu;ew_JGKzno@>+%PiDiINW*o z`dM~<+x&Kc@*l!63g?6#ojY#-P^xNastwEhS!_#F{|M(jVEBCL-j=4>I32avKXxxe Y!A;W>_DlQxfL>?tboFyt=akR{00`Wa82|tP literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Mac/Resources/more@3x.png b/samples/Gallery/Xamarin.Forms/Mac/Resources/more@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..67484aaaa567a80c78a6a59a3507399a64b38aa0 GIT binary patch literal 687 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)(C|TkfQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXJq(MA#*AN1Cx%Y zi(^Pd+|z4!yLuBPj(wacTQ;*szR7|?-dgD90+EH!IF4-NJ=M9v`KHsk2ASp!Cj}K| zN32_Y@B7=2U+SM#M)gj5y)NGOf8_UBHQc2S~FlOg9Z6^Y3SBr*!6tDmlk znK(H(`g-C{6HAk=rEi4fyZc}Eyb-LDJ;YIV+WDv2)0zpNovd};pHBTVsq)WPZcC*t zmx~J^Q`*E?2PSY!GAVKe-5d6vt{>z zh?|q{)lB{C^jr1+^XkX`OmC<0b=0Tj=W)K(Hwe3T>ckzvTl0TDj;(tW{W-X%cER@< zcc)IQRNk`xK*Ucy<c5#RDH+e7QQx>RDE>#(XZ?SSHM1`KV@gi_ zBCZ9SFSzXzh7K^Z}Gn8Eiu!A pKZVP+{*NX-TELN6yvD4Kxzy*5uT+LhEHH5~c)I$ztaD0e0swZBH3k3x literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/SkiaSharpSample.sln b/samples/Gallery/Xamarin.Forms/SkiaSharpSample.sln index a87a189e..6961b3bb 100644 --- a/samples/Gallery/Xamarin.Forms/SkiaSharpSample.sln +++ b/samples/Gallery/Xamarin.Forms/SkiaSharpSample.sln @@ -75,7 +75,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mac", "Mac\Mac.csproj", "{9 EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UWP", "UWP\UWP.csproj", "{99F08DB7-A06E-4814-BDD6-BB87DBE278AF}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SkiaSharpGallery.Tizen", "Tizen\SkiaSharpGallery.Tizen.csproj", "{A41BC5F6-3879-4708-816D-52DDF5B8F003}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TizenOS", "Tizen\TizenOS.csproj", "{A41BC5F6-3879-4708-816D-52DDF5B8F003}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HarfBuzzSharp.Tizen", "..\..\..\binding\HarfBuzzSharp.Tizen\HarfBuzzSharp.Tizen.csproj", "{D5495F6D-5654-4E83-8368-519AD142E7D9}" EndProject diff --git a/samples/Gallery/Xamarin.Forms/Tizen/SkiaSharpGallery.Tizen.cs b/samples/Gallery/Xamarin.Forms/Tizen/Program.cs old mode 100755 new mode 100644 similarity index 75% rename from samples/Gallery/Xamarin.Forms/Tizen/SkiaSharpGallery.Tizen.cs rename to samples/Gallery/Xamarin.Forms/Tizen/Program.cs index 73a7ecbd..275fcdde --- a/samples/Gallery/Xamarin.Forms/Tizen/SkiaSharpGallery.Tizen.cs +++ b/samples/Gallery/Xamarin.Forms/Tizen/Program.cs @@ -1,25 +1,25 @@ -using Xamarin.Forms.Platform.Tizen; - -namespace SkiaSharpSample.Platform -{ - class Program : FormsApplication - { - protected override void OnCreate() - { - base.OnCreate(); - - SamplesInitializer.Init(); - - LoadApplication(new App()); - } - - static void Main(string[] args) - { - var app = new Program(); - - Forms.Init(app); - - app.Run(args); - } - } -} +using Xamarin.Forms.Platform.Tizen; + +namespace SkiaSharpSample.Platform +{ + public class Program : FormsApplication + { + protected override void OnCreate() + { + base.OnCreate(); + + SamplesInitializer.Init(); + + LoadApplication(new App()); + } + + public static void Main(string[] args) + { + var app = new Program(); + + Forms.Init(app); + + app.Run(args); + } + } +} diff --git a/samples/Gallery/Xamarin.Forms/Tizen/SkiaSharpGallery.Tizen.csproj b/samples/Gallery/Xamarin.Forms/Tizen/TizenOS.csproj similarity index 98% rename from samples/Gallery/Xamarin.Forms/Tizen/SkiaSharpGallery.Tizen.csproj rename to samples/Gallery/Xamarin.Forms/Tizen/TizenOS.csproj index 0c2ef980..078e4c36 100644 --- a/samples/Gallery/Xamarin.Forms/Tizen/SkiaSharpGallery.Tizen.csproj +++ b/samples/Gallery/Xamarin.Forms/Tizen/TizenOS.csproj @@ -4,7 +4,7 @@ tizen40 Exe SkiaSharpSample.Platform - SkiaSharpGallery.Tizen + TizenOS diff --git a/samples/Gallery/Xamarin.Forms/Tizen/res/configure.png b/samples/Gallery/Xamarin.Forms/Tizen/res/configure.png new file mode 100644 index 0000000000000000000000000000000000000000..9b350808da51516d93047ea300f1fe82d6d48ea7 GIT binary patch literal 901 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC#^NA%Cx&(BWL^R}Ea{HEjtmSN z`?>!lvI6;>1s;*b3=DjSL74G){)!X^24*Qw7srqc=eM)$GlUC8j!(X^u-Tc7ot^z) zlPp)7fDVYu-rm@FRbqBxAz2AGkzq|MT?*BVWBRm{;-<{`_mk{UlOr_j==_Th9{!{VC zb(G^L@}H3UIsd}r*3L8AqSl(f;P`P*dntQT_*Aim_X0cHEthV&=)953_4{3(T?hWV zX4(p@`?)4AV%@?mE>o5yJFm@L5~w5QpHY@+3v&G#;s^S4ajn{W3;c;}h#f>U1vNTu+{OwYXYjHO21S}^D1{7c&-p6lN< zz9D|L&wCMDPIk25X3Z_#d!I3BCdjg{cwYBp#`HedOST&{a`!CzA%8QoQZ+Yb0#JnQ zoVWDhJ!S7brI#;Fp17s)ffm#JrNM{i-I#E7ZaSGwR9oo# zCtT+_$2m{wZ#^bbGeTGk4OYHik)WM?{o`MduhY*596Xuj`>Uh7_gkJ%qwdvBN!mr$ z1#=ITv)^>%tDV-q@$T07O5R@O2J^zZp5FKz`oqbvMx*HR^kP=!YQ>(Pg13{qpS1RW zcgQngro2(G;S{z_ zD)|c8pV&63;ih`ZcIV2!vXc4T+PX*BNS#|P?Y;M5{Wa4jp7<^I=$qTQeaz)6G)*K8 zc0SN8wm)&#{anVylLypV-emOsZ?*Z|e)`G5J8zheD<9b>?Q$Sp-ong4e2N_lSL^-> XIV)0@`sVBcW*r7kS3j3^P6G+w>K9uG8k|$JKp+RzD)F{Qu(us z8+jOxo~zrbeRs<=Mv!F;4P5`2GIg1kfY=P8e^@U?v3W2qICqBmVG$2kjP-p>khrI- KpUXO@geCwybutqG literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Tizen/res/more.png b/samples/Gallery/Xamarin.Forms/Tizen/res/more.png new file mode 100644 index 0000000000000000000000000000000000000000..abd89f7a898d2df5e3266237bcef31f87e2c8026 GIT binary patch literal 355 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCmUKs7M+SzC{oH>NS%G}c0*}aI z1_r)EAj~ML;ne^Xlq_+LC<)F_D=AMbN@XZW%*-p%%S$a$Fwry6Gcx?BkU15o=z*t; zV@QVc)hnJ{Oo2QM7wtOU?cK$E&!^DhfO#W_Z}9%tm>$bj4)cKj#zhQ2=1vVobW z&CfiO%~0R^E>Y(f`w8Y*XDu)IW!*g-@#)v+hHaDEx0Uw*)rWtYugI@ae<*xM%U=GE k*SED3=LVoF<&u9gPAaWtUsGzd5a?G1Pgg&ebxsLQ0PPurr~m)} literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Tizen/res/slideshow.png b/samples/Gallery/Xamarin.Forms/Tizen/res/slideshow.png new file mode 100644 index 0000000000000000000000000000000000000000..a5459ccea0b074af887ecfee989ebdd715f28971 GIT binary patch literal 954 zcmV;r14aCaP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D15ZgrK~!i%?U_Gl z6hRop@6IbySXiX6NMVr_fmj3-B1AA?KtVyUQBX(`LBZk#iwOQjixh#_DMYYPh@DCV zl{5hbQwR|fh>$B%q%)8d0RuS_e{bfy<$^-o&CdOSeeiC+dApl^?{;=}_L9qxVSmV5 zo7>sh8G;un`}6tyA+I(U@V8F$9lpoob69Z!wzs!m(Yd0!RX~^-JP#hwH&1cj^p*jh zkKlbv-~JSZ1N9`$VcVzafVXx$jytn}dR_t6tS>aJ`6}?(=B;|<^uv0lC8bZvr?N;iK&B9gdYTFr_c|tr!Kj_tP*!NA0;m@!Ov(I70v^IE` z{vtsxxg7%`m01Y0>xDw$24yd%zk1c_9dMEm)3C?nRFUd5N{9t`k`PznipdIcnnp90 z)-kCr)l&^n1tDHzx*M~ja8nxnA}rBgghOt}6c8kUfY}X#+@U;*;ZI(5x)zKtxf&wG^R00GCaQh2Q}&s26dWmU+!Q4(O}!8u!Er^dBb2Mz8>wD`H#^ zE)ADqlciVSQ?xG3zc4v5f&{>zW|cWij>Bl_fHp(Zi}73N8u$A~ssZ@MJK!Yc7Ys&= zH;k{q%NQSk3nr(6R03eG2uCOvF&-_S(Kg{IS~tcM%`$s}6GSj+Pq6Dle?;^KrUlwA zpiRLbZ)SE1heQD|rknGhP#CDUvS6@NIV26xV~0dQTZ6YL6Rm0Dz@O10Q2+t6CHNcu zg3ma-ZojK~w;tJVqm4!upwTEWoHnf1*lNmu?$rX1yJk6EfmvU=jSpaBex&^m$UH1r zSN(Ec(;<`3xM?i~0*q-IRjO%1oHD&7fajlhK3?FX0te9^A*Q-g3;{fr;h4E-+ cArW%9KU1FeS__$Zf&c&j07*qoM6N<$f`f^tF#rGn literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Tizen/shared/res/SkiaSharpGallery.Tizen.png b/samples/Gallery/Xamarin.Forms/Tizen/shared/res/SkiaSharpGallery.Tizen.png deleted file mode 100755 index 9f3cb98608134e7b9eb4beb7394fec9f03e40f63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10097 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 TJbOA100000NkvXXu0mjf?x(Kf diff --git a/samples/Gallery/Xamarin.Forms/Tizen/shared/res/TizenOS.png b/samples/Gallery/Xamarin.Forms/Tizen/shared/res/TizenOS.png new file mode 100644 index 0000000000000000000000000000000000000000..f53e59e953c28ac9d0ad65924402ffc5d0c8b8cd GIT binary patch literal 5788 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 SQ51OV3^CF()veNY#QqO?+}s=h literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/Tizen/tizen-manifest.xml b/samples/Gallery/Xamarin.Forms/Tizen/tizen-manifest.xml index 88fce445..ec21f49e 100755 --- a/samples/Gallery/Xamarin.Forms/Tizen/tizen-manifest.xml +++ b/samples/Gallery/Xamarin.Forms/Tizen/tizen-manifest.xml @@ -1,10 +1,13 @@  - + - - - SkiaSharpGallery.Tizen.png + + + TizenOS.png + + http://tizen.org/privilege/appmanager.launch + diff --git a/samples/Gallery/Xamarin.Forms/UWP/App.xaml.cs b/samples/Gallery/Xamarin.Forms/UWP/App.xaml.cs index 23e72b89..4a826914 100644 --- a/samples/Gallery/Xamarin.Forms/UWP/App.xaml.cs +++ b/samples/Gallery/Xamarin.Forms/UWP/App.xaml.cs @@ -41,10 +41,10 @@ namespace SkiaSharpSample.Platform { #if DEBUG - if (System.Diagnostics.Debugger.IsAttached) - { - this.DebugSettings.EnableFrameRateCounter = true; - } + if (System.Diagnostics.Debugger.IsAttached) + { + this.DebugSettings.EnableFrameRateCounter = true; + } #endif Frame rootFrame = Window.Current.Content as Frame; diff --git a/samples/Gallery/Xamarin.Forms/UWP/Assets/more.png b/samples/Gallery/Xamarin.Forms/UWP/Assets/more.png new file mode 100644 index 0000000000000000000000000000000000000000..916fe67741e03725d78f9aa2280570602e6b3cdd GIT binary patch literal 2087 zcmbtV`#TegA0E;$mmRB?*_b*jN(vzoMiR=UqG7I~Gxxbf&2hKYDVJ|WV#Yb4?^Bq2 zShi&@rE=@I%x#!!&YC6LigDJz@csVqzVGvXet4hH5AXB5_uO0@RFq&!002P6@#6U_ zQce2_g}qW{Sp~kA%AT9(%V+?gJ`c1VC@=MjF&Dk!007m_pOD$F>y#!vYQ)=P;;%-B z#wP~Gh5%v$aZ&LGQ6cfj(*~yuj0^=xTmb+8tZ+P!zLw<2E5Ut0cpykVtGP8zHqJO_ zP_`S>_7^2|q+u4=S`UfVEy>6TCXSjlA|z;6v;}$ z+GtMi33gf9jdjrC8YN)oOutblb`T4c<@u;pUxonvITvffqViF{{h3&>O);lcI8E;tPx85w^f9sEulUgeMdmuw4Vut6E z9Mk;dyo&hu)4W0yHc}y41((VK4tuWzZ9{8~`8%^~9!Z+C!3)B9wdr6$iN%8nPZ@pqnibi%-_V_y`=U2_LeC4Kobq+!^i zJiKXwuQogZw2)o= zMp@yhkGxl;k4Fl&Z_KbODf?q{L|#v%v#A}iN$3c7t3PnNujsOkzJEx~D%_-cYUyE= z57yS3${X<4Vl}Vo+7jN+3?R?1-mx@%pUPI>xZ{KTBY3SYq+no)3aA zS11$UmlA+J_mmnF2_8ssan%Myw~P$-jt4_x_KxCYUAj-pOcOt7^7s5jjdlnubty-f z_6}*LV^qhq`lB4=PWpi?0PzUZ5yfwQn=O!wOT01WmSEa*HOxkt)0UdPb)$65=H_;U z_V3x@pG{)i75z1aTm0k{S1~D9sp+DI@YfXj-l!ba3uknP1b2NjgSH{1g*9iv3r*C_ zt5$B>LVId1ZpiDygdDn}EQ?MtH32ul895y#5MdB2HHvvMomf zIf-+1a*ZDyZA{p^-t2h5a(W@yRn$SghhCLH7a3Ho4um zdKN=Jj-A03(6z-gVY}|zCL~gj88oZ4mGxrVenU%PKySIY$FZ^png#yUoGMJfDs%UY z2Q)7^_2VVXfg$tk%i-vYno5h^Y&mOS^ul-wn&4QJsb`RQN2%08h!7s?$4>|F!cviU z`6{mvub$RBFzQi(qu7)&Z}kgp$JEYyq+4#kX@&QDpkI}nPO>@jb z=8G>h{g0?fiZT4Yt;3)9Z4s^BZ+HHT@MX@Qiqm=3B>t(&tZev8L7 ye&<#R^K=SvtW;(8w~6on$JG6t$x_3huIFUvIVbqjAnC#b0FL%9=WA^PGX4b-py})Y literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/UWP/UWP.csproj b/samples/Gallery/Xamarin.Forms/UWP/UWP.csproj index 7c09df93..3e584b87 100644 --- a/samples/Gallery/Xamarin.Forms/UWP/UWP.csproj +++ b/samples/Gallery/Xamarin.Forms/UWP/UWP.csproj @@ -151,6 +151,7 @@ Always + diff --git a/samples/Gallery/Xamarin.Forms/iOS/Resources/more.png b/samples/Gallery/Xamarin.Forms/iOS/Resources/more.png new file mode 100644 index 0000000000000000000000000000000000000000..f0fd852c0f7ad971ab8c141409c31f6df867f50e GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)(C|TkfQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXJq(MA#*BFQLU$o zV~Bzopr0QA6LQ~&?~ literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/iOS/Resources/more@2x.png b/samples/Gallery/Xamarin.Forms/iOS/Resources/more@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..583f763050737f61c5546ff8643f70ef71a98583 GIT binary patch literal 370 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}c0*}aI z1_r)EAj~ML;ne^Xlq_+LC<)F_D=AMbN@XZW%*-p%%S$a$Fwry6Gcx?BkU15o=)I?l zV@QPi(Mz{E4+RLcJZ#w4*;|q6pzFLrB;WVNX0azr`EniaKjN8lV3*_t@#C%hPtt|` z7lp=NuUB0>xyR4Q>f{R*Oop<~1CHny)2H<&#`k!guF!pdu=?Y?wR6K5;sl=a#CBN! z`J`_0xuJ$5uDI1gyTkeuL-`5g#vO;3pWEEL!?@YTyu;ew_JGKzno@>+%PiDiINW*o z`dM~<+x&Kc@*l!63g?6#ojY#-P^xNastwEhS!_#F{|M(jVEBCL-j=4>I32avKXxxe Y!A;W>_DlQxfL>?tboFyt=akR{00`Wa82|tP literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/iOS/Resources/more@3x.png b/samples/Gallery/Xamarin.Forms/iOS/Resources/more@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..67484aaaa567a80c78a6a59a3507399a64b38aa0 GIT binary patch literal 687 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)(C|TkfQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QBXJq(MA#*AN1Cx%Y zi(^Pd+|z4!yLuBPj(wacTQ;*szR7|?-dgD90+EH!IF4-NJ=M9v`KHsk2ASp!Cj}K| zN32_Y@B7=2U+SM#M)gj5y)NGOf8_UBHQc2S~FlOg9Z6^Y3SBr*!6tDmlk znK(H(`g-C{6HAk=rEi4fyZc}Eyb-LDJ;YIV+WDv2)0zpNovd};pHBTVsq)WPZcC*t zmx~J^Q`*E?2PSY!GAVKe-5d6vt{>z zh?|q{)lB{C^jr1+^XkX`OmC<0b=0Tj=W)K(Hwe3T>ckzvTl0TDj;(tW{W-X%cER@< zcc)IQRNk`xK*Ucy<c5#RDH+e7QQx>RDE>#(XZ?SSHM1`KV@gi_ zBCZ9SFSzXzh7K^Z}Gn8Eiu!A pKZVP+{*NX-TELN6yvD4Kxzy*5uT+LhEHH5~c)I$ztaD0e0swZBH3k3x literal 0 HcmV?d00001 diff --git a/samples/Gallery/Xamarin.Forms/iOS/iOS.csproj b/samples/Gallery/Xamarin.Forms/iOS/iOS.csproj index d6602684..abb5e462 100644 --- a/samples/Gallery/Xamarin.Forms/iOS/iOS.csproj +++ b/samples/Gallery/Xamarin.Forms/iOS/iOS.csproj @@ -157,6 +157,9 @@ + + + From 0670c6acc2c4b234094e788a2f1f683ab6201afe Mon Sep 17 00:00:00 2001 From: Matthew Leibowitz Date: Thu, 10 May 2018 23:43:26 +0200 Subject: [PATCH 2/2] We NEED to bump the HarfBuzzSharp NuGet as it now has Tizen --- VERSIONS.txt | 4 +- .../FrameworksIndex/harfbuzzsharp-1.4.6.1.xml | 72 +++++++++++++++++++ 2 files changed, 74 insertions(+), 2 deletions(-) create mode 100644 docs/en/FrameworksIndex/harfbuzzsharp-1.4.6.1.xml diff --git a/VERSIONS.txt b/VERSIONS.txt index 871e74c0..48534d8b 100644 --- a/VERSIONS.txt +++ b/VERSIONS.txt @@ -19,11 +19,11 @@ SkiaSharp file 1.60.1.0 # HarfBuzzSharp.dll HarfBuzzSharp assembly 1.0.0.0 -HarfBuzzSharp file 1.4.6.0 +HarfBuzzSharp file 1.4.6.1 # nuget versions SkiaSharp nuget 1.60.1 SkiaSharp.Views nuget 1.60.1 SkiaSharp.Views.Forms nuget 1.60.1 SkiaSharp.HarfBuzz nuget 1.60.1 -HarfBuzzSharp nuget 1.4.6 +HarfBuzzSharp nuget 1.4.6.1 diff --git a/docs/en/FrameworksIndex/harfbuzzsharp-1.4.6.1.xml b/docs/en/FrameworksIndex/harfbuzzsharp-1.4.6.1.xml new file mode 100644 index 00000000..75bccc7d --- /dev/null +++ b/docs/en/FrameworksIndex/harfbuzzsharp-1.4.6.1.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +