├── src ├── .mfractor │ └── .suavecontrols.db ├── SuaveControls.FloatingActionButton │ ├── SuaveControls.FloatingActionButton.iOS-old │ │ ├── packages.config │ │ ├── Properties │ │ │ └── AssemblyInfo.cs │ │ ├── Renderers │ │ │ └── FloatingActionButtonRenderer.cs │ │ └── SuaveControls.FloatingActionButton.iOS.csproj │ ├── SuaveControls.FloatingActionButton.UWP │ │ ├── Assets │ │ │ ├── StoreLogo.png │ │ │ ├── SplashScreen.scale-100.png │ │ │ ├── SplashScreen.scale-125.png │ │ │ ├── SplashScreen.scale-150.png │ │ │ ├── SplashScreen.scale-200.png │ │ │ ├── SplashScreen.scale-400.png │ │ │ ├── LockScreenLogo.scale-100.png │ │ │ ├── LockScreenLogo.scale-125.png │ │ │ ├── LockScreenLogo.scale-150.png │ │ │ ├── LockScreenLogo.scale-200.png │ │ │ ├── LockScreenLogo.scale-400.png │ │ │ ├── Square150x150Logo.scale-100.png │ │ │ ├── Square150x150Logo.scale-125.png │ │ │ ├── Square150x150Logo.scale-150.png │ │ │ ├── Square150x150Logo.scale-200.png │ │ │ ├── Square150x150Logo.scale-400.png │ │ │ ├── Square44x44Logo.scale-100.png │ │ │ ├── Square44x44Logo.scale-125.png │ │ │ ├── Square44x44Logo.scale-150.png │ │ │ ├── Square44x44Logo.scale-200.png │ │ │ ├── Square44x44Logo.scale-400.png │ │ │ ├── Wide310x150Logo.scale-100.png │ │ │ ├── Wide310x150Logo.scale-125.png │ │ │ ├── Wide310x150Logo.scale-150.png │ │ │ ├── Wide310x150Logo.scale-200.png │ │ │ ├── Wide310x150Logo.scale-400.png │ │ │ ├── Square44x44Logo.targetsize-16_altform-unplated.png │ │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png │ │ │ ├── Square44x44Logo.targetsize-256_altform-unplated.png │ │ │ ├── Square44x44Logo.targetsize-32_altform-unplated.png │ │ │ └── Square44x44Logo.targetsize-48_altform-unplated.png │ │ ├── App.xaml │ │ ├── project.json │ │ ├── MainPage.xaml │ │ ├── MainPage.xaml.cs │ │ ├── Properties │ │ │ ├── AssemblyInfo.cs │ │ │ └── Default.rd.xml │ │ ├── Package.appxmanifest │ │ ├── App.xaml.cs │ │ └── SuaveControls.FloatingActionButton.UWP.csproj │ └── SuaveControls.FloatingActionButton │ │ ├── FloatingActionButton.xaml │ │ ├── packages.config │ │ ├── FloatingActionButton.xaml.cs │ │ ├── Properties │ │ └── AssemblyInfo.cs │ │ └── SuaveControls.FloatingActionButton.csproj ├── SuaveControls.FloatingActionButton.Droid │ ├── Resources │ │ ├── Values │ │ │ └── Strings.xml │ │ └── AboutResources.txt │ ├── packages.config │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Renderers │ │ └── FloatingActionButtonRenderer.cs │ └── SuaveControls.FloatingActionButton.Droid.csproj ├── SuaveControls.FloatingActionButton.iOS │ ├── packages.config │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Renderers │ │ └── FloatingActionButtonRenderer.cs │ └── SuaveControls.FloatingActionButton.iOS.csproj ├── SuaveControls.FloatingActionButton.NuGet │ └── SuaveControls.FloatingActionButton.NuGet.nuproj └── SuaveControls.sln ├── Example └── SuaveControls.FabExample │ ├── SuaveControls.FabExample.iOS │ ├── iTunesArtwork │ ├── iTunesArtwork@2x │ ├── Resources │ │ ├── Default.png │ │ ├── Icon-76.png │ │ ├── Default@2x.png │ │ ├── Icon-60@2x.png │ │ ├── Icon-60@3x.png │ │ ├── Icon-76@2x.png │ │ ├── Icon-Small.png │ │ ├── ic_add_white.png │ │ ├── Default-568h@2x.png │ │ ├── Icon-Small-40.png │ │ ├── Icon-Small@2x.png │ │ ├── Icon-Small@3x.png │ │ ├── ic_add_white@2x.png │ │ ├── ic_add_white@3x.png │ │ ├── Default-Portrait.png │ │ ├── Icon-Small-40@2x.png │ │ ├── Icon-Small-40@3x.png │ │ ├── Default-Portrait@2x.png │ │ └── LaunchScreen.storyboard │ ├── Entitlements.plist │ ├── packages.config │ ├── Main.cs │ ├── AppDelegate.cs │ ├── Properties │ │ └── AssemblyInfo.cs │ ├── Info.plist │ └── SuaveControls.FabExample.iOS.csproj │ ├── SuaveControls.FabExample.UWP │ ├── Assets │ │ ├── StoreLogo.png │ │ ├── SplashScreen.scale-100.png │ │ ├── SplashScreen.scale-125.png │ │ ├── SplashScreen.scale-150.png │ │ ├── SplashScreen.scale-200.png │ │ ├── SplashScreen.scale-400.png │ │ ├── LockScreenLogo.scale-100.png │ │ ├── LockScreenLogo.scale-125.png │ │ ├── LockScreenLogo.scale-150.png │ │ ├── LockScreenLogo.scale-200.png │ │ ├── LockScreenLogo.scale-400.png │ │ ├── Square44x44Logo.scale-100.png │ │ ├── Square44x44Logo.scale-125.png │ │ ├── Square44x44Logo.scale-150.png │ │ ├── Square44x44Logo.scale-200.png │ │ ├── Square44x44Logo.scale-400.png │ │ ├── Wide310x150Logo.scale-100.png │ │ ├── Wide310x150Logo.scale-125.png │ │ ├── Wide310x150Logo.scale-150.png │ │ ├── Wide310x150Logo.scale-200.png │ │ ├── Wide310x150Logo.scale-400.png │ │ ├── Square150x150Logo.scale-100.png │ │ ├── Square150x150Logo.scale-125.png │ │ ├── Square150x150Logo.scale-150.png │ │ ├── Square150x150Logo.scale-200.png │ │ ├── Square150x150Logo.scale-400.png │ │ ├── Square44x44Logo.targetsize-16_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-256_altform-unplated.png │ │ ├── Square44x44Logo.targetsize-32_altform-unplated.png │ │ └── Square44x44Logo.targetsize-48_altform-unplated.png │ ├── App.xaml │ ├── project.json │ ├── MainPage.xaml │ ├── MainPage.xaml.cs │ ├── Properties │ │ ├── AssemblyInfo.cs │ │ └── Default.rd.xml │ ├── Package.appxmanifest │ ├── App.xaml.cs │ └── SuaveControls.FabExample.UWP.csproj │ ├── SuaveControls.FabExample.Android │ ├── Resources │ │ ├── drawable │ │ │ └── icon.png │ │ ├── drawable-hdpi │ │ │ ├── icon.png │ │ │ └── ic_add_white.png │ │ ├── drawable-xhdpi │ │ │ ├── icon.png │ │ │ └── ic_add_white.png │ │ ├── drawable-xxhdpi │ │ │ ├── icon.png │ │ │ └── ic_add_white.png │ │ ├── drawable-mdpi │ │ │ └── ic_add_white.png │ │ ├── drawable-xxxhdpi │ │ │ └── ic_add_white.png │ │ ├── layout │ │ │ ├── Toolbar.axml │ │ │ └── Tabbar.axml │ │ ├── values │ │ │ └── styles.xml │ │ └── AboutResources.txt │ ├── Properties │ │ ├── AndroidManifest.xml │ │ └── AssemblyInfo.cs │ ├── Assets │ │ └── AboutAssets.txt │ ├── MainActivity.cs │ ├── packages.config │ └── SuaveControls.FabExample.Android.csproj │ └── SuaveControls.FabExample │ ├── packages.config │ ├── App.xaml │ ├── MainPage.xaml.cs │ ├── App.xaml.cs │ ├── MainPage.xaml │ ├── Properties │ └── AssemblyInfo.cs │ └── SuaveControls.FabExample.csproj ├── LICENSE ├── README.md ├── .gitattributes └── .gitignore /src/.mfractor/.suavecontrols.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/.mfractor/.suavecontrols.db -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/iTunesArtwork: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/iTunesArtwork -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/iTunesArtwork@2x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/iTunesArtwork@2x -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/StoreLogo.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-76.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.iOS-old/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default@2x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-60@2x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-60@3x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-76@2x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/ic_add_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/ic_add_white.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default-568h@2x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small-40.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small@2x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small@3x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/ic_add_white@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/ic_add_white@2x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/ic_add_white@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/ic_add_white@3x.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton.Droid/Resources/Values/Strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Hello World, Click Me! 4 | $projectname$ 5 | 6 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable/icon.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default-Portrait.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default-Portrait.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small-40@2x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Icon-Small-40@3x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-100.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-125.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-150.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/SplashScreen.scale-400.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default-Portrait@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Resources/Default-Portrait@2x.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-100.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-125.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-150.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/LockScreenLogo.scale-400.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-100.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-125.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-150.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.scale-400.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-100.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-125.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-150.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Wide310x150Logo.scale-400.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/StoreLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/StoreLogo.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xhdpi/icon.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xxhdpi/icon.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-100.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-125.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-150.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square150x150Logo.scale-400.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Entitlements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-hdpi/ic_add_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-hdpi/ic_add_white.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-mdpi/ic_add_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-mdpi/ic_add_white.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xhdpi/ic_add_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xhdpi/ic_add_white.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xxhdpi/ic_add_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xxhdpi/ic_add_white.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xxxhdpi/ic_add_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/drawable-xxxhdpi/ic_add_white.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-100.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-125.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-150.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-200.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/SplashScreen.scale-400.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-100.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-125.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-150.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-200.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/LockScreenLogo.scale-400.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-100.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-125.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-150.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-200.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square150x150Logo.scale-400.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-100.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-125.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-150.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-200.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.scale-400.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-100.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-125.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-150.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-200.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-200.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Wide310x150Logo.scale-400.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-16_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-16_altform-unplated.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-256_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-256_altform-unplated.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-32_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-32_altform-unplated.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-48_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Assets/Square44x44Logo.targetsize-48_altform-unplated.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton.iOS/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton/FloatingActionButton.xaml: -------------------------------------------------------------------------------- 1 | 2 | 7 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-16_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-16_altform-unplated.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-256_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-256_altform-unplated.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-32_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-32_altform-unplated.png -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-48_altform-unplated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SuavePirate/Xamarin.Forms.Controls.FloatingActionButton/HEAD/src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Assets/Square44x44Logo.targetsize-48_altform-unplated.png -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Properties/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/App.xaml: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample/App.xaml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2", 4 | "Xamarin.Forms": "2.3.4.224" 5 | }, 6 | "frameworks": { 7 | "uap10.0": {} 8 | }, 9 | "runtimes": { 10 | "win10-arm": {}, 11 | "win10-arm-aot": {}, 12 | "win10-x86": {}, 13 | "win10-x86-aot": {}, 14 | "win10-x64": {}, 15 | "win10-x64-aot": {} 16 | } 17 | } -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/project.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2", 4 | "Xamarin.Forms": "2.3.4.224" 5 | }, 6 | "frameworks": { 7 | "uap10.0": {} 8 | }, 9 | "runtimes": { 10 | "win10-arm": {}, 11 | "win10-arm-aot": {}, 12 | "win10-x86": {}, 13 | "win10-x86-aot": {}, 14 | "win10-x64": {}, 15 | "win10-x64-aot": {} 16 | } 17 | } -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/layout/Toolbar.axml: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Main.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | 5 | using Foundation; 6 | using UIKit; 7 | 8 | namespace SuaveControls.FabExample.iOS 9 | { 10 | public class Application 11 | { 12 | // This is the main entry point of the application. 13 | static void Main(string[] args) 14 | { 15 | // if you want to use a different Application Delegate class from "AppDelegate" 16 | // you can specify it here. 17 | UIApplication.Main(args, null, "AppDelegate"); 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/layout/Tabbar.axml: -------------------------------------------------------------------------------- 1 | 2 | 12 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Xamarin.Forms; 7 | 8 | namespace SuaveControls.FabExample 9 | { 10 | public partial class MainPage : ContentPage 11 | { 12 | public MainPage() 13 | { 14 | InitializeComponent(); 15 | 16 | } 17 | 18 | private async void Button_Clicked(object sender, EventArgs e) 19 | { 20 | await DisplayAlert("FAB Clicked!", "Congrats on creating your FAB!", "Thanks!"); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Assets/AboutAssets.txt: -------------------------------------------------------------------------------- 1 | Any raw assets you want to be deployed with your application can be placed in 2 | this directory (and child directories) and given a Build Action of "AndroidAsset". 3 | 4 | These files will be deployed with you package and will be accessible using Android's 5 | AssetManager, like this: 6 | 7 | public class ReadAsset : Activity 8 | { 9 | protected override void OnCreate (Bundle bundle) 10 | { 11 | base.OnCreate (bundle); 12 | 13 | InputStream input = Assets.Open ("my_asset.txt"); 14 | } 15 | } 16 | 17 | Additionally, some Android functions will automatically load asset files: 18 | 19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf"); 20 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | namespace SuaveControls.FabExample.UWP 17 | { 18 | public sealed partial class MainPage 19 | { 20 | public MainPage() 21 | { 22 | this.InitializeComponent(); 23 | 24 | LoadApplication(new SuaveControls.FabExample.App()); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample/App.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Xamarin.Forms; 7 | 8 | namespace SuaveControls.FabExample 9 | { 10 | public partial class App : Application 11 | { 12 | public App() 13 | { 14 | InitializeComponent(); 15 | 16 | MainPage = new SuaveControls.FabExample.MainPage(); 17 | } 18 | 19 | protected override void OnStart() 20 | { 21 | // Handle when your app starts 22 | } 23 | 24 | protected override void OnSleep() 25 | { 26 | // Handle when your app sleeps 27 | } 28 | 29 | protected override void OnResume() 30 | { 31 | // Handle when your app resumes 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/MainPage.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.IO; 4 | using System.Linq; 5 | using System.Runtime.InteropServices.WindowsRuntime; 6 | using Windows.Foundation; 7 | using Windows.Foundation.Collections; 8 | using Windows.UI.Xaml; 9 | using Windows.UI.Xaml.Controls; 10 | using Windows.UI.Xaml.Controls.Primitives; 11 | using Windows.UI.Xaml.Data; 12 | using Windows.UI.Xaml.Input; 13 | using Windows.UI.Xaml.Media; 14 | using Windows.UI.Xaml.Navigation; 15 | 16 | namespace SuaveControls.FloatingActionButton.UWP 17 | { 18 | public sealed partial class MainPage 19 | { 20 | public MainPage() 21 | { 22 | this.InitializeComponent(); 23 | 24 | LoadApplication(new SuaveControls.FloatingActionButton.App()); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample/MainPage.xaml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 14 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton/FloatingActionButton.xaml.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | using Xamarin.Forms; 8 | 9 | namespace SuaveControls.Views 10 | { 11 | public partial class FloatingActionButton : Button 12 | { 13 | public static BindableProperty ButtonColorProperty = BindableProperty.Create(nameof(ButtonColor), typeof(Color), typeof(FloatingActionButton), Color.Accent); 14 | public Color ButtonColor 15 | { 16 | get 17 | { 18 | return (Color)GetValue(ButtonColorProperty); 19 | } 20 | set 21 | { 22 | SetValue(ButtonColorProperty, value); 23 | } 24 | } 25 | public FloatingActionButton() 26 | { 27 | InitializeComponent(); 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/MainActivity.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | 3 | using Android.App; 4 | using Android.Content.PM; 5 | using Android.Runtime; 6 | using Android.Views; 7 | using Android.Widget; 8 | using Android.OS; 9 | 10 | namespace SuaveControls.FabExample.Droid 11 | { 12 | [Activity(Label = "SuaveControls.FabExample", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] 13 | public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity 14 | { 15 | protected override void OnCreate(Bundle bundle) 16 | { 17 | TabLayoutResource = Resource.Layout.Tabbar; 18 | ToolbarResource = Resource.Layout.Toolbar; 19 | 20 | base.OnCreate(bundle); 21 | 22 | global::Xamarin.Forms.Forms.Init(this, bundle); 23 | LoadApplication(new App()); 24 | } 25 | } 26 | } 27 | 28 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Alex Dunn 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton.Droid/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("SuaveControls.FabExample.UWP")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("SuaveControls.FabExample.UWP")] 13 | [assembly: AssemblyCopyright("Copyright © 2015")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Version information for an assembly consists of the following four values: 18 | // 19 | // Major Version 20 | // Minor Version 21 | // Build Number 22 | // Revision 23 | // 24 | // You can specify all the values or you can default the Build and Revision Numbers 25 | // by using the '*' as shown below: 26 | // [assembly: AssemblyVersion("1.0.*")] 27 | [assembly: AssemblyVersion("1.0.0.0")] 28 | [assembly: AssemblyFileVersion("1.0.0.0")] 29 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Resources; 2 | using System.Reflection; 3 | using System.Runtime.CompilerServices; 4 | using System.Runtime.InteropServices; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("SuaveControls.FabExample")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("SuaveControls.FabExample")] 14 | [assembly: AssemblyCopyright("Copyright © 2014")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: NeutralResourcesLanguage("en")] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton.Droid/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("SuaveControls.FloatingActionButton.Droid")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("SuaveControls.FloatingActionButton.Droid")] 14 | [assembly: AssemblyCopyright("Copyright © 2017")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("SuaveControls.FloatingActionButton.UWP")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("SuaveControls.FloatingActionButton.UWP")] 13 | [assembly: AssemblyCopyright("Copyright © 2015")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Version information for an assembly consists of the following four values: 18 | // 19 | // Major Version 20 | // Minor Version 21 | // Build Number 22 | // Revision 23 | // 24 | // You can specify all the values or you can default the Build and Revision Numbers 25 | // by using the '*' as shown below: 26 | // [assembly: AssemblyVersion("1.0.*")] 27 | [assembly: AssemblyVersion("1.0.0.0")] 28 | [assembly: AssemblyFileVersion("1.0.0.0")] 29 | [assembly: ComVisible(false)] -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Resources; 2 | using System.Reflection; 3 | using System.Runtime.CompilerServices; 4 | using System.Runtime.InteropServices; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("SuaveControls.FloatingActionButton")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("SuaveControls.FloatingActionButton")] 14 | [assembly: AssemblyCopyright("Copyright © 2014")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: NeutralResourcesLanguage("en")] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/AppDelegate.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | 5 | using Foundation; 6 | using UIKit; 7 | using SuaveControls.FloatingActionButton.iOS.Renderers; 8 | 9 | namespace SuaveControls.FabExample.iOS 10 | { 11 | // The UIApplicationDelegate for the application. This class is responsible for launching the 12 | // User Interface of the application, as well as listening (and optionally responding) to 13 | // application events from iOS. 14 | [Register("AppDelegate")] 15 | public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate 16 | { 17 | // 18 | // This method is invoked when the application has loaded and is ready to run. In this 19 | // method you should instantiate the window, load the UI into it and then make the window 20 | // visible. 21 | // 22 | // You have 17 seconds to return from this method, or iOS will terminate your application. 23 | // 24 | public override bool FinishedLaunching(UIApplication app, NSDictionary options) 25 | { 26 | global::Xamarin.Forms.Forms.Init(); 27 | LoadApplication(new App()); 28 | FloatingActionButtonRenderer.InitRenderer(); 29 | 30 | return base.FinishedLaunching(app, options); 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Properties/Default.rd.xml: -------------------------------------------------------------------------------- 1 | 17 | 18 | 19 | 20 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Properties/Default.rd.xml: -------------------------------------------------------------------------------- 1 | 17 | 18 | 19 | 20 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | using Android.App; 5 | 6 | // General Information about an assembly is controlled through the following 7 | // set of attributes. Change these attribute values to modify the information 8 | // associated with an assembly. 9 | [assembly: AssemblyTitle("SuaveControls.FabExample.Android")] 10 | [assembly: AssemblyDescription("")] 11 | [assembly: AssemblyConfiguration("")] 12 | [assembly: AssemblyCompany("")] 13 | [assembly: AssemblyProduct("SuaveControls.FabExample.Android")] 14 | [assembly: AssemblyCopyright("Copyright © 2014")] 15 | [assembly: AssemblyTrademark("")] 16 | [assembly: AssemblyCulture("")] 17 | [assembly: ComVisible(false)] 18 | 19 | // Version information for an assembly consists of the following four values: 20 | // 21 | // Major Version 22 | // Minor Version 23 | // Build Number 24 | // Revision 25 | // 26 | // You can specify all the values or you can default the Build and Revision Numbers 27 | // by using the '*' as shown below: 28 | // [assembly: AssemblyVersion("1.0.*")] 29 | [assembly: AssemblyVersion("1.0.0.0")] 30 | [assembly: AssemblyFileVersion("1.0.0.0")] 31 | 32 | // Add some common permissions, these can be removed if not needed 33 | [assembly: UsesPermission(Android.Manifest.Permission.Internet)] 34 | [assembly: UsesPermission(Android.Manifest.Permission.WriteExternalStorage)] 35 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 26 | 27 | 30 | 31 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("SuaveControls.FabExample.iOS")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("SuaveControls.FabExample.iOS")] 13 | [assembly: AssemblyCopyright("Copyright © 2014")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("72bdc44f-c588-44f3-b6df-9aace7daafdd")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton.iOS/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("SuaveControls.FloatingActionButton.iOS")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("SuaveControls.FloatingActionButton.iOS")] 13 | [assembly: AssemblyCopyright("Copyright © 2017")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("de0a4100-2b5b-46de-8277-5e78c1bbc8f7")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.iOS-old/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // General Information about an assembly is controlled through the following 6 | // set of attributes. Change these attribute values to modify the information 7 | // associated with an assembly. 8 | [assembly: AssemblyTitle("SuaveControls.FloatingActionButton.iOS")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("SuaveControls.FloatingActionButton.iOS")] 13 | [assembly: AssemblyCopyright("Copyright © 2014")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // Setting ComVisible to false makes the types in this assembly not visible 18 | // to COM components. If you need to access a type in this assembly from 19 | // COM, set the ComVisible attribute to true on that type. 20 | [assembly: ComVisible(false)] 21 | 22 | // The following GUID is for the ID of the typelib if this project is exposed to COM 23 | [assembly: Guid("72bdc44f-c588-44f3-b6df-9aace7daafdd")] 24 | 25 | // Version information for an assembly consists of the following four values: 26 | // 27 | // Major Version 28 | // Minor Version 29 | // Build Number 30 | // Revision 31 | // 32 | // You can specify all the values or you can default the Build and Revision Numbers 33 | // by using the '*' as shown below: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.UWP/Package.appxmanifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | 15 | 16 | 17 | SuaveControls.FabExample.UWP 18 | alexa 19 | Assets\StoreLogo.png 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 34 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton.Droid/Resources/AboutResources.txt: -------------------------------------------------------------------------------- 1 | Images, layout descriptions, binary blobs and string dictionaries can be included 2 | in your application as resource files. Various Android APIs are designed to 3 | operate on the resource IDs instead of dealing with images, strings or binary blobs 4 | directly. 5 | 6 | For example, a sample Android app that contains a user interface layout (main.axml), 7 | an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png) 8 | would keep its resources in the "Resources" directory of the application: 9 | 10 | Resources/ 11 | drawable/ 12 | icon.png 13 | 14 | layout/ 15 | main.axml 16 | 17 | values/ 18 | strings.xml 19 | 20 | In order to get the build system to recognize Android resources, set the build action to 21 | "AndroidResource". The native Android APIs do not operate directly with filenames, but 22 | instead operate on resource IDs. When you compile an Android application that uses resources, 23 | the build system will package the resources for distribution and generate a class called "R" 24 | (this is an Android convention) that contains the tokens for each one of the resources 25 | included. For example, for the above Resources layout, this is what the R class would expose: 26 | 27 | public class R { 28 | public class drawable { 29 | public const int icon = 0x123; 30 | } 31 | 32 | public class layout { 33 | public const int main = 0x456; 34 | } 35 | 36 | public class strings { 37 | public const int first_string = 0xabc; 38 | public const int second_string = 0xbcd; 39 | } 40 | } 41 | 42 | You would then use R.drawable.icon to reference the drawable/icon.png file, or R.layout.main 43 | to reference the layout/main.axml file, or R.strings.first_string to reference the first 44 | string in the dictionary file values/strings.xml. -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.UWP/Package.appxmanifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | 15 | 16 | 17 | SuaveControls.FloatingActionButton.UWP 18 | alexa 19 | Assets\StoreLogo.png 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 34 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.Android/Resources/AboutResources.txt: -------------------------------------------------------------------------------- 1 | Images, layout descriptions, binary blobs and string dictionaries can be included 2 | in your application as resource files. Various Android APIs are designed to 3 | operate on the resource IDs instead of dealing with images, strings or binary blobs 4 | directly. 5 | 6 | For example, a sample Android app that contains a user interface layout (main.xml), 7 | an internationalization string table (strings.xml) and some icons (drawable-XXX/icon.png) 8 | would keep its resources in the "Resources" directory of the application: 9 | 10 | Resources/ 11 | drawable-hdpi/ 12 | icon.png 13 | 14 | drawable-ldpi/ 15 | icon.png 16 | 17 | drawable-mdpi/ 18 | icon.png 19 | 20 | layout/ 21 | main.xml 22 | 23 | values/ 24 | strings.xml 25 | 26 | In order to get the build system to recognize Android resources, set the build action to 27 | "AndroidResource". The native Android APIs do not operate directly with filenames, but 28 | instead operate on resource IDs. When you compile an Android application that uses resources, 29 | the build system will package the resources for distribution and generate a class called 30 | "Resource" that contains the tokens for each one of the resources included. For example, 31 | for the above Resources layout, this is what the Resource class would expose: 32 | 33 | public class Resource { 34 | public class drawable { 35 | public const int icon = 0x123; 36 | } 37 | 38 | public class layout { 39 | public const int main = 0x456; 40 | } 41 | 42 | public class strings { 43 | public const int first_string = 0xabc; 44 | public const int second_string = 0xbcd; 45 | } 46 | } 47 | 48 | You would then use R.drawable.icon to reference the drawable/icon.png file, or Resource.layout.main 49 | to reference the layout/main.xml file, or Resource.strings.first_string to reference the first 50 | string in the dictionary file values/strings.xml. 51 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Xamarin.Forms.Controls.FloatingActionButton 2 | A custom view to create a FloatingActionButton for both Android and iOS as part of Material Design 3 | 4 | That's right, even on iOS! 5 | 6 | ## How to use 7 | 8 | Clone the repository and open include the `src` projects in your Xamarin.Forms and Platform projects. 9 | 10 | ### Now Available on NuGet! 11 | 12 | `Install-Package SuaveControls.FloatingActionButton` 13 | 14 | **Special note for iOS:** Make sure to call `FloatingActionButtonRenderer.InitRenderer();` in your `AppDelegate.cs` in order to avoid linking it out. 15 | 16 | Then you can include it in your XAML or call it from C# (See the example projects for a demo): 17 | 18 | ``` xml 19 | 20 | 25 | 26 | 32 | 33 | ``` 34 | 35 | ## Android Example 36 | 37 | ![Android Floating Action Button](https://i1.wp.com/alexdunndev.files.wordpress.com/2017/04/screenshot_1493173400.png?ssl=1&w=450) 38 | 39 | ## iOS Example 40 | 41 | ![iOS Floating Action Button](https://i2.wp.com/alexdunndev.files.wordpress.com/2017/04/2017-04-25_10-38-38-pm.jpg?ssl=1&w=450) 42 | 43 | ## TODO: 44 | - Make it more flexible. Add Different color states, add sizing adjustments, etc. 45 | - Create UWP implementation 46 | - Create Xamarin Component 47 | -------------------------------------------------------------------------------- /Example/SuaveControls.FabExample/SuaveControls.FabExample.iOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | UIDeviceFamily 6 | 7 | 1 8 | 2 9 | 10 | UISupportedInterfaceOrientations 11 | 12 | UIInterfaceOrientationPortrait 13 | UIInterfaceOrientationLandscapeLeft 14 | UIInterfaceOrientationLandscapeRight 15 | 16 | UISupportedInterfaceOrientations~ipad 17 | 18 | UIInterfaceOrientationPortrait 19 | UIInterfaceOrientationPortraitUpsideDown 20 | UIInterfaceOrientationLandscapeLeft 21 | UIInterfaceOrientationLandscapeRight 22 | 23 | MinimumOSVersion 24 | 8.0 25 | CFBundleDisplayName 26 | SuaveControls.FabExample 27 | CFBundleIdentifier 28 | com.yourcompany.SuaveControls.FabExample 29 | CFBundleVersion 30 | 1.0 31 | CFBundleIconFiles 32 | 33 | Icon-60@2x 34 | Icon-60@3x 35 | Icon-76 36 | Icon-76@2x 37 | Default 38 | Default@2x 39 | Default-568h@2x 40 | Default-Portrait 41 | Default-Portrait@2x 42 | Icon-Small-40 43 | Icon-Small-40@2x 44 | Icon-Small-40@3x 45 | Icon-Small 46 | Icon-Small@2x 47 | Icon-Small@3x 48 | 49 | UILaunchStoryboardName 50 | LaunchScreen 51 | 52 | 53 | -------------------------------------------------------------------------------- /src/SuaveControls.FloatingActionButton/SuaveControls.FloatingActionButton.iOS-old/Renderers/FloatingActionButtonRenderer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | 6 | using Foundation; 7 | using UIKit; 8 | using Xamarin.Forms.Platform.iOS; 9 | using Xamarin.Forms; 10 | using CoreGraphics; 11 | using System.ComponentModel; 12 | using FAB = SuaveControls.Views.FloatingActionButton; 13 | using SuaveControls.FloatingActionButton.iOS.Renderers; 14 | 15 | [assembly: ExportRenderer(typeof(FAB), typeof(FloatingActionButtonRenderer))] 16 | namespace SuaveControls.FloatingActionButton.iOS.Renderers 17 | { 18 | public class FloatingActionButtonRenderer : ButtonRenderer 19 | { 20 | protected override void OnElementChanged(ElementChangedEventArgs