Tommy Chheng | 16 Apr 17:19 2014
Picon

rendering a webkit output into a video file

I'm working on a system to render an HTML5 animation to a video file. So far, we have been able to use phantomjs to output image files at time intervals and combine them together with ffmpeg.

This solution mostly works but phantomjs doesn't include features like video tag support or webgl.

It looks like webkitgtk+ includes a full stack rendering with video tag(via gstreamer) and webgl support.

Where can i start investigating in the code how to use webkitgtk+ to snapshot a rendering of a web page at time intervals?

Because we want this to run as an automated process on a headless linux system, screencasting tools are out of the question.

Also, to give an analogy, if we have an animation system written in OpenGL, we can easily capture image frames to video using glReadPixels. We want the equivalent "glReadPixels" for webkitgtk. 

I noticed some mention of a webkitvideosink from http://gstreamer.freedesktop.org/conference/slides/webkit.pdf but not much details of how it works.


-- 
Tommy Chheng
<div><div dir="ltr">I'm working on a system to render an HTML5 animation to a video file. So far, we have been able to use phantomjs to output image files at time intervals and combine them together with ffmpeg.<div><br></div>

<div>This solution mostly works but phantomjs doesn't include features like video tag support or webgl.</div>
<div><br></div>
<div>It looks like webkitgtk+ includes a full stack rendering with video tag(via gstreamer) and webgl support.<br clear="all"><div><br></div>
<div>Where can i start investigating in the code how to use webkitgtk+ to snapshot a rendering of a web page at time intervals?</div>
<div><br></div>
<div><div>Because we want this to run as an automated process on a headless linux system, screencasting tools are out of the question.<br>
</div></div>
<div><br></div>
<div>
<span>Also, to give an analogy, if we have an animation system written in OpenGL, we can easily capture image frames to video using&nbsp;glReadPixels. We want the equivalent "glReadPixels" for webkitgtk.&nbsp;</span><br>
</div>
<div><span><br></span></div>
<div><div class=""></div></div>
<div>I noticed some mention of a&nbsp;webkitvideosink from&nbsp;<a href="http://gstreamer.freedesktop.org/conference/slides/webkit.pdf" target="_blank">http://gstreamer.freedesktop.org/conference/slides/webkit.pdf</a> but not much details of how it works.<br>
</div>
<div><br></div>
<div><br></div>
<div>--&nbsp;<br>
</div>Tommy Chheng
</div>
</div></div>
Rob Anderson | 16 Apr 04:44 2014
Picon

Fw: News

Hi!      

News:  http://webzentrum.com/eunj/news.php

 

Rob Anderson

<div><div class="WordSection1">
<p class="MsoNormal"> <span>Hi! &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <p></p></span></p>
<p class="MsoNormal"><span>News:&nbsp; <a href="http://webzentrum.com/eunj/news.php">http://webzentrum.com/eunj/news.php</a><p></p></span></p>
<p class="MsoNormal"><span><p>&nbsp;</p></span></p>
<p class="MsoNormal"><span> <p></p></span></p>
<p class="MsoNormal"><span>Rob Anderson<p></p></span></p>
</div></div>
Baldeva, Arpit | 10 Apr 02:46 2014

cached scripts leak in C Loop Interpreter mode

Hi,

 

I am using WebCore::gcController().discardAllCompiledCode() API to discard cached scripts and free up memory. This works pretty well in the JIT mode. However, when I used C Loop interpreter, the cached scripts are not discarded. So far, I have traced it down to JSC::SourceCode::m_provider member. The ref count on this member is all wrong.

 

The reproduction is pretty simple. Load a “hello world” type page in web view, then go to Google.com. That causes about 0.189 MB worth of scripts to get cached. Go back to the hello world page and now call WebCore::gcController().discardAllCompiledCode(). The JIT path is able to get rid of the cached scripts. However, C loop interpreter leaks pretty much everything (the ref count on the member noted about is around ~850 whereas it should be 1). The direct url of the problematic script is http://www.google.com/xjs/_/js/k=xjs.hp.en_US.75bv2nh_qxI.O/m=sb_he,pcc/rt=j/d=1/sv=1/rs=AItRSTOX5WMsAVpkgEafYeVKZ7ZCJdNXcg

 

