Example #1
0
        public static void Share(string message, UIViewController vcForUIThread, bool showInterstitial = false)
        {
            var messagecontent = message;
            var msg            = UIActivity.FromObject(messagecontent);

            var item               = NSObject.FromObject(msg);
            var activityItems      = new[] { item };
            var activityController = new UIActivityViewController(activityItems, null);

            var topController = UIApplication.SharedApplication.KeyWindow.RootViewController;

            while (topController.PresentedViewController != null)
            {
                topController = topController.PresentedViewController;
            }

            if (vcForUIThread == null)
            {
                topController.PresentViewController(activityController, DeviceUtil.CanAnimate, () => { });
            }
            else
            {
                vcForUIThread.InvokeOnMainThread(() =>
                                                 topController.PresentViewController(activityController, DeviceUtil.CanAnimate, () => { }));
            }
        }
Example #2
0
        private void ShareButtonPress()
        {
            if (ViewModel.Gist == null)
            {
                return;
            }

            var sheet = MonoTouch.Utilities.GetSheet("Gist");

            var shareButton  = sheet.AddButton("Share".t());
            var showButton   = sheet.AddButton("Show in GitHub".t());
            var cancelButton = sheet.AddButton("Cancel".t());

            sheet.CancelButtonIndex = cancelButton;
            sheet.DismissWithClickedButtonIndex(cancelButton, true);
            sheet.Clicked += (s, e) => {
                if (e.ButtonIndex == shareButton)
                {
                    var          item                  = UIActivity.FromObject(ViewModel.Gist.HtmlUrl);
                    var          activityItems         = new NSObject[] { item };
                    UIActivity[] applicationActivities = null;
                    var          activityController    = new UIActivityViewController(activityItems, applicationActivities);
                    PresentViewController(activityController, true, null);
                }
                else if (e.ButtonIndex == showButton)
                {
                    try { UIApplication.SharedApplication.OpenUrl(new NSUrl(ViewModel.Gist.HtmlUrl)); } catch { }
                }
            };

            sheet.ShowFrom(_shareButton, true);
        }
        public void ShareTweet(Status status)
        {
            var textToSend         = status.User.Name + Environment.NewLine + status.Text;
            var activityController = new UIActivityViewController(new NSObject[] { UIActivity.FromObject(textToSend) }, null);

            UIApplication.SharedApplication.KeyWindow.RootViewController.PresentViewController(activityController, true, null);
        }
 public override void onAttach(Activity activity)
 {
     base.onAttach(activity);
     Log.i(LOGTAG, "On attach Subscriber control fragment");
     openTokActivity = (UIActivity)activity;
     if (!(activity is SubscriberCallbacks))
     {
         throw new System.InvalidOperationException("Activity must implement fragment's callback");
     }
 }
Example #5
0
        partial void BtnShare_TouchUpInside(UIButton sender)
        {
            closeSheet();
            var item          = UIActivity.FromObject("");
            var activityItems = new NSObject[] { item };

            UIActivity[] applicationActivities = null;

            var activityController = new UIActivityViewController(activityItems, applicationActivities);

            PresentViewController(activityController, true, null);
        }
Example #6
0
        private void ShareButtonCliked(object sender, EventArgs e)
        {
            var activityController = new UIActivityViewController(new NSObject[] {
                UIActivity.FromObject(OpentokTestConstants.ShareString),
            }, null);
            var topController = UIApplication.SharedApplication.KeyWindow.RootViewController;

            while (topController.PresentedViewController != null)
            {
                topController = topController.PresentedViewController;
            }
            topController.PresentViewController(activityController, true, null);
        }
Example #7
0
        void Share(string msg)
        {
            //var item = NSObject.FromObject(msg);
            //var activityItems = new[] { item };
            //var activityController = new UIActivityViewController(activityItems, null);
            //var topController = UIApplication.SharedApplication.KeyWindow.RootViewController;
            //while (topController.PresentedViewController != null)
            //{
            //	topController = topController.PresentedViewController;
            //}
            //topController.PresentViewController(activityController, true, () => { });

            var activityController = new UIActivityViewController(new NSObject[] { UIActivity.FromObject(msg) }, null);

            UIApplication.SharedApplication.KeyWindow.RootViewController.PresentViewController(activityController, true, null);
        }
Example #8
0
    protected override void Init()
    {
        instance = this;

        if (null != Globe.backPanelParameter && (UIPanleID)Globe.backPanelParameter[0] == UIPanleID.UIActivity)
        {
            if (Globe.backPanelParameter.Length > 1)
            {
                OpenModeSelect((int)Globe.backPanelParameter[1]);
            }
            Globe.backPanelParameter = null;
        }
        else if (Globe.openSceenID != 0)
        {
            int modelid = Globe.openSceenID / 100;
            modelid *= 100;
            OpenModeSelect(modelid);
            Globe.openSceenID = 0;
        }
    }
