How to use DragAsync method of PuppeteerSharp.Input.Mouse class

Best Puppeteer-sharp code snippet using PuppeteerSharp.Input.Mouse.DragAsync

ElementHandle.cs

Source:ElementHandle.cs Github

copy

Full Screen

...467 /// </summary>468 /// <param name="x">X coordinate</param>469 /// <param name="y">Y coordinate</param>470 /// <returns>A Task that resolves when the message was confirmed by the browser with the drag data</returns>471 public async Task<DragData> DragAsync(decimal x, decimal y)472 {473 if (!Page.IsDragInterceptionEnabled)474 {475 throw new PuppeteerException("Drag Interception is not enabled!");476 }477 await ScrollIntoViewIfNeededAsync().ConfigureAwait(false);478 var start = await ClickablePointAsync().ConfigureAwait(false);479 return await Page.Mouse.DragAsync(start.X, start.Y, x, y).ConfigureAwait(false);480 }481 /// <summary>482 /// Dispatches a `dragenter` event.483 /// </summary>484 /// <param name="data">Drag data containing items and operations mask.</param>485 /// <returns>A Task that resolves when the message was confirmed by the browser</returns>486 public async Task DragEnterAsync(DragData data)487 {488 if (!Page.IsDragInterceptionEnabled)489 {490 throw new PuppeteerException("Drag Interception is not enabled!");491 }492 await ScrollIntoViewIfNeededAsync().ConfigureAwait(false);493 var (x, y) = await ClickablePointAsync().ConfigureAwait(false);...

Full Screen

Full Screen

Mouse.cs

Source:Mouse.cs Github

copy

Full Screen

...139 /// <param name="startY">Start Y coordinate</param>140 /// <param name="endX">End X coordinate</param>141 /// <param name="endY">End Y coordinate</param>142 /// <returns>A Task that resolves when the message was confirmed by the browser with the drag data</returns>143 public async Task<DragData> DragAsync(decimal startX, decimal startY, decimal endX, decimal endY)144 {145 var result = new TaskCompletionSource<DragData>();146 void DragIntercepted(object sender, MessageEventArgs e)147 {148 if (e.MessageID == "Input.dragIntercepted")149 {150 result.TrySetResult(e.MessageData.SelectToken("data").ToObject<DragData>());151 _client.MessageReceived -= DragIntercepted;152 }153 }154 _client.MessageReceived += DragIntercepted;155 await MoveAsync(startX, startY).ConfigureAwait(false);156 await DownAsync().ConfigureAwait(false);157 await MoveAsync(endX, endY).ConfigureAwait(false);158 return await result.Task.ConfigureAwait(false);159 }160 /// <summary>161 /// Dispatches a `dragenter` event.162 /// </summary>163 /// <param name="x">x coordinate</param>164 /// <param name="y">y coordinate</param>165 /// <param name="data">Drag data containing items and operations mask.</param>166 /// <returns>A Task that resolves when the message was confirmed by the browser</returns>167 public Task DragEnterAsync(decimal x, decimal y, DragData data)168 => _client.SendAsync(169 "Input.dispatchDragEvent",170 new InputDispatchDragEventRequest171 {172 Type = DragEventType.DragEnter,173 X = x,174 Y = y,175 Modifiers = _keyboard.Modifiers,176 Data = data,177 });178 /// <summary>179 /// Dispatches a `dragover` event.180 /// </summary>181 /// <param name="x">x coordinate</param>182 /// <param name="y">y coordinate</param>183 /// <param name="data">Drag data containing items and operations mask.</param>184 /// <returns>A Task that resolves when the message was confirmed by the browser</returns>185 public Task DragOverAsync(decimal x, decimal y, DragData data)186 => _client.SendAsync(187 "Input.dispatchDragEvent",188 new InputDispatchDragEventRequest189 {190 Type = DragEventType.DragOver,191 X = x,192 Y = y,193 Modifiers = _keyboard.Modifiers,194 Data = data,195 });196 /// <summary>197 /// Dispatches a `drop` event.198 /// </summary>199 /// <param name="x">x coordinate</param>200 /// <param name="y">y coordinate</param>201 /// <param name="data">Drag data containing items and operations mask.</param>202 /// <returns>A Task that resolves when the message was confirmed by the browser</returns>203 public Task DropAsync(decimal x, decimal y, DragData data)204 => _client.SendAsync(205 "Input.dispatchDragEvent",206 new InputDispatchDragEventRequest207 {208 Type = DragEventType.Drop,209 X = x,210 Y = y,211 Modifiers = _keyboard.Modifiers,212 Data = data,213 });214 /// <summary>215 /// Performs a drag, dragenter, dragover, and drop in sequence.216 /// </summary>217 /// <param name="startX">Start X coordinate</param>218 /// <param name="startY">Start Y coordinate</param>219 /// <param name="endX">End X coordinate</param>220 /// <param name="endY">End Y coordinate</param>221 /// <param name="delay">If specified, is the time to wait between `dragover` and `drop` in milliseconds.</param>222 /// <returns>A Task that resolves when the message was confirmed by the browser</returns>223 public async Task DragAndDropAsync(decimal startX, decimal startY, decimal endX, decimal endY, int delay = 0)224 {225 var data = await DragAsync(startX, startY, endX, endY).ConfigureAwait(false);226 await DragEnterAsync(endX, endY, data).ConfigureAwait(false);227 await DragOverAsync(endX, endY, data).ConfigureAwait(false);228 if (delay > 0)229 {230 await Task.Delay(delay).ConfigureAwait(false);231 }232 await DropAsync(endX, endY, data).ConfigureAwait(false);233 await UpAsync().ConfigureAwait(false);234 }235 }236}...

