public void ButtonEventHandler(object sender, EventArgs e) { Logger.Info("", ""); if (sender == btnMap) { if (AppDelegate.current.locationManager.locationManager.Location != null) { var location = new Location(AppDelegate.current.locationManager.lastKnownLocation.Coordinate.Latitude, AppDelegate.current.locationManager.lastKnownLocation.Coordinate.Longitude); var loc = AppDelegate.current.locationManager.gpsCurrentPositionObject; string latString = loc.latitudeDescription; string lonString = loc.longitudeDescription; string posString = latString + "\n" + lonString; string lat = location.Latitude.ToString(System.Globalization.CultureInfo.InvariantCulture); string lon = location.Longitude.ToString(System.Globalization.CultureInfo.InvariantCulture); string linkString = "https://www.google.com/maps/search/?api=1&query=" + lat + "," + lon; // string common_share_my_position = Application.Context.Resources.GetString(Resource.String.common_share_my_position); posString = posString + "\n" + linkString; // string posString = loc.latitudeDescription + "\n" + loc.longitudeDescription; var shareTextRequest = new ShareTextRequest(posString, "HENSPE"); Share.RequestAsync(shareTextRequest); } } }
public Task RequestAsync(ShareTextRequest request) { var winuiApp = (UI.Xaml.Window)MauiWinUIApplication.Current.Application.Windows[0].Handler !.NativeView !; var windowsHandle = winuiApp.GetNativeWindowHandle(); var dataTransferManager = DataTransferManagerHelper.GetDataTransferManager(windowsHandle); dataTransferManager.DataRequested += ShareTextHandler; DataTransferManagerHelper.ShowShare(windowsHandle); void ShareTextHandler(DataTransferManager sender, DataRequestedEventArgs e) { var newRequest = e.Request; newRequest.Data.Properties.Title = request.Title ?? AppInfo.Name; if (!string.IsNullOrWhiteSpace(request.Text)) { newRequest.Data.SetText(request.Text); } if (!string.IsNullOrWhiteSpace(request.Uri)) { newRequest.Data.SetWebLink(new Uri(request.Uri)); } dataTransferManager.DataRequested -= ShareTextHandler; } return(Task.CompletedTask); }
public Task RequestAsync(ShareTextRequest request) { var items = new List <NSObject>(); if (!string.IsNullOrWhiteSpace(request.Text)) { items.Add(new ShareActivityItemSource(new NSString(request.Text), request.Title)); } if (!string.IsNullOrWhiteSpace(request.Uri)) { items.Add(new ShareActivityItemSource(NSUrl.FromString(request.Uri), request.Title)); } var activityController = new UIActivityViewController(items.ToArray(), null); var vc = Platform.GetCurrentViewController(); if (activityController.PopoverPresentationController != null) { activityController.PopoverPresentationController.SourceView = vc.View; if (request.PresentationSourceBounds != Rectangle.Zero || Platform.HasOSVersion(13, 0)) { activityController.PopoverPresentationController.SourceRect = request.PresentationSourceBounds.AsCGRect(); } } return(vc.PresentViewControllerAsync(activityController, true)); }
public Task RequestAsync(ShareTextRequest request) { Permissions.EnsureDeclared <Permissions.LaunchApp>(); var appControl = new AppControl { Operation = AppControlOperations.ShareText, }; if (!string.IsNullOrEmpty(request.Text)) { appControl.ExtraData.Add(AppControlData.Text, request.Text); } if (!string.IsNullOrEmpty(request.Uri)) { appControl.ExtraData.Add(AppControlData.Url, request.Uri); } if (!string.IsNullOrEmpty(request.Subject)) { appControl.ExtraData.Add(AppControlData.Subject, request.Subject); } if (!string.IsNullOrEmpty(request.Title)) { appControl.ExtraData.Add(AppControlData.Title, request.Title); } AppControl.SendLaunchRequest(appControl); return(Task.CompletedTask); }
public Task RequestAsync(ShareTextRequest request) { var items = new List <string>(); if (!string.IsNullOrWhiteSpace(request.Text)) { items.Add(request.Text); } if (!string.IsNullOrWhiteSpace(request.Uri)) { items.Add(request.Uri); } var intent = new Intent(Intent.ActionSend); intent.SetType(FileSystem.MimeTypes.TextPlain); intent.PutExtra(Intent.ExtraText, string.Join(System.Environment.NewLine, items)); if (!string.IsNullOrWhiteSpace(request.Subject)) { intent.PutExtra(Intent.ExtraSubject, request.Subject); } var chooserIntent = Intent.CreateChooser(intent, request.Title ?? string.Empty); var flags = ActivityFlags.ClearTop | ActivityFlags.NewTask; chooserIntent.SetFlags(flags); Platform.AppContext.StartActivity(chooserIntent); return(Task.CompletedTask); }
private async void ShareCommandExecute() { //string filepath = ""; //if (Device.RuntimePlatform == Device.Android) //{ // filepath = @"file:///android_asset/mp3/" + CurrentSample.File; //} //else if (Device.RuntimePlatform == Device.iOS) //{ // filepath = $"/sounds/{ CurrentSample.File }"; //} //if (File.Exists(filepath)) //{ //ShareFileRequest request = new ShareFileRequest(); //request.Title = "Partage d'un son Kaamelot de " + CurrentSample.Character; //request.File = new ShareFile(filepath); ShareTextRequest request = new ShareTextRequest(); request.Title = "Partager avec..."; request.Text = "Partage d'un son Kaamelot de " + CurrentSample.Character; request.Uri = @"http://www.google.fr"; await Share.RequestAsync(request); //} }
public Task RequestAsync(ShareTextRequest request) { var hwnd = Platform.CurrentWindowHandle; var dataTransferManager = DataTransferManagerHelper.GetDataTransferManager(hwnd); dataTransferManager.DataRequested += ShareTextHandler; DataTransferManagerHelper.ShowShare(hwnd); void ShareTextHandler(DataTransferManager sender, DataRequestedEventArgs e) { var newRequest = e.Request; newRequest.Data.Properties.Title = request.Title ?? AppInfo.Name; if (!string.IsNullOrWhiteSpace(request.Text)) { newRequest.Data.SetText(request.Text); } if (!string.IsNullOrWhiteSpace(request.Uri)) { newRequest.Data.SetWebLink(new Uri(request.Uri)); } dataTransferManager.DataRequested -= ShareTextHandler; } return(Task.CompletedTask); }
public async Task Share_ShareTextRequestWithInvalidTextAndUri() { var request = new ShareTextRequest { Text = null, Uri = null }; await Assert.ThrowsAsync <ArgumentException>(() => Share.RequestAsync(request)); }
async void RequestButton_Clicked(object sender, EventArgs e) { var request = new ShareTextRequest { Title = titleEntry.Text, Subject = subjectEntry.Text, Text = shareTextSwitch.IsToggled ? textEntry.Text : null, Uri = shareUriSwitch.IsToggled ? uriEntry.Text : null }; await Share.RequestAsync(request); }
/// <summary> /// brings up the system sharing dialog /// </summary> /// <param name="sender"> </param> /// <param name="e"> </param> private async void ButtonShareToOtherMedia_Clicked(object sender, EventArgs e) { this.ButtonShareToOtherMedia.IsEnabled = false; ShareTextRequest request = new ShareTextRequest(); request.Title = $"Share to other social media platforms"; request.Text = this.ShareText; request.Uri = "https://www.bizquiz.app/"; await Share.RequestAsync(request); this.ButtonShareToOtherMedia.IsEnabled = true; }
private void ShareClicked(object sender, EventArgs e) { if (Henspe.Current.myLocation != null) { string latString = Henspe.Current.coordinatesText; string lonString = Henspe.Current.addressText; string posString = latString + "\n" + lonString; string lat = Henspe.Current.myLocation.Latitude.ToString(System.Globalization.CultureInfo.InvariantCulture); string lon = Henspe.Current.myLocation.Longitude.ToString(System.Globalization.CultureInfo.InvariantCulture); string linkString = "https://www.google.com/maps/search/?api=1&query=" + lat + "," + lon; string common_share_my_position = Application.Context.Resources.GetString(Resource.String.common_share_my_position); posString = posString + "\n" + linkString; var shareTextRequest = new ShareTextRequest(posString, common_share_my_position); Share.RequestAsync(shareTextRequest); } }
public Task RequestAsync(ShareTextRequest request) { var items = new List <NSObject>(); if (!string.IsNullOrWhiteSpace(request.Title)) { items.Add(new NSString(request.Title)); } if (!string.IsNullOrWhiteSpace(request.Text)) { items.Add(new NSString(request.Text)); } if (!string.IsNullOrWhiteSpace(request.Uri)) { items.Add(NSUrl.FromString(request.Uri)); } return(PlatformShowRequestAsync(request, items)); }
public async Task Share_NullShareTextRequest() { ShareTextRequest request = null; await Assert.ThrowsAsync <ArgumentNullException>(() => Share.RequestAsync(request)); }
private static Task RequestAsync(ShareTextRequest shareTextRequest) { throw new NotImplementedException(); }
public Task RequestAsync(ShareTextRequest request) => throw ExceptionUtils.NotSupportedOrImplementedException;