An even more accessible scenario is just keep on reloading the sunspider test suite. I used 0.9.1 - http://www.webkit.org/perf/sunspider-0.9.1/sunspider-0.9.1/driver.html Every reload is pretty much leaking causing the memory usage to grow unbounded. The C Loop interpreter path memory usage goes up to 200 MB just within few minutes however the JIT path stays around 12 MB.

 

My version of code is about 5 months old (157437). However, I did not see any leak fixes going in recently when I search bugzilla.

 

Any help is appreciated.

 

Thanks

Arpit

 

 

<div>
<div class="WordSection1">
<p class="MsoNormal">Hi,<p></p></p>
<p class="MsoNormal"><p>&nbsp;</p></p>
<p class="MsoNormal">I am using WebCore::gcController().discardAllCompiledCode() API to discard cached scripts and free up memory. This works pretty well in the JIT mode. However, when I used C Loop interpreter, the cached scripts are not discarded. So far,
 I have traced it down to JSC::SourceCode::m_provider member. The ref count on this member is all wrong.
<p></p></p>
<p class="MsoNormal"><p>&nbsp;</p></p>
<p class="MsoNormal">The reproduction is pretty simple. Load a &ldquo;hello world&rdquo; type page in web view, then go to Google.com. That causes about 0.189 MB worth of scripts to get cached. Go back to the hello world page and now call WebCore::gcController().discardAllCompiledCode().
 The JIT path is able to get rid of the cached scripts. However, C loop interpreter leaks pretty much everything (the ref count on the member noted about is around ~850 whereas it should be 1). The direct url of the problematic script is
<a href="http://www.google.com/xjs/_/js/k=xjs.hp.en_US.75bv2nh_qxI.O/m=sb_he,pcc/rt=j/d=1/sv=1/rs=AItRSTOX5WMsAVpkgEafYeVKZ7ZCJdNXcg">
http://www.google.com/xjs/_/js/k=xjs.hp.en_US.75bv2nh_qxI.O/m=sb_he,pcc/rt=j/d=1/sv=1/rs=AItRSTOX5WMsAVpkgEafYeVKZ7ZCJdNXcg</a><p></p></p>
<p class="MsoNormal"><p>&nbsp;</p></p>
<p class="MsoNormal">An even more accessible scenario is just keep on reloading the sunspider test suite. I used 0.9.1 -
<a href="http://www.webkit.org/perf/sunspider-0.9.1/sunspider-0.9.1/driver.html">
http://www.webkit.org/perf/sunspider-0.9.1/sunspider-0.9.1/driver.html</a> Every reload is pretty much leaking causing the memory usage to grow unbounded. The C Loop interpreter path memory usage goes up to 200 MB just within few minutes however the JIT path
 stays around 12 MB.<p></p></p>
<p class="MsoNormal"><p>&nbsp;</p></p>
<p class="MsoNormal">My version of code is about 5 months old (157437). However, I did not see any leak fixes going in recently when I search bugzilla.<p></p></p>
<p class="MsoNormal"><p>&nbsp;</p></p>
<p class="MsoNormal">Any help is appreciated.<p></p></p>
<p class="MsoNormal"><p>&nbsp;</p></p>
<p class="MsoNormal">Thanks<p></p></p>
<p class="MsoNormal">Arpit<p></p></p>
<p class="MsoNormal"><p>&nbsp;</p></p>
<p class="MsoNormal"><p>&nbsp;</p></p>
</div>
</div>
Martin S Aguila | 9 Apr 22:54 2014
Picon

webkit on windows 7.


Hello Everyone