Full Screen

Full Screen

DragAsync

Using AI Code Generation

copy

Full Screen

1var mouse = page.Mouse;2await mouse.MoveAsync(100, 100);3await mouse.DownAsync();4await mouse.MoveAsync(200, 200, new MoveOptions { Steps = 5 });5await mouse.UpAsync();6var touch = page.Touchscreen;7await touch.TapAsync(100, 100);8await touch.MoveAsync(200, 200);9await touch.UpAsync();10var keyboard = page.Keyboard;11await keyboard.DownAsync("Shift");12await keyboard.PressAsync("ArrowLeft");13await keyboard.UpAsync("Shift");14await page.EvaluateFunctionAsync(@"() => {15 document.querySelector('input').focus();16}");17await keyboard.DownAsync("Shift");18await keyboard.PressAsync("ArrowLeft");19await keyboard.UpAsync("Shift");20await page.EvaluateFunctionAsync(@"() => {21 document.querySelector('input').focus();22}");23await keyboard.DownAsync("Shift");24await keyboard.PressAsync("ArrowLeft");25await keyboard.UpAsync("Shift");26await page.EvaluateFunctionAsync(@"() => {27 document.querySelector('input').focus();28}");29await keyboard.DownAsync("Shift");30await keyboard.PressAsync("ArrowLeft");31await keyboard.UpAsync("Shift");32await page.EvaluateFunctionAsync(@"() => {33 document.querySelector('input').focus();34}");35await keyboard.DownAsync("Shift");

Full Screen

Full Screen

DragAsync

Using AI Code Generation

copy

Full Screen

