Exemplo n.º 1
0
 public static MonitorUtils Current(Common.WindowWrapper windowWrapper = null)
 {
     windowWrapper = windowWrapper ?? Common.WindowWrapper.Current();
     if (!Cache.ContainsKey(windowWrapper))
     {
         var item = new MonitorUtils(windowWrapper);
         Cache.Add(windowWrapper, item);
         windowWrapper.ApplicationView().Consolidated += new Common.WeakReference <MonitorUtils, ApplicationView, object>(item)
         {
             EventAction  = (i, s, e) => Cache.Remove(windowWrapper),
             DetachAction = (i, w) => windowWrapper.ApplicationView().Consolidated -= w.Handler
         }.Handler;
     }
     return(Cache[windowWrapper]);
 }
Exemplo n.º 2
0
 public static MonitorUtils Current(IWindowWrapper windowWrapper = null)
 {
     windowWrapper = windowWrapper ?? throw new ArgumentNullException(nameof(windowWrapper));
     if (!Cache.ContainsKey(windowWrapper))
     {
         var item = new MonitorUtils(windowWrapper);
         Cache.Add(windowWrapper, item);
         windowWrapper.ApplicationView.Consolidated += new WeakReference <MonitorUtils, ApplicationView, object>(item)
         {
             EventAction  = (i, s, e) => Cache.Remove(windowWrapper),
             DetachAction = (i, w) => windowWrapper.ApplicationView.Consolidated -= w.Handler
         }.Handler;
     }
     return(Cache[windowWrapper]);
 }
Exemplo n.º 3
0
 public static MonitorUtils Current(Common.WindowWrapper windowWrapper = null)
 {
     windowWrapper = windowWrapper ?? Common.WindowWrapper.Current();
     if (!Cache.ContainsKey(windowWrapper))
     {
         var item = new MonitorUtils(windowWrapper);
         Cache.Add(windowWrapper, item);
         windowWrapper.ApplicationView().Consolidated += new Common.WeakReference<MonitorUtils, ApplicationView, object>(item)
         {
             EventAction = (i, s, e) => Cache.Remove(windowWrapper),
             DetachAction = (i, w) => windowWrapper.ApplicationView().Consolidated -= w.Handler
         }.Handler;
     }
     return Cache[windowWrapper];
 }
Exemplo n.º 4
0
        private DeviceUtils(Common.WindowWrapper windowWrapper)
        {
            MonitorUtils  = MonitorUtils.Current(windowWrapper);
            WindowWrapper = windowWrapper ?? Common.WindowWrapper.Current();

            var di = windowWrapper.DisplayInformation();

            di.OrientationChanged += new Common.WeakReference <DeviceUtils, DisplayInformation, object>(this)
            {
                EventAction  = (i, s, e) => Changed?.Invoke(i, EventArgs.Empty),
                DetachAction = (i, w) => di.OrientationChanged -= w.Handler
            }.Handler;

            var av = windowWrapper.ApplicationView();

            av.VisibleBoundsChanged += new Common.WeakReference <DeviceUtils, ApplicationView, object>(this)
            {
                EventAction  = (i, s, e) => Changed?.Invoke(i, EventArgs.Empty),
                DetachAction = (i, w) => av.VisibleBoundsChanged -= w.Handler
            }.Handler;
        }