I have a question related to build webkit on windows 7.
I followed the instructions and I was able to complete a successful build on my machine (and it works pretty well). 
The problem appears when I want to use these binaries in a different machine, I get several errors related to missed dlls and libraries.
I was wondering if there is any way to build webkit to a single executable that includes all the needed libraries?
that would be great since right now if I want to execute webkit in other machine I need to install directXSDK, visual studio and other dependencies.

thanks!


<div><div dir="ltr">
<br clear="all"><div>
<div>Hello Everyone</div>
<div><br></div>
<div>
I have a question related to build webkit on windows 7.</div>
<div>I followed the instructions and I was able to complete a successful build on my machine (and it works pretty well).&nbsp;</div>
<div>The problem appears when I want to use these binaries in a different machine, I get several errors related to missed dlls and libraries.</div>
<div>
I was wondering if there is any way to build webkit to a single executable that includes all the needed libraries?</div>
<div>that would be great since right now if I want to execute webkit in other machine I need to install directXSDK, visual studio and other dependencies.<br>
</div>
<div><br></div>
<div>thanks!</div>
</div>
<div><br></div>
<br>
</div></div>
Sami Wagiaalla | 2 Apr 17:12 2014
Picon

WebKit2 Thread Safety

Hello all,

I have written a WebKitExtension to handle custom JavaScript injection 
for the Eclipse SWT Browser, but I have run into the following deadlock 
scenario while running the test suite:

A new WebView is created in the UI process this requires some handling 
in the Web process which eventually sends a synchronous message to the 
UI process and blocks to wait for the reply. The message results in a 
"create" signal in the WebView which in Eclipse code is forwarded to 
observers. Now if an observer tries to do anything which results in an 
attempt to inject custom JS this is forwarded to the WebExtension which 
is blocked because the Web Process is blocked since the signal handler 
has not yet returned.

My questions are has anyone else run into this problem ? And if I were 
to create a thread in the extension to handle messages from the UI 
process would it be safe to call core API from a second thread. 
Specifically JS* functions.

Thanks a lot,
   Sami
Andreas Mattheiss | 28 Mar 16:39 2014
Picon
Picon

midori/empathy Crashing

Hello,

I've been trying to get webkit onto my machine, building from source. I tried both full-blown webkits and
the webkitgtk - editions. Virtually everything on my system is self-compiled.

Most recent installments wouldn't build due to dependencies I'm unwilling to satisfy by upgrading, but
versions that do build are webkit-1.9.6 (from wekkitgtk) and WebKit-r133122 (from upstream) and others.

The trouble starts why I run midori since the browser starts to load a page but then crashes with

INTERNAL ERROR on Browser End: Some problem with the version 5

I'm 100% sure it's not midori but webkit that's causing this - when I build epiphany exactly the same
happens. The funny thing though is that some pages load ok, such as slackware.com or debian.org. Clicking
onto midori's "setting" menu item however causes the browser to crash. If it does crash, it does so after
having rendered the page. I've also built a recent liferea against this; this works ok though.

Is there anything that I could try here - as I said virtually everything on my box is self-compiled, but
configure obviously finds the right versions. Maybe there are some typical libraries that might cause
this and thus need attention?

Regards
Andreas

Barry Scott | 26 Mar 11:11 2014
Picon

X11 event mask not setup for webkitgtk window

[originally post to webkitgtk dev list]

 

I'm porting a webkitgtk app from Fedora 16 to Fedora 20 and I have hit a

problem with the X11 event mask not allowing mouse or keyboard input.

The app has been ported to gtk3 but I'm still using the webkit1 API.

The RPM is: webkitgtk3-2.2.5-1.fc20.x86_64.

In this application there are no scroll bars and a controlling process

can set the size position and offset of the window that is drawn.

The Fedora 16 version of the code works as expected.

This is the key code I use to create the browser window:

m_widget_toplevel = gtk_window_new( GTK_WINDOW_TOPLEVEL );

m_window_toplevel = GTK_WINDOW( m_widget_toplevel );

m_widget_fixed = gtk_fixed_new();

m_fixed = GTK_FIXED( m_widget_fixed );