1var page = await browser.NewPageAsync();2await page.WaitForSelectorAsync("input[name=q]");3await page.TypeAsync("input[name=q]", "Hello World");4await page.ClickAsync("input[name=btnK]");5await page.WaitForNavigationAsync();6await page.ScreenshotAsync("screenshot.png");7var page = await browser.NewPageAsync();8await page.WaitForSelectorAsync("input[name=q]");9await page.TypeAsync("input[name=q]", "Hello World");10await page.ClickAsync("input[name=btnK]");11await page.WaitForNavigationAsync();12await page.ScreenshotAsync("screenshot.png");13var page = await browser.NewPageAsync();14await page.WaitForSelectorAsync("input[name=q]");15await page.TypeAsync("input[name=q]", "Hello World");16await page.ClickAsync("input[name=btnK]");17await page.WaitForNavigationAsync();18await page.ScreenshotAsync("screenshot.png");19var page = await browser.NewPageAsync();20await page.WaitForSelectorAsync("input[name=q]");21await page.TypeAsync("input[name=q]", "Hello World");22await page.ClickAsync("input[name=btnK]");23await page.WaitForNavigationAsync();24await page.ScreenshotAsync("screenshot.png");25var page = await browser.NewPageAsync();26await page.WaitForSelectorAsync("input[name=q]");27await page.TypeAsync("input[name=q]", "Hello World");28await page.ClickAsync("input[name=btnK]");29await page.WaitForNavigationAsync();30await page.ScreenshotAsync("screenshot.png");31var page = await browser.NewPageAsync();32await page.WaitForSelectorAsync("input[name=q]");

Full Screen

Full Screen

DragAsync

Using AI Code Generation

copy

Full Screen

1await page.Mouse.DragAsync("css=div", 0, 0);2await page.Mouse.DragAndDropAsync("css=div", 0, 0);3await page.Mouse.DragAsync("css=div", 0, 0);4await page.Mouse.DragAndDropAsync("css=div", 0, 0);5await page.Mouse.DragAsync("css=div", 0, 0);6await page.Mouse.DragAndDropAsync("css=div", 0, 0);7await page.Mouse.DragAsync("css=div", 0, 0);8await page.Mouse.DragAndDropAsync("css=div", 0, 0);9await page.Mouse.DragAsync("css=div", 0, 0);10await page.Mouse.DragAndDropAsync("css=div", 0, 0);11await page.Mouse.DragAsync("css=div", 0, 0);12await page.Mouse.DragAndDropAsync("css=div", 0, 0);13await page.Mouse.DragAsync("css=div", 0, 0);14await page.Mouse.DragAndDropAsync("css=div",

Full Screen

Full Screen

DragAsync

Using AI Code Generation

copy

Full Screen

1var page = await browser.NewPageAsync();2await page.Mouse.DragAsync(1, 1);3await page.Mouse.DragAsync(1, 1, 100);4var page = await browser.NewPageAsync();5await page.Mouse.DragAsync(1, 1, 100);6var page = await browser.NewPageAsync();7await page.Mouse.DragAsync(1, 1, 100);8var page = await browser.NewPageAsync();9await page.Mouse.DragAsync(1, 1, 100);10var page = await browser.NewPageAsync();11await page.Mouse.DragAsync(1, 1, 100);12var page = await browser.NewPageAsync();13await page.Mouse.DragAsync(1, 1, 100);14var page = await browser.NewPageAsync();15await page.Mouse.DragAsync(1, 1, 100);16var page = await browser.NewPageAsync();17await page.Mouse.DragAsync(1, 1, 100);18var page = await browser.NewPageAsync();

Full Screen

Full Screen

DragAsync

Using AI Code Generation

copy

Full Screen

1using PuppeteerSharp;2using System;3using System.Threading.Tasks;4{5 {6 static async Task Main(string[] args)7 {8 await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision);9 var browser = await Puppeteer.LaunchAsync(new LaunchOptions10 {11 });12 var page = await browser.NewPageAsync();13 var mouse = page.Mouse;14 await mouse.MoveAsync(100, 100);15 await mouse.DownAsync();16 await mouse.MoveAsync(200, 200, new MouseOptions { Steps = 10 });17 await mouse.UpAsync();18 await Task.Delay(5000);19 await browser.CloseAsync();20 }21 }22}

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Puppeteer-sharp automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful