-
Notifications
You must be signed in to change notification settings - Fork 1k
Add support for drag images and drop descriptions #6576
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
dreddy-work
merged 103 commits into
dotnet:main
from
willibrandon:5884_DragImageDropDescription
Jul 5, 2022
Merged
Changes from all commits
Commits
Show all changes
103 commits
Select commit
Hold shift + click to select a range
33827ef
Allow drop targets to display a drag image while the cursor is over t…
willibrandon 1ce2618
Tweak the drop description icon names.
willibrandon 2fd573a
Merged from upstream
willibrandon bd2ccdf
Cleanup feedback from RussKie
willibrandon 3152d4f
Build fix
willibrandon 7ee1ac0
Add IDragSourceHelper2 interface, SHDRAGIMAGE structure, and implemen…
willibrandon 07721df
Merge from upstream and resolve conflict.
willibrandon c1a0803
Add the Control.DoDratgDrop API for specifying the drag image bitmap.
willibrandon 18fa962
Merge branch 'main' into 5884_DragImageDropDescription
willibrandon ec23acf
Fix naming rule violation.
willibrandon a63e71b
Implement a CopyDragDropStgMedium function for copying drag-and-drop …
willibrandon 6e7813b
Remove unused DragDropHelper methods and add comments.
willibrandon aa54e1e
Add CopyDragDropStgMedium format validation and comments.
willibrandon e64aafd
Hide the PictureBox default pointer on the test form.
willibrandon 07a2601
Cleanup feedback from RussKie.
willibrandon ff8edb6
Tweak DragDropHelper return values.
willibrandon ff9938d
Fix the cursor from getting stuck and fix the cursor offset.
willibrandon 2d4ddee
Fix memory leak and add additional formats.
willibrandon 8230dc9
Allow the application to specify the drag image bitmap via Givefeedba…
willibrandon f79fd07
Merge from main and resolve conflict
willibrandon 6dc33dc
Add more comments.
willibrandon 21f3d6a
Cleanup some feedback from welkante.
willibrandon 0610164
Reject SetData calls which have a non-NULL target device pointer.
willibrandon 0706f13
Add an internal drag and drop format class to hold related private fo…
willibrandon e941b12
Handle when the caller retains ownership of the storage medium and ma…
willibrandon b7fbae0
Reject incompatible storage medium types in IDataObject::SetData.
willibrandon e9a2f9b
Debug assert null target device pointer.
willibrandon 3e09de5
Cleanup the return and let it fall through like previously.
willibrandon 2c4444b
Add the Control.DoDragDrop API surface.
willibrandon 5156bcb
Add the ToolStripItem.DoDragDrop API surface.
willibrandon daec799
Add drag image and drop description support for RichTextBox.
willibrandon e55259f
Add a RichTextBox demo to load DragAccept.rtf on DragDrop.
willibrandon 2c2eaf9
Optimize drop description changes in DragLeave and Drop.
willibrandon 91c5b39
Add a comment regarding IDataObject::GetData and when the Windows dra…
willibrandon b8b98a4
Improve the RichTextBox and ToolStrip demos.
willibrandon ea06211
Add the InShellDragLoop format.
willibrandon ce98fb2
Add data object support for CF_INDRAGLOOP.
willibrandon 9df4aff
Use Marshal.ReleaseComObject instead of Marshal.FinalReleaseComObject.
willibrandon 275dc8e
Finish adding support CFSTR_INDRAGLOOP.
willibrandon e3d02f3
Add support for dynamic addition of data during the drag loop through…
willibrandon d0d70fd
Fix the timing of the flag.
willibrandon 4ff6ec2
Clean up the comments and code.
willibrandon 4d6ef75
Free the DragDropFormat storage mediums after they are no longer in use.
willibrandon 6f80f25
Fix the timing of the drag loop flag.
willibrandon cab7c8b
Give the DragDropFormat appropriate method names.
willibrandon ed696e7
Set InDragLoop in GiveFeedback for good measure.
willibrandon 9978ee7
Wrap the drag loop in a try finally and reset InDragLoop.
willibrandon d36fe75
Merge from upstream and resolve conflicts
willibrandon b29b48a
Resolve nullable and mark members as static errors.
willibrandon 3e22499
Track the DropSource last target handle using IDropSourceNotify::Drag…
willibrandon c9e925e
Cleanup feedback from dotnet api review
willibrandon 4e020ad
Fix typo
willibrandon f698858
Check if the drop description values specified are valid
willibrandon ac6fd7d
Review feedback
willibrandon c70d975
Review feedback
willibrandon 069b505
Move CopyMedium to the DragDropFormat class and rename it to CopyData
willibrandon 7557ade
Remove unnecessary return and cleanup the demo
willibrandon d1748a1
Review feedback
willibrandon 9bcd671
Update DropSource CCW to include support for IDropSourceNotify
willibrandon b7dfbfb
Review feedback
willibrandon 82b30f5
Fix MessageReplacementToken conditional
willibrandon 5622b7d
Be explicit about the entry indexes
willibrandon badf921
Review feedback
willibrandon 80e2cb7
Wrap the methods calls in a try/catch and return HResult of exception
willibrandon 8caf9bf
Remove the unnecessary checks in ToolStripDropTargetManager
willibrandon a82c81d
Simplify the checks in DropTarget
willibrandon 50d0f30
Simplify the checks in RichTextBox.OleCallback
willibrandon 5c68627
Simplify the checks in DropSource
willibrandon 2b78ced
Review feedback, first round
willibrandon 5041c0a
Remove the unused using
willibrandon 870c4eb
Better way of checking the incoming data object
willibrandon 96ef5a4
Have the designer generate the code
willibrandon 27e3ab9
Put the update drag image logic in its own method
willibrandon e51a0e3
Review feedback
willibrandon 955db62
Review feedback, second round
willibrandon 2c3414a
Add the <returns> tag and describe the DragDropEffects return value
willibrandon cd0fa59
Add GiveFeedbackEventArgs remarks
willibrandon 82ec322
Review feedback
willibrandon 1bd2a6f
Review feedback and encapsulate the event argument equality logic
willibrandon 169da25
Review feedback
willibrandon e645457
Merge from upstream and resolve conflict
willibrandon a2bf363
Fix duplicate symbols
willibrandon beb2124
Review feedback
willibrandon 9a038a9
Add DragDropFormat unit tests
willibrandon dcef881
Supply named arguments for boolean parameters
willibrandon 8669315
Cleanup the data source and variable name
willibrandon e943108
Add DragContext test data and generalize the tests
willibrandon 6a00a2f
Add DragDropHelper unit tests
willibrandon 56bb0d4
Skip test DragDropHelper_SetDragImage_ReturnsExptected
willibrandon 608f067
Add DragEventArgsTests for newly added properties
willibrandon f343c22
Add GiveFeedbackEventArgs unit tests
willibrandon 4d52d30
Add unit tests that verify thrown exceptions
willibrandon 3101a43
Add UI integration test for DragEnter
willibrandon cefa154
Fix the fatal error on x86
willibrandon a0f667b
Tune up the test
willibrandon 83c7539
Unskip the skipped tests
willibrandon 662c8a0
Fix the hard coded delay
willibrandon df9bb0f
Fix SetDragImage tests
willibrandon d829f95
Review feedback
willibrandon 45d7dbd
Check for illegal cross-thread calls in DragDropHelper
willibrandon 8cd128f
Skip the problem tests
willibrandon 81e78d9
Drag two items in the UI test
willibrandon 229a700
Merge branch 'main' into 5884_DragImageDropDescription
JeremyKuhne File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
24 changes: 24 additions & 0 deletions
24
src/System.Windows.Forms.Primitives/src/Interop/Ole32/Interop.IDropSourceNotify.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for more information. | ||
|
||
using System.Runtime.InteropServices; | ||
|
||
internal partial class Interop | ||
{ | ||
internal static partial class Ole32 | ||
{ | ||
[ComImport] | ||
[Guid("0000012B-0000-0000-C000-000000000046")] | ||
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] | ||
public interface IDropSourceNotify | ||
{ | ||
[PreserveSig] | ||
HRESULT DragEnterTarget( | ||
IntPtr hwndTarget); | ||
|
||
[PreserveSig] | ||
HRESULT DragLeaveTarget(); | ||
} | ||
} | ||
} |
15 changes: 15 additions & 0 deletions
15
src/System.Windows.Forms.Primitives/src/Interop/Ole32/Interop.OleDuplicateData.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for more information. | ||
|
||
using System.Runtime.InteropServices; | ||
using static Interop.Kernel32; | ||
|
||
internal static partial class Interop | ||
{ | ||
internal static partial class Ole32 | ||
{ | ||
[DllImport(Libraries.Ole32, ExactSpelling = true)] | ||
public static extern IntPtr OleDuplicateData(IntPtr hSrc, short cfFormat, GMEM uiFlags); | ||
} | ||
} |
41 changes: 41 additions & 0 deletions
41
src/System.Windows.Forms.Primitives/src/Interop/Shell32/Interop.DROPDESCRIPTION.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for more information. | ||
|
||
using System.Runtime.InteropServices; | ||
|
||
internal partial class Interop | ||
{ | ||
internal static partial class Shell32 | ||
{ | ||
[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] | ||
public unsafe struct DROPDESCRIPTION | ||
{ | ||
public DROPIMAGETYPE type; | ||
private fixed char _szMessage[Kernel32.MAX_PATH]; | ||
private fixed char _szInsert[Kernel32.MAX_PATH]; | ||
|
||
private Span<char> szMessage | ||
{ | ||
get { fixed (char* c = _szMessage) { return new Span<char>(c, Kernel32.MAX_PATH); } } | ||
} | ||
|
||
private Span<char> szInsert | ||
{ | ||
get { fixed (char* c = _szInsert) { return new Span<char>(c, Kernel32.MAX_PATH); } } | ||
} | ||
|
||
public ReadOnlySpan<char> Message | ||
{ | ||
get => szMessage.SliceAtFirstNull(); | ||
set => SpanHelpers.CopyAndTerminate(value, szMessage); | ||
} | ||
|
||
public ReadOnlySpan<char> Insert | ||
{ | ||
get => szInsert.SliceAtFirstNull(); | ||
set => SpanHelpers.CopyAndTerminate(value, szInsert); | ||
} | ||
} | ||
} | ||
} |
21 changes: 21 additions & 0 deletions
21
src/System.Windows.Forms.Primitives/src/Interop/Shell32/Interop.DROPIMAGETYPE.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for more information. | ||
|
||
internal partial class Interop | ||
{ | ||
internal static partial class Shell32 | ||
{ | ||
public enum DROPIMAGETYPE | ||
{ | ||
DROPIMAGE_INVALID = -1, | ||
DROPIMAGE_NONE = 0, | ||
DROPIMAGE_COPY = 1, | ||
DROPIMAGE_MOVE = 2, | ||
DROPIMAGE_LINK = 4, | ||
DROPIMAGE_LABEL = 6, | ||
DROPIMAGE_WARNING = 7, | ||
DROPIMAGE_NOIMAGE = 8 | ||
} | ||
} | ||
} |
31 changes: 31 additions & 0 deletions
31
src/System.Windows.Forms.Primitives/src/Interop/Shell32/Interop.IDragSourceHelper2.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for more information. | ||
|
||
using System.Drawing; | ||
using System.Runtime.InteropServices; | ||
using System.Runtime.InteropServices.ComTypes; | ||
|
||
internal static partial class Interop | ||
{ | ||
internal static partial class Shell32 | ||
{ | ||
[ComImport] | ||
[Guid("DE5BF786-477A-11D2-839D-00C04FD918D0")] | ||
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] | ||
public interface IDragSourceHelper2 | ||
{ | ||
HRESULT InitializeFromBitmap( | ||
in SHDRAGIMAGE pshdi, | ||
IDataObject dataObject); | ||
|
||
HRESULT InitializeFromWindow( | ||
IntPtr hwnd, | ||
in Point ppt, | ||
IDataObject dataObject); | ||
|
||
HRESULT SetFlags( | ||
int dwFlags); | ||
} | ||
} | ||
} |
44 changes: 44 additions & 0 deletions
44
src/System.Windows.Forms.Primitives/src/Interop/Shell32/Interop.IDropTargetHelper.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for more information. | ||
|
||
using System.Drawing; | ||
using System.Runtime.InteropServices; | ||
using IComDataObject = System.Runtime.InteropServices.ComTypes.IDataObject; | ||
|
||
internal static partial class Interop | ||
{ | ||
internal static partial class Shell32 | ||
{ | ||
[ComImport] | ||
[Guid("4657278B-411B-11D2-839A-00C04FD918D0")] | ||
[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] | ||
public interface IDropTargetHelper | ||
{ | ||
[PreserveSig] | ||
HRESULT DragEnter( | ||
IntPtr hwndTarget, | ||
IComDataObject pDataObj, | ||
ref Point ppt, | ||
Ole32.DROPEFFECT dwEffect); | ||
|
||
[PreserveSig] | ||
HRESULT DragLeave(); | ||
|
||
[PreserveSig] | ||
HRESULT DragOver( | ||
ref Point ppt, | ||
Ole32.DROPEFFECT dwEffect); | ||
|
||
[PreserveSig] | ||
HRESULT Drop( | ||
IComDataObject pDataObj, | ||
ref Point ppt, | ||
Ole32.DROPEFFECT dwEffect); | ||
|
||
[PreserveSig] | ||
HRESULT Show( | ||
BOOL fShow); | ||
} | ||
} | ||
} |
22 changes: 22 additions & 0 deletions
22
src/System.Windows.Forms.Primitives/src/Interop/Shell32/Interop.SHDRAGIMAGE.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for more information. | ||
|
||
using System.Drawing; | ||
using System.Runtime.InteropServices; | ||
using static Interop.Gdi32; | ||
|
||
internal partial class Interop | ||
{ | ||
internal static partial class Shell32 | ||
{ | ||
[StructLayout(LayoutKind.Sequential)] | ||
public struct SHDRAGIMAGE | ||
{ | ||
public Size sizeDragImage; | ||
public Point ptOffset; | ||
public HBITMAP hbmpDragImage; | ||
public COLORREF crColorKey; | ||
} | ||
} | ||
} |
55 changes: 55 additions & 0 deletions
55
src/System.Windows.Forms.Primitives/src/Interop/WinFormsComWrappers.IDropSourceNotifyVtbl.cs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
// Licensed to the .NET Foundation under one or more agreements. | ||
// The .NET Foundation licenses this file to you under the MIT license. | ||
// See the LICENSE file in the project root for more information. | ||
|
||
using System.Runtime.CompilerServices; | ||
using System.Runtime.InteropServices; | ||
|
||
internal partial class Interop | ||
{ | ||
internal unsafe partial class WinFormsComWrappers | ||
{ | ||
internal static class IDropSourceNotifyVtbl | ||
{ | ||
public static IntPtr Create(IntPtr fpQueryInterface, IntPtr fpAddRef, IntPtr fpRelease) | ||
{ | ||
IntPtr* vtblRaw = (IntPtr*)RuntimeHelpers.AllocateTypeAssociatedMemory(typeof(IDropSourceNotifyVtbl), IntPtr.Size * 5); | ||
vtblRaw[0] = fpQueryInterface; | ||
vtblRaw[1] = fpAddRef; | ||
vtblRaw[2] = fpRelease; | ||
vtblRaw[3] = (IntPtr)(delegate* unmanaged<IntPtr, IntPtr, HRESULT>)&DragEnterTarget; | ||
vtblRaw[4] = (IntPtr)(delegate* unmanaged<IntPtr, HRESULT>)&DragLeaveTarget; | ||
|
||
return (IntPtr)vtblRaw; | ||
} | ||
|
||
[UnmanagedCallersOnly] | ||
private static HRESULT DragEnterTarget(IntPtr thisPtr, IntPtr hwndTarget) | ||
{ | ||
try | ||
{ | ||
var instance = ComInterfaceDispatch.GetInstance<Ole32.IDropSourceNotify>((ComInterfaceDispatch*)thisPtr); | ||
return instance.DragEnterTarget(hwndTarget); | ||
} | ||
catch (Exception ex) | ||
{ | ||
return (HRESULT)ex.HResult; | ||
} | ||
} | ||
|
||
[UnmanagedCallersOnly] | ||
private static HRESULT DragLeaveTarget(IntPtr thisPtr) | ||
{ | ||
try | ||
{ | ||
var instance = ComInterfaceDispatch.GetInstance<Ole32.IDropSourceNotify>((ComInterfaceDispatch*)thisPtr); | ||
return instance.DragLeaveTarget(); | ||
} | ||
catch (Exception ex) | ||
{ | ||
return (HRESULT)ex.HResult; | ||
} | ||
} | ||
} | ||
} | ||
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,26 @@ | ||
~override System.Windows.Forms.WebBrowser.CreateAccessibilityInstance() -> System.Windows.Forms.AccessibleObject | ||
System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DropImageType.Invalid = -1 -> System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DropImageType.None = 0 -> System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DropImageType.Copy = 1 -> System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DropImageType.Move = 2 -> System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DropImageType.Link = 4 -> System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DropImageType.Label = 6 -> System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DropImageType.Warning = 7 -> System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DropImageType.NoImage = 8 -> System.Windows.Forms.DropImageType | ||
~System.Windows.Forms.Control.DoDragDrop(object data, System.Windows.Forms.DragDropEffects allowedEffects, System.Drawing.Bitmap dragImage, System.Drawing.Point cursorOffset, bool useDefaultDragImage) -> System.Windows.Forms.DragDropEffects | ||
~System.Windows.Forms.ToolStripItem.DoDragDrop(object data, System.Windows.Forms.DragDropEffects allowedEffects, System.Drawing.Bitmap dragImage, System.Drawing.Point cursorOffset, bool useDefaultDragImage) -> System.Windows.Forms.DragDropEffects | ||
System.Windows.Forms.DragEventArgs.DragEventArgs(System.Windows.Forms.IDataObject? data, int keyState, int x, int y, System.Windows.Forms.DragDropEffects allowedEffect, System.Windows.Forms.DragDropEffects effect, System.Windows.Forms.DropImageType dropImageType, string! message, string! messageReplacementToken) -> void | ||
System.Windows.Forms.DragEventArgs.DropImageType.get -> System.Windows.Forms.DropImageType | ||
System.Windows.Forms.DragEventArgs.DropImageType.set -> void | ||
System.Windows.Forms.DragEventArgs.Message.get -> string? | ||
System.Windows.Forms.DragEventArgs.Message.set -> void | ||
System.Windows.Forms.DragEventArgs.MessageReplacementToken.get -> string? | ||
System.Windows.Forms.DragEventArgs.MessageReplacementToken.set -> void | ||
System.Windows.Forms.GiveFeedbackEventArgs.GiveFeedbackEventArgs(System.Windows.Forms.DragDropEffects effect, bool useDefaultCursors, System.Drawing.Bitmap? dragImage, System.Drawing.Point cursorOffset, bool useDefaultDragImage) -> void | ||
System.Windows.Forms.GiveFeedbackEventArgs.CursorOffset.get -> System.Drawing.Point | ||
System.Windows.Forms.GiveFeedbackEventArgs.CursorOffset.set -> void | ||
System.Windows.Forms.GiveFeedbackEventArgs.DragImage.get -> System.Drawing.Bitmap? | ||
System.Windows.Forms.GiveFeedbackEventArgs.DragImage.set -> void | ||
System.Windows.Forms.GiveFeedbackEventArgs.UseDefaultDragImage.get -> bool | ||
System.Windows.Forms.GiveFeedbackEventArgs.UseDefaultDragImage.set -> void | ||
~override System.Windows.Forms.WebBrowser.CreateAccessibilityInstance() -> System.Windows.Forms.AccessibleObject |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.