public ClipboardHandle(
     IClipboardNativeApi clipboardNativeApi,
     IMainWindowHandleContainer mainWindow)
 {
     this.clipboardNativeApi = clipboardNativeApi;
     clipboardNativeApi.OpenClipboard(mainWindow.Handle);
 }
示例#2
0
 public ClipboardHandle(
     IClipboardNativeApi clipboardNativeApi,
     IMainWindowHandleContainer mainWindow)
 {
     this.clipboardNativeApi = clipboardNativeApi;
     clipboardNativeApi.OpenClipboard(mainWindow.Handle);
 }
 public ClipboardHandle(
     IClipboardNativeApi clipboardNativeApi,
     IClipboardFormatFactory clipboardFormatFactory,
     IMainWindowHandleContainer mainWindow)
 {
     this.clipboardNativeApi     = clipboardNativeApi;
     this.clipboardFormatFactory = clipboardFormatFactory;
     clipboardNativeApi.OpenClipboard(mainWindow.Handle);
 }
        public ClipboardHandle(
            IClipboardNativeApi clipboardNativeApi,
            IClipboardFormatFactory clipboardFormatFactory,
            ITrayIconManager trayIconManager,
            IMainWindowHandleContainer mainWindow)
        {
            this.clipboardNativeApi     = clipboardNativeApi;
            this.clipboardFormatFactory = clipboardFormatFactory;
            this.trayIconManager        = trayIconManager;

            isClipboardOpen = clipboardNativeApi.OpenClipboard(mainWindow.Handle);
            if (!isClipboardOpen)
            {
                DisplayClipboardHijackNotification();
            }
        }
示例#5
0
        public byte[] UnwrapStructure(uint format)
        {
            //HACK: we close the clipboard here to avoid it being already open. should definitely be fixed for final release.
            try
            {
                clipboardNativeApi.CloseClipboard();

                var image = Clipboard.GetImage();
                return(imagePersistenceService
                       .ConvertBitmapSourceToByteArray(image));
            }
            finally
            {
                clipboardNativeApi
                .OpenClipboard(mainWindowHandleContainer.Handle);
            }
        }