m_widget_webview = webkit_web_view_new();

m_webview = WEBKIT_WEB_VIEW( m_widget_webview );

WebKitWebSettings *settings = webkit_web_view_get_settings( m_webview );

g_object_set( G_OBJECT( settings ), "enable-file-access-from-file-uris", TRUE, NULL );

g_object_set( G_OBJECT( settings ), "enable-universal-access-from-file-uris", TRUE, NULL );

connectToSignals();

webkit_web_view_set_full_content_zoom( m_webview, TRUE );

gtk_fixed_put( m_fixed, m_widget_webview, 0, 0 );

gtk_window_set_title( m_window_toplevel, m_browser_name.c_str() );

// If we don't set the window to a size request of 1x1, it will

// default to the size of the largest child. GTK autolayout will

// then expand the window to the larger of the window size request

// or the size we set.

//

// We avoid problems elsewhere by using a GtkFixed to stop

// WebKit's size request bubbling up to the window.

gtk_widget_set_size_request( m_widget_toplevel, 1, 1 );

_setCanvasSize( *m_properties_active );

_setCanvasPosition( *m_properties_active );

_setWindowSize( *m_properties_active );

_setWindowPosition( *m_properties_active );

gtk_container_add( GTK_CONTAINER( m_widget_toplevel ), m_widget_fixed );

gtk_widget_grab_focus( m_widget_webview );

gtk_widget_show_all( m_widget_toplevel );

I added some debug to find the addresses of the key objects

and using gdb found the XID used by the GdkWindow.

Info: m_widget_toplevel is 0x6d8330 window is 0x6d8330 GdkWindow is 0x6b8280

XID = 0xc00003

Info: m_widget_fixed is 0x6c8210 window is 0x6c8210 GdkWindow is 0x6b8280

Info: m_widget_webview is 0x69e370 window is 0x69e370 GdkWindow is 0x6b84e0

Using xwininfo I can check the state of the X window that is created.

# xwininfo -tree -root

xwininfo: Window id: 0xa4 (the root window) (has no name)

Root window id: 0xa4 (the root window) (has no name)

Parent window id: 0x0 (none)

8 children:

0xa00002 "player_text_T6": () 2000x2000+2000+2000 +2000+2000

0xc00003 "player_html-o.H4": ("player_html" "Player_html") 1267x713+41+32 +41+32

1 child:

0xc00004 (has no name): () 1x1+-1+-1 +40+31

0x600002 "player_image_I3": () 1360x768+0+0 +0+0

0xc0000c (has no name): () 1x1+-1+-1 +-1+-1

0xc00001 "player_html": ("player_html" "Player_html") 10x10+10+10 +10+10

1 child:

0xc00002 (has no name): () 1x1+-1+-1 +9+9

0x800002 "player_text_hiddenT6": () 1x1+2000+2000 +2000+2000

0x400001 "ntbglcomp": () 1x1+0+0 +0+0

0x200001 "screen_manager_hidden": () 1x1+2000+2000 +2000+2000

# xwininfo -events -id 0xc00003

xwininfo: Window id: 0xc00003 "player_html-o.H4"

Someone wants these events:

Exposure

VisibilityChange

StructureNotify

SubstructureNotify

PropertyChange

Do not propagate these events:

Override redirection?: No

The problem is that the m_widget_webview has a GdkWindows but does not

have a X window. The only X windows is realised for the m_widget_toplevel

and shared with m_widget_fixed.

What have I missed that makes GTK create the X window for m_widget_webview?

Barry

