Skip to content

Commit d1769ca

Browse files
jgrahamAutomatedTester
authored andcommitted
Add a endpoint for creating a new window.
This adds an endpoint at /session/<session id>/window/new that opens a new top-level browsing context. This takes a single parameter "type" that is used as a hint as to the kind of window to create within the application. The return value includes the handle of the new window and the type of the window that was created.
1 parent be19393 commit d1769ca

File tree

1 file changed

+77
-0
lines changed

1 file changed

+77
-0
lines changed

index.html

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -759,6 +759,12 @@ <h3>Endpoints</h3>
759759
<td><a>Get Window Handles</a></td>
760760
</tr>
761761

762+
<tr>
763+
<td>POST</td>
764+
<td>/session/{<var>session id</var>}/window/new</td>
765+
<td><a>Create Window</a></td>
766+
</tr>
767+
762768
<tr>
763769
<td>POST</td>
764770
<td>/session/{<var>session id</var>}/frame</td>
@@ -3230,6 +3236,76 @@ <h3><dfn>Get Window Handles</dfn></h3>
32303236
</aside>
32313237
</section> <!-- /Get Window Handles -->
32323238

3239+
<section>
3240+
<h3><dfn>Create Window</dfn></h3>
3241+
3242+
<table class="simple jsoncommand">
3243+
<tr>
3244+
<th>HTTP Method</th>
3245+
<th>URI Template</th>
3246+
</tr>
3247+
<tr>
3248+
<td>GET</td>
3249+
<td>/session/{<var>session id</var>}/window/new</td>
3250+
</tr>
3251+
</table>
3252+
3253+
<p>Create a new <a>top-level browsing context</a>.
3254+
3255+
<p>The <a>remote end steps</a> are:
3256+
3257+
<ol>
3258+
<li><p>If the implementation does not support creating new top-level
3259+
browsing contexts, return <a>error</a> with <a>error code</a>
3260+
<a>unsupported operation</a>.
3261+
3262+
<li><p>If the <a>current top-level browsing context</a> is <a>no longer open</a>,
3263+
return <a>error</a> with <a>error code</a> <a>no such window</a>.
3264+
3265+
<li><p><a>Handle any user prompts</a> and return its value if it is an <a>error</a>.
3266+
3267+
<li><p>Let <var>type hint</var> be the result of <a>getting the property</a>
3268+
"<code>type</code>" from the <var>parameters</var> argument.
3269+
3270+
<li><p>Create a new <a>top-level browsing context</a> by running
3271+
the <a>window open steps</a> with <var>url</var> set to
3272+
"<code>about:blank</code>", <var>target</var> set to the empty
3273+
string, and <var>features</var> set to "<code>noopener</code>" and
3274+
the user agent configured to create a new browing context. This must
3275+
be done without invoking the <a>focusing steps</a> for the created browsing
3276+
context. If <var>type hint</var> has the value "<code>tab</code>",
3277+
and the implementation supports multiple browsing context in the
3278+
same OS window, the new browsing context should share an OS window
3279+
with the <a>current browsing context</a>. If <var>type hint</var> is
3280+
"<code>window</code>", and the implementation supports multiple
3281+
browsing contexts in seperate OS windows, the created browsing
3282+
context should be in a new OS window. In all other cases the details
3283+
of how the browsing context is presented to the user are
3284+
implementation defined.
3285+
3286+
<li><p>Let <var>handle</var> be the
3287+
associated <a>window handle</a> of the newly created window.
3288+
3289+
<li><p>Let <var>type</var> be "<code>tab</code>" if the newly created
3290+
window shares an OS-level window with the <a>current browsing
3291+
context</a>, or "<code>window</code>" otherwise.
3292+
3293+
<li><p>Let <var>result</var> be a new JSON <a>Object</a> initialised with:
3294+
3295+
<dl>
3296+
<dt>"<code>handle</code>"
3297+
<dd>The value of <var>handle</var>.
3298+
3299+
<dt>"<code>type</code>"
3300+
<dd>The value of <var>type</var>.
3301+
3302+
</dl>
3303+
3304+
<li><p>Return <a>success</a> with data <var>result</var>.
3305+
</ol>
3306+
3307+
</section> <!-- /Create Window -->
3308+
32333309
<section>
32343310
<h3><dfn>Switch To Frame</dfn></h3>
32353311

@@ -9384,6 +9460,7 @@ <h2>Index</h2>
93849460
<!-- Value mode flag --> <li><dfn><a href=https://html.spec.whatwg.org/#concept-output-mode>Value mode flag</a></dfn>
93859461
<!-- Value sanitization algorithm --> <li><dfn><a href=https://html.spec.whatwg.org/#value-sanitization-algorithm>Value sanitization algorithm</a></dfn>
93869462
<!-- Window object --> <li><dfn><a href=https://html.spec.whatwg.org/#the-window-object><code>Window</code></a></dfn> object
9463+
<!-- Window open steps --> <li><dfn><a href=https://html.spec.whatwg.org/#window-open-steps>Window open steps</a></dfn>
93879464
<!-- WindowProxy exotic object --> <li><dfn><a href=https://html.spec.whatwg.org/#windowproxy><code>WindowProxy</code></a></dfn> exotic object
93889465
<!-- WorkerNavigator --> <li><dfn data-lt="workernavigator"><a href=https://html.spec.whatwg.org/#workernavigator>WorkerNavigator object</a></dfn>
93899466
<!-- setSelectionRange --> <li><dfn data-lt="set selection range"><a href=https://html.spec.whatwg.org/#dom-textarea/input-setselectionrange><code>setSelectionRange</code></a></dfn>

0 commit comments

Comments
 (0)