public void ShowAutoHideWindow(AutoHideTabItem item, View view)
        {
            if (view == this.AutoHideWindowElement)
            {
                return;
            }
            this.CloseAutoHideWindow();
            AutoHideChannelControl ancestor1 = Microsoft.VisualStudio.PlatformUI.ExtensionMethods.FindAncestor <AutoHideChannelControl>((Visual)item);
            AutoHideRootControl    ancestor2 = Microsoft.VisualStudio.PlatformUI.ExtensionMethods.FindAncestor <AutoHideRootControl>((Visual)item);

            if (ancestor1 == null || ancestor2 == null)
            {
                return;
            }
            this.AutoHideWindowElement                   = view;
            this.AutoHideChannelControl                  = ancestor1;
            this.AutoHideWindow                          = new AutoHideWindow();
            this.AutoHideWindow.DataContext              = (object)view;
            this.AutoHideWindow.DockRootElement          = ancestor2.DockRoot;
            this.AutoHideChannelControl.AutoHideSlideout = (object)this.AutoHideWindow;
            LayoutSynchronizer.Update((Visual)this.AutoHideWindow);
            if (!this.AutoHideWindowElement.IsActive)
            {
                this.StartMouseObserver(item);
            }
            this.AutoHideWindow.RaiseEvent((RoutedEventArgs) new ViewEventArgs(AutoHideWindow.SlideoutStartedEvent, this.AutoHideWindowElement));
            this.AutoHideWindow.RaiseEvent((RoutedEventArgs) new ViewEventArgs(AutoHideWindow.SlideoutCompletedEvent, this.AutoHideWindowElement));
        }
 public MouseVirtualCaptureObserver(AutoHideTabItem tabItem, AutoHideWindow window)
 {
     this.Window  = window;
     this.TabItem = tabItem;
     ApplicationActivationMonitor.Instance.Activated   += new EventHandler(this.OnApplicationActivated);
     ApplicationActivationMonitor.Instance.Deactivated += new EventHandler(this.OnApplicationDeactivated);
     this.StartIsMouseOverTimer();
 }
Exemple #3
0
        private static void OnIsAutoHideWindowShownChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args)
        {
            AutoHideTabItem autoHideTabItem = (AutoHideTabItem)obj;

            if (!autoHideTabItem.IsConnectedToPresentationSource())
            {
                return;
            }
            if (autoHideTabItem.IsAutoHideWindowShown)
            {
                ViewCommands.ShowAutoHiddenView.Execute(autoHideTabItem.DataContext, autoHideTabItem);
            }
        }
 private void StartMouseObserver(AutoHideTabItem item)
 {
     this.MouseObserver = new AutoHideWindowManager.MouseVirtualCaptureObserver(item, this.AutoHideWindow);
     this.MouseObserver.LostVirtualMouseCapture += new EventHandler(this.OnLostVirtualMouseCapture);
 }
 public AutoHideTabItemAutomationPeer(AutoHideTabItem element)
     : base((Button)element)
 {
 }