<div>
<p>[originally post to webkitgtk dev list]</p>
<p>&nbsp;</p>
<p>I'm porting a webkitgtk app from Fedora 16 to Fedora 20 and I have hit a</p>
<p>problem with the X11 event mask not allowing mouse or keyboard input.</p>
<p> </p>
<p>The app has been ported to gtk3 but I'm still using the webkit1 API.</p>
<p>The RPM is: webkitgtk3-2.2.5-1.fc20.x86_64.</p>
<p> </p>
<p>In this application there are no scroll bars and a controlling process</p>
<p>can set the size position and offset of the window that is drawn.</p>
<p> </p>
<p>The Fedora 16 version of the code works as expected.</p>
<p> </p>
<p>This is the key code I use to create the browser window:</p>
<p> </p>
<p>    m_widget_toplevel = gtk_window_new( GTK_WINDOW_TOPLEVEL );</p>
<p>    m_window_toplevel = GTK_WINDOW( m_widget_toplevel );</p>
<p> </p>
<p>    m_widget_fixed = gtk_fixed_new();</p>
<p>    m_fixed = GTK_FIXED( m_widget_fixed );</p>
<p> </p>
<p>    m_widget_webview = webkit_web_view_new();</p>
<p>    m_webview = WEBKIT_WEB_VIEW( m_widget_webview );</p>
<p> </p>
<p>    WebKitWebSettings *settings = webkit_web_view_get_settings( m_webview );</p>
<p>    g_object_set( G_OBJECT( settings ), "enable-file-access-from-file-uris", TRUE, NULL );</p>
<p>    g_object_set( G_OBJECT( settings ), "enable-universal-access-from-file-uris", TRUE, NULL );</p>
<p> </p>
<p>    connectToSignals();</p>
<p> </p>
<p>    webkit_web_view_set_full_content_zoom( m_webview, TRUE );</p>
<p> </p>
<p>    gtk_fixed_put( m_fixed, m_widget_webview,  0, 0 );</p>
<p>    gtk_window_set_title( m_window_toplevel, m_browser_name.c_str() );</p>
<p> </p>
<p>    // If we don't set the window to a size request of 1x1, it will</p>
<p>    // default to the size of the largest child. GTK autolayout will</p>
<p>    // then expand the window to the larger of the window size request</p>
<p>    // or the size we set.</p>
<p>    //</p>
<p>    // We avoid problems elsewhere by using a GtkFixed to stop</p>
<p>    // WebKit's size request bubbling up to the window.</p>
<p> </p>
<p>    gtk_widget_set_size_request( m_widget_toplevel, 1, 1 );</p>
<p> </p>
<p>    _setCanvasSize( *m_properties_active );</p>
<p>    _setCanvasPosition( *m_properties_active );</p>
<p>    _setWindowSize( *m_properties_active );</p>
<p>    _setWindowPosition( *m_properties_active );</p>
<p> </p>
<p>    gtk_container_add( GTK_CONTAINER( m_widget_toplevel ), m_widget_fixed );</p>
<p>    gtk_widget_grab_focus( m_widget_webview );</p>
<p>    gtk_widget_show_all( m_widget_toplevel );</p>
<p> </p>
<p>I added some debug to find the addresses of the key objects</p>
<p>and using gdb found the XID used by the GdkWindow.</p>
<p> </p>
<p>Info: m_widget_toplevel is  0x6d8330 window is 0x6d8330 GdkWindow is 0x6b8280</p>
<p>XID = 0xc00003</p>
<p>Info: m_widget_fixed is   0x6c8210 window is 0x6c8210 GdkWindow is 0x6b8280</p>
<p>Info: m_widget_webview is 0x69e370 window is 0x69e370 GdkWindow is 0x6b84e0</p>
<p> </p>
<p>Using xwininfo I can check the state of the X window that is created.</p>
<p> </p>
<p># xwininfo -tree -root</p>
<p> </p>
<p>xwininfo: Window id: 0xa4 (the root window) (has no name)</p>
<p> </p>
<p>  Root window id: 0xa4 (the root window) (has no name)</p>
<p>  Parent window id: 0x0 (none)</p>
<p>     8 children:</p>
<p>     0xa00002 "player_text_T6": ()  2000x2000+2000+2000  +2000+2000</p>
<p>     0xc00003 "player_html-o.H4": ("player_html" "Player_html")  1267x713+41+32  +41+32</p>
<p>        1 child:</p>
<p>        0xc00004 (has no name): ()  1x1+-1+-1  +40+31</p>
<p>     0x600002 "player_image_I3": ()  1360x768+0+0  +0+0</p>
<p>     0xc0000c (has no name): ()  1x1+-1+-1  +-1+-1</p>
<p>     0xc00001 "player_html": ("player_html" "Player_html")  10x10+10+10  +10+10</p>
<p>        1 child:</p>
<p>        0xc00002 (has no name): ()  1x1+-1+-1  +9+9</p>
<p>     0x800002 "player_text_hiddenT6": ()  1x1+2000+2000  +2000+2000</p>
<p>     0x400001 "ntbglcomp": ()  1x1+0+0  +0+0</p>
<p>     0x200001 "screen_manager_hidden": ()  1x1+2000+2000  +2000+2000</p>
<p> </p>
<p># xwininfo -events -id 0xc00003</p>
<p> </p>
<p>xwininfo: Window id: 0xc00003 "player_html-o.H4"</p>
<p> </p>
<p>  Someone wants these events:</p>
<p>      Exposure</p>
<p>      VisibilityChange</p>
<p>      StructureNotify</p>
<p>      SubstructureNotify</p>
<p>      PropertyChange</p>
<p>  Do not propagate these events:</p>
<p>  Override redirection?: No</p>
<p> </p>
<p>The problem is that the m_widget_webview has a GdkWindows but does not</p>
<p>have a X window. The only X windows is realised for the m_widget_toplevel</p>
<p>and shared with m_widget_fixed.</p>
<p> </p>
<p>What have I missed that makes GTK create the X window for m_widget_webview?</p>
<p> </p>
<p>Barry</p>
<p> </p>
</div>
jyothi kumar | 24 Mar 07:30 2014
Picon

Documentation for APIClient and APIObject

Hi All,

I am a beginner in understanding webkit2 project. Is there any documentation/Design principle available for understanding classes like APIClient,APIObject etc..

Thanks in advance

<div><div dir="ltr">Hi All,<div><br></div>
<div>I am a beginner in understanding webkit2 project. Is there any documentation/Design principle available for understanding classes like APIClient,APIObject etc..</div>
<div><br></div>
<div>Thanks in advance</div>
<div><br></div>
</div></div>
Manish Gurnaney | 20 Mar 14:34 2014
Picon

DumpRenderTree crashed while executing layout test case

Hi All,
      I want to execute some layout test cases, but when ever I am running the layout test case , DumpRenderTree is getting crashed and there are logs getting generated.
      I tried to execute DumpRenderTreeLauncher in Visual Studio there also it is getting crash with the following call stack.
CallStack:- 

> DumpRenderTree.dll!WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility(bool flag) Line 134 C++
  DumpRenderTree.dll!WebCore::Internals::resetToConsistentState(WebCore::Page * page) Line 296 C++
  DumpRenderTree.dll!WebCoreTestSupport::resetInternalsObject(const OpaqueJSContext * context) Line 59 C++
  DumpRenderTree.dll!resetWebViewToConsistentStateBeforeTesting() Line 890 C++
  DumpRenderTree.dll!runTest(const std::basic_string<char,std::char_traits<char>,std::allocator<char> > & inputLine) Line 1065 C++
  DumpRenderTree.dll!main(int argc, const char * * argv) Line 1404 C++
  DumpRenderTree.dll!dllLauncherEntryPoint(int argc, const char * * argv) Line 1429 C++
  DumpRenderTree.exe!main(int argc, const char * * argv) Line 241 C++
    
-- Please suggests how to correct this behavior.
Regards,
Manish R Gurnaney