Example #9
0
        private void ShowExtraMenu()
        {
            var sheet = MonoTouch.Utilities.GetSheet(Title);

            var openButton = _downloadResult != null?sheet.AddButton("Open In".t()) : -1;

            var shareButton = sheet.AddButton("Share".t());
            var showButton  = _githubUrl != null?sheet.AddButton("Show in GitHub".t()) : -1;

            var cancelButton = sheet.AddButton("Cancel".t());

            sheet.CancelButtonIndex = cancelButton;
            sheet.DismissWithClickedButtonIndex(cancelButton, true);
            sheet.Clicked += (s, e) => {
                if (e.ButtonIndex == openButton)
                {
                    var ctrl = new UIDocumentInteractionController();
                    ctrl.Url = NSUrl.FromFilename(_downloadResult.File);
                    ctrl.PresentOpenInMenu(NavigationItem.RightBarButtonItem, true);
                }
                else if (e.ButtonIndex == shareButton)
                {
                    var          item                  = UIActivity.FromObject(_githubUrl);
                    var          activityItems         = new NSObject[] { item };
                    UIActivity[] applicationActivities = null;
                    var          activityController    = new UIActivityViewController(activityItems, applicationActivities);
                    PresentViewController(activityController, true, null);
                }
                else if (e.ButtonIndex == showButton)
                {
                    try { UIApplication.SharedApplication.OpenUrl(new NSUrl(_githubUrl)); } catch { }
                }
            };

            sheet.ShowInView(this.View);
        }
Example #10
0
        private void ShowExtraMenu()
        {
            var sheet = MonoTouch.Utilities.GetSheet(Title);

            var openButton  = sheet.AddButton("Open In".t());
            var shareButton = ViewModel.HtmlUrl != null?sheet.AddButton("Share".t()) : -1;

            var showButton = ViewModel.HtmlUrl != null?sheet.AddButton("Show in Bitbucket".t()) : -1;

            var cancelButton = sheet.AddButton("Cancel".t());

            sheet.CancelButtonIndex = cancelButton;
            sheet.DismissWithClickedButtonIndex(cancelButton, true);
            sheet.Clicked += (s, e) => {
                if (e.ButtonIndex == openButton)
                {
                    var ctrl = new UIDocumentInteractionController();
                    ctrl.Url = NSUrl.FromFilename(ViewModel.FilePath);
                    ctrl.PresentOpenInMenu(NavigationItem.RightBarButtonItem, true);
                }
                else if (e.ButtonIndex == shareButton)
                {
                    var          item                  = UIActivity.FromObject(ViewModel.HtmlUrl);
                    var          activityItems         = new NSObject[] { item };
                    UIActivity[] applicationActivities = null;
                    var          activityController    = new UIActivityViewController(activityItems, applicationActivities);
                    PresentViewController(activityController, true, null);
                }
                else if (e.ButtonIndex == showButton)
                {
                    ViewModel.GoToHtmlUrlCommand.Execute(null);
                }
            };

            sheet.ShowInView(this.View);
        }
		public async Task PerformActionOnDocument (DocumentReference docRef, UIViewController fromController, UIBarButtonItem fromButton)
		{
			try {
				
				if (docRef == null)
					return;

				var ad = this;

				if (ad.DismissSheetsAndPopovers ())
					return;

				NSObject[] items = new NSObject[0];
				UIActivity[] aa = new UIActivity[0];

				try {

					var d = (await docRef.Open ()) as TextDocument;

					if (d != null) {
						items = await d.GetActivityItemsAsync (fromController);
						aa = await d.GetActivitiesAsync (fromController);
					}

					await docRef.Close ();
									
				} catch (Exception ex) {
					Debug.WriteLine (ex);
				}

				if (items.Length > 0) {
					var tcs = new TaskCompletionSource<bool> ();
					var a = new UIActivityViewController (items, aa);
					a.ModalPresentationStyle = UIModalPresentationStyle.Popover;

					a.CompletionHandler = (x,success) => {
						Console.WriteLine ("COMPLETE {0} {1}", x, success);
						tcs.SetResult (success);
					};

					if (UIDevice.CurrentDevice.CheckSystemVersion (8, 0)) {
						if (a.PopoverPresentationController != null) {
							try {
								a.PopoverPresentationController.BarButtonItem = fromButton;
							} catch (Exception) {
								a.PopoverPresentationController.SourceView = fromController.View;
							}
						}
					}

					fromController.PresentViewController (a, true, null);

					await tcs.Task;
				}

			} catch (Exception ex) {
				Console.WriteLine ("Perform Act of Doc Failed: " + ex);
			}

		
		}
Example #12
0
 protected override void InitItem()
 {
     activity        = GetComponentInParent <UIActivity>();
     ItemBtn.onClick = OnItemClick;
 }
		public override void onAttach(Activity activity)
		{
			base.onAttach(activity);
			Log.i(LOGTAG, "On attach Subscriber control fragment");
			openTokActivity = (UIActivity) activity;
			if (!(activity is SubscriberCallbacks))
			{
				throw new System.InvalidOperationException("Activity must implement fragment's callback");
			}

		}