<div><div dir="ltr">
<div>Hi All,</div>
<div>&nbsp; &nbsp; &nbsp; I want to execute some layout test cases, but when ever I am running the layout test case , DumpRenderTree is getting crashed and there are logs getting generated.</div>
<div>&nbsp; &nbsp; &nbsp; I tried to execute DumpRenderTreeLauncher in Visual Studio there also it is getting crash with the following call stack.</div>
<div>CallStack:-&nbsp;</div>
<div><br></div>
<div>&gt;<span class="">	</span>DumpRenderTree.dll!WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility(bool flag) Line 134<span class="">	</span>C++</div>
<div>&nbsp;<span class="">	</span>DumpRenderTree.dll!WebCore::Internals::resetToConsistentState(WebCore::Page * page) Line 296<span class="">	</span>C++</div>
<div>&nbsp;<span class="">	</span>DumpRenderTree.dll!WebCoreTestSupport::resetInternalsObject(const OpaqueJSContext * context) Line 59<span class="">	</span>C++</div>
<div>&nbsp;<span class="">	</span>DumpRenderTree.dll!resetWebViewToConsistentStateBeforeTesting() Line 890<span class="">	</span>C++</div>
<div>&nbsp;<span class="">	</span>DumpRenderTree.dll!runTest(const std::basic_string&lt;char,std::char_traits&lt;char&gt;,std::allocator&lt;char&gt; &gt; &amp; inputLine) Line 1065<span class="">	</span>C++</div>
<div>&nbsp;<span class="">	</span>DumpRenderTree.dll!main(int argc, const char * * argv) Line 1404<span class="">	</span>C++</div>
<div>&nbsp;<span class="">	</span>DumpRenderTree.dll!dllLauncherEntryPoint(int argc, const char * * argv) Line 1429<span class="">	</span>C++</div>
<div>&nbsp;<span class="">	</span>DumpRenderTree.exe!main(int argc, const char * * argv) Line 241<span class="">	</span>C++</div>
<div>&nbsp; &nbsp;&nbsp;</div>
<div>-- Please suggests how to correct this behavior.</div>
<div>Regards,</div>
<div>Manish R Gurnaney</div>
<div><br></div>
</div></div>

cancel XmlHttpRequest upload when internet port is cUrl

Hi all

I work on webkit with cUrl lib.
In html,I use XmlHttpRequest to upload 8M data in "post" method.
I register progress callback in ResourceHandleManager.cpp
When uploading, I try to reload the html page。
In expect the XmlHttpRequest will be reset, the data transfer will be canceled.
But in actually, the page is reloaded , the data transfer is not be canceled and progress callback will 
be called until the data is transferred completely.

I don't know how to cancel it.
Firstly, I think when read callback return 0,the transfer will be canceled.
But, when XmlHttpRequest upload begin, the read callback will never be called.

Anyone know how to fix it ?

Thanks in advance. 

_______________________________________________
webkit-help mailing list
webkit-help <at> lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-help
Deepak Mittal | 14 Mar 14:07 2014
Picon

simulating end key in mac



-- Hi,

I wanted to simulate 'end' key behavior for one of my test case..

I know selecting
function key + rightArrow key will do same behavior as 'end' key in mac..

But I wanted to know how to do that in the java script..so that my test case get passed in the mac..

in windows

eventSender.keyDown("end");  works ..so what is the corresponding call for simulating the 'end' in mac..?

please let me know ...

 
Regards
Deepak Mittal
<div><div dir="ltr">
<div>
<div>
<div>
<div>
<div>
<div>
<br clear="all"><br>
</div>-- Hi,<br><br>
</div>I wanted to simulate 'end' key behavior for one of my test case..<br><br>
</div>I know selecting <br>function key + rightArrow key will do same behavior as 'end' key in mac..<br><br>
</div>But I wanted to know how to do that in the java script..so that my test case get passed in the mac..<br><br>
</div>in windows <br><br>eventSender.keyDown("end");&nbsp; works ..so what is the corresponding call for simulating the 'end' in mac..?<br><br>
</div>please let me know ...<br><br><div><div><div><div><div><div>
<div dir="ltr">
<div>&nbsp;</div>
<div>Regards</div>
<div>Deepak Mittal</div>
</div>
</div></div></div></div></div></div>
</div></div>

Gmane