Merge all of templates-sdk-dev into templates-sdk.

I actually just deleted templates-sdk/ then made a copy of templates-sdk-dev/
and then renamed it to templates-sdk/. So this is a clean copy.
Once this goes through cleanly, I'll delete templates-sdk-dev/ and update
all doc targets to use templates-sdk/.

Change-Id: I276695969e02fcf718370564e84b077a9d43725e
This commit is contained in:
smain@google.com
2016-08-31 11:30:02 -07:00
parent 6d00e69c3f
commit 4f3a05a2c6
33 changed files with 9200 additions and 6846 deletions

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 513 B

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 860 B

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 880 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 670 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -2764,3 +2764,9 @@ jQuery.effects||function(a,b){function c(b){var c;return b&&b.constructor==Array
* Includes: jquery.effects.transfer.js * Includes: jquery.effects.transfer.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */ * Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.transfer=function(b){return this.queue(function(){var c=a(this),d=a(b.options.to),e=d.offset(),f={top:e.top,left:e.left,height:d.innerHeight(),width:d.innerWidth()},g=c.offset(),h=a('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(b.options.className).css({top:g.top,left:g.left,height:c.innerHeight(),width:c.innerWidth(),position:"absolute"}).animate(f,b.duration,b.options.easing,function(){h.remove(),b.callback&&b.callback.apply(c[0],arguments),c.dequeue()})})}})(jQuery);; (function(a,b){a.effects.transfer=function(b){return this.queue(function(){var c=a(this),d=a(b.options.to),e=d.offset(),f={top:e.top,left:e.left,height:d.innerHeight(),width:d.innerWidth()},g=c.offset(),h=a('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(b.options.className).css({top:g.top,left:g.left,height:c.innerHeight(),width:c.innerWidth(),position:"absolute"}).animate(f,b.duration,b.options.easing,function(){h.remove(),b.callback&&b.callback.apply(c[0],arguments),c.dequeue()})})}})(jQuery);;
/*! (c) 2012 Airbnb, Inc.
*
* polyglot.js 0.4.3 may be freely distributed under the terms of the BSD
* license. For all licensing information, details, and documention:
* http://airbnb.github.com/polyglot.js */
(function(e,t){typeof define=="function"&&define.amd?define([],function(){return t(e)}):typeof exports=="object"?module.exports=t(e):e.Polyglot=t(e)})(this,function(e){"use strict";function t(e){e=e||{},this.phrases={},this.extend(e.phrases||{}),this.currentLocale=e.locale||"en",this.allowMissing=!!e.allowMissing,this.warn=e.warn||c}function s(e){var t,n,r,i={};for(t in e)if(e.hasOwnProperty(t)){n=e[t];for(r in n)i[n[r]]=t}return i}function o(e){var t=/^\s+|\s+$/g;return e.replace(t,"")}function u(e,t,r){var i,s,u;return r!=null&&e?(s=e.split(n),u=s[f(t,r)]||s[0],i=o(u)):i=e,i}function a(e){var t=s(i);return t[e]||t.en}function f(e,t){return r[a(e)](t)}function l(e,t){for(var n in t)n!=="_"&&t.hasOwnProperty(n)&&(e=e.replace(new RegExp("%\\{"+n+"\\}","g"),t[n]));return e}function c(t){e.console&&e.console.warn&&e.console.warn("WARNING: "+t)}function h(e){var t={};for(var n in e)t[n]=e[n];return t}t.VERSION="0.4.3",t.prototype.locale=function(e){return e&&(this.currentLocale=e),this.currentLocale},t.prototype.extend=function(e,t){var n;for(var r in e)e.hasOwnProperty(r)&&(n=e[r],t&&(r=t+"."+r),typeof n=="object"?this.extend(n,r):this.phrases[r]=n)},t.prototype.clear=function(){this.phrases={}},t.prototype.replace=function(e){this.clear(),this.extend(e)},t.prototype.t=function(e,t){var n,r;return t=t==null?{}:t,typeof t=="number"&&(t={smart_count:t}),typeof this.phrases[e]=="string"?n=this.phrases[e]:typeof t._=="string"?n=t._:this.allowMissing?n=e:(this.warn('Missing translation for key: "'+e+'"'),r=e),typeof n=="string"&&(t=h(t),r=u(n,this.currentLocale,t.smart_count),r=l(r,t)),r},t.prototype.has=function(e){return e in this.phrases};var n="||||",r={chinese:function(e){return 0},german:function(e){return e!==1?1:0},french:function(e){return e>1?1:0},russian:function(e){return e%10===1&&e%100!==11?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},czech:function(e){return e===1?0:e>=2&&e<=4?1:2},polish:function(e){return e===1?0:e%10>=2&&e%10<=4&&(e%100<10||e%100>=20)?1:2},icelandic:function(e){return e%10!==1||e%100===11?1:0}},i={chinese:["fa","id","ja","ko","lo","ms","th","tr","zh"],german:["da","de","en","es","fi","el","he","hu","it","nl","no","pt","sv"],french:["fr","tl","pt-br"],russian:["hr","ru"],czech:["cs"],polish:["pl"],icelandic:["is"]};return t});

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,15 @@
<body class="gc-documentation <?cs
if:(reference.gms || reference.gcm)
?>google<?cs
/if ?><?cs
if:(guide||develop||training||reference||tools||sdk)
?>develop<?cs
if:reference
?> reference api apilevel-<?cs var:class.since ?><?cs var:package.since ?><?cs
/if ?><?cs
elif:design
?>design<?cs
elif:distribute
?>distribute<?cs
/if ?>">
<div id="doc-api-level" class="<?cs var:class.since ?><?cs var:package.since ?>" style="display:none"></div>

View File

@@ -1,261 +1,92 @@
<?cs include:"doctype.cs" ?> <?cs # THIS CREATES A CLASS OR INTERFACE PAGE FROM .java FILES ?>
<?cs include:"macros.cs" ?> <?cs include:"macros.cs" ?>
<?cs include:"macros_override.cs" ?> <?cs include:"macros_override.cs" ?>
<html<?cs if:devsite ?> devsite<?cs /if ?>> <?cs
<?cs include:"head_tag.cs" ?> ####################
<body class="gc-documentation <?cs if:(reference.gms || reference.gcm) ?>google<?cs /if ?> # MACRO FUNCTION USED ONLY IN THIS TEMPLATE TO GENERATE API REFERENCE
<?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs # FIRST, THE FUNCTIONS FOR THE SUMMARY AT THE TOP OF THE PAGE
if:reference ?> reference<?cs ####################
/if ?><?cs ?>
elif:design ?>design<?cs
elif:distribute ?>distribute<?cs
/if ?>" itemscope itemtype="http://schema.org/Article">
<div id="doc-api-level" class="<?cs var:class.since ?>" style="display:none"></div>
<a name="top"></a>
<?cs include:"header.cs" ?>
<div class="col-12" id="doc-col"> <?cs
# Prints the table cells for the summary of methods.
<div id="api-info-block"> ?><?cs def:write_method_summary(methods, included) ?>
<?cs # are there inherited members ?>
<?cs each:cl=class.inherited ?>
<?cs if:subcount(cl.methods) ?>
<?cs set:inhmethods = #1 ?>
<?cs /if ?>
<?cs if:subcount(cl.constants) ?>
<?cs set:inhconstants = #1 ?>
<?cs /if ?>
<?cs if:subcount(cl.fields) ?>
<?cs set:inhfields = #1 ?>
<?cs /if ?>
<?cs if:subcount(cl.attrs) ?>
<?cs set:inhattrs = #1 ?>
<?cs /if ?>
<?cs /each ?>
<div class="sum-details-links">
<?cs if:inhattrs || inhconstants || inhfields || inhmethods || (!class.subclasses.hidden &&
(subcount(class.subclasses.direct) || subcount(class.subclasses.indirect))) ?>
Summary:
<?cs if:subcount(class.inners) ?>
<a href="#nestedclasses">Nested Classes</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.attrs) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#lattrs">XML Attrs</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:inhattrs ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhattrs">Inherited XML Attrs</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.enumConstants) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#enumconstants">Enums</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.constants) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#constants">Constants</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:inhconstants ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhconstants">Inherited Constants</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.fields) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#lfields">Fields</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:inhfields ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhfields">Inherited Fields</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.ctors.public) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#pubctors">Ctors</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.ctors.protected) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#proctors">Protected Ctors</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.methods.public) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#pubmethods">Methods</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.methods.protected) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#promethods">Protected Methods</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:inhmethods ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhmethods">Inherited Methods</a>
<?cs /if ?>
&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
<?cs /if ?>
</div><!-- end sum-details-links -->
<div class="api-level">
<?cs call:since_tags(class) ?><?cs
if:class.deprecatedsince
?><br>Deprecated since <a href="<?cs var:toroot ?>guide/topics/manifest/uses-sdk-element.html#ApiLevels"
>API level <?cs var:class.deprecatedsince ?></a><?cs
/if ?>
<?cs call:federated_refs(class) ?>
</div>
</div><!-- end api-info-block -->
<?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ======== START OF CLASS DATA ======== -->
<div id="jd-header">
<?cs var:class.scope ?>
<?cs var:class.static ?>
<?cs var:class.final ?>
<?cs var:class.abstract ?>
<?cs var:class.kind ?>
<h1 itemprop="name"><?cs var:class.name ?></h1>
<?cs set:colspan = subcount(class.inheritance) ?>
<?cs each:supr = class.inheritance ?>
<?cs if:colspan == 2 ?>
extends <?cs call:type_link(supr.short_class) ?><br/>
<?cs /if ?>
<?cs if:last(supr) && subcount(supr.interfaces) ?>
implements
<?cs each:t=supr.interfaces ?>
<?cs call:type_link(t) ?>
<?cs /each ?>
<?cs /if ?>
<?cs set:colspan = colspan-1 ?>
<?cs /each ?>
<?cs call:show_annotations_list(class) ?>
</div><!-- end header -->
<div id="naMessage"></div>
<div id="jd-content" class="api apilevel-<?cs var:class.since ?>">
<table class="jd-inheritance-table">
<?cs set:colspan = subcount(class.inheritance) ?>
<?cs each:supr = class.inheritance ?>
<tr>
<?cs loop:i = 1, (subcount(class.inheritance)-colspan), 1 ?>
<td class="jd-inheritance-space">&nbsp;<?cs if:(subcount(class.inheritance)-colspan) == i ?>&nbsp;&nbsp;&#x21b3;<?cs /if ?></td>
<?cs /loop ?>
<td colspan="<?cs var:colspan ?>" class="jd-inheritance-class-cell"><?cs
if:colspan == 1
?><?cs call:class_name(class.qualifiedType) ?><?cs
else
?><?cs call:type_link(supr.class) ?><?cs
/if ?></td>
</tr>
<?cs set:colspan = colspan-1 ?>
<?cs /each ?>
</table>
<?cs # this next line must be exactly like this to be parsed by eclipse ?>
<?cs if:subcount(class.subclasses.direct) && !class.subclasses.hidden ?>
<table class="jd-sumtable jd-sumtable-subclasses"><tr><td colspan="12" style="border:none;margin:0;padding:0;">
<?cs call:expando_trigger("subclasses-direct", "closed") ?>Known Direct Subclasses
<?cs call:expandable_class_list("subclasses-direct", class.subclasses.direct, "list") ?>
</td></tr></table>
<?cs /if ?>
<?cs if:subcount(class.subclasses.indirect) && !class.subclasses.hidden ?>
<table class="jd-sumtable jd-sumtable-subclasses"><tr><td colspan="12" style="border:none;margin:0;padding:0;">
<?cs call:expando_trigger("subclasses-indirect", "closed") ?>Known Indirect Subclasses
<?cs call:expandable_class_list("subclasses-indirect", class.subclasses.indirect, "list") ?>
</td></tr></table>
<?cs /if ?>
<div class="jd-descr">
<?cs call:deprecated_warning(class) ?>
<?cs if:subcount(class.descr) ?>
<h2>Class Overview</h2>
<p itemprop="articleBody"><?cs call:tag_list(class.descr) ?></p>
<?cs /if ?>
<?cs call:see_also_tags(class.seeAlso) ?>
</div><!-- jd-descr -->
<?cs # summary macros ?>
<?cs def:write_method_summary(methods, included) ?>
<?cs set:count = #1 ?> <?cs set:count = #1 ?>
<?cs each:method = methods ?> <?cs each:method = methods ?>
<?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?> <?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
<tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:method.since ?>" > <tr class="api apilevel-<?cs var:method.since ?>" >
<td class="jd-typecol"><nobr> <?cs # leave out this cell if there is no return type = if constructors ?>
<?cs if:subcount(method.returnType) ?>
<td><code>
<?cs var:method.abstract ?> <?cs var:method.abstract ?>
<?cs var:method.default ?> <?cs var:method.default ?>
<?cs var:method.static ?> <?cs var:method.static ?>
<?cs var:method.final ?> <?cs var:method.final ?>
<?cs call:type_link(method.generic) ?> <?cs call:type_link(method.generic) ?>
<?cs call:type_link(method.returnType) ?></nobr> <?cs call:type_link(method.returnType) ?></code>
</td> </td>
<td class="jd-linkcol" width="100%"><nobr>
<span class="sympad"><?cs call:cond_link(method.name, toroot, method.href, included) ?></span>(<?cs call:parameter_list(method.params) ?>)</nobr>
<?cs if:subcount(method.shortDescr) || subcount(method.deprecated) ?>
<div class="jd-descrdiv">
<?cs call:short_descr(method) ?>
<?cs call:show_annotations_list(method) ?>
</div>
<?cs /if ?> <?cs /if ?>
</td></tr> <td width="100%">
<code>
<?cs call:cond_link(method.name, toroot, method.href, included) ?>(<?cs call:parameter_list(method.params, 0) ?>)
</code>
<?cs if:subcount(method.shortDescr) || subcount(method.deprecated) ?>
<p><?cs call:short_descr(method) ?>
<?cs call:show_annotations_list(method) ?></p>
<?cs /if ?>
</td>
</tr>
<?cs set:count = count + #1 ?> <?cs set:count = count + #1 ?>
<?cs /each ?> <?cs /each ?>
<?cs /def ?> <?cs /def ?>
<?cs def:write_field_summary(fields, included) ?> <?cs
# Print the table cells for the summary of fields.
?><?cs def:write_field_summary(fields, included) ?>
<?cs set:count = #1 ?> <?cs set:count = #1 ?>
<?cs each:field=fields ?> <?cs each:field=fields ?>
<tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:field.since ?>" > <tr class="api apilevel-<?cs var:field.since ?>" >
<td class="jd-typecol"><nobr> <td><code>
<?cs var:field.scope ?> <?cs var:field.scope ?>
<?cs var:field.static ?> <?cs var:field.static ?>
<?cs var:field.final ?> <?cs var:field.final ?>
<?cs call:type_link(field.type) ?></nobr></td> <?cs call:type_link(field.type) ?></code></td>
<td class="jd-linkcol"><?cs call:cond_link(field.name, toroot, field.href, included) ?></td> <td width="100%">
<td class="jd-descrcol" width="100%"> <code><?cs call:cond_link(field.name, toroot, field.href, included) ?></code>
<?cs call:short_descr(field) ?> <p><?cs call:short_descr(field) ?>
<?cs call:show_annotations_list(field) ?> <?cs call:show_annotations_list(field) ?></p>
</td> </td>
</tr> </tr>
<?cs set:count = count + #1 ?> <?cs set:count = count + #1 ?>
<?cs /each ?> <?cs /each ?>
<?cs /def ?> <?cs /def ?>
<?cs def:write_constant_summary(fields, included) ?> <?cs
# Print the table cells for the summary of constants
?><?cs def:write_constant_summary(fields, included) ?>
<?cs set:count = #1 ?> <?cs set:count = #1 ?>
<?cs each:field=fields ?> <?cs each:field=fields ?>
<tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:field.since ?>" > <tr class="api apilevel-<?cs var:field.since ?>" >
<td class="jd-typecol"><?cs call:type_link(field.type) ?></td> <td><code><?cs call:type_link(field.type) ?></code></td>
<td class="jd-linkcol"><?cs call:cond_link(field.name, toroot, field.href, included) ?></td> <td width="100%">
<td class="jd-descrcol" width="100%"> <code><?cs call:cond_link(field.name, toroot, field.href, included) ?></code>
<?cs call:short_descr(field) ?> <p><?cs call:short_descr(field) ?>
<?cs call:show_annotations_list(field) ?> <?cs call:show_annotations_list(field) ?></p>
</td> </td>
</tr> </tr>
<?cs set:count = count + #1 ?> <?cs set:count = count + #1 ?>
<?cs /each ?> <?cs /each ?>
<?cs /def ?> <?cs /def ?>
<?cs def:write_attr_summary(attrs, included) ?> <?cs
# Print the table cells for the summary of attributes
?><?cs def:write_attr_summary(attrs, included) ?>
<?cs set:count = #1 ?> <?cs set:count = #1 ?>
<tr>
<td><nobr><em>Attribute Name</em></nobr></td>
<td><nobr><em>Related Method</em></nobr></td>
<td><nobr><em>Description</em></nobr></td>
</tr>
<?cs each:attr=attrs ?> <?cs each:attr=attrs ?>
<tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:attr.since ?>" > <tr class="api apilevel-<?cs var:attr.since ?>" >
<td class="jd-linkcol"><?cs if:included ?><a href="<?cs var:toroot ?><?cs var:attr.href ?>"><?cs /if ?><?cs var:attr.name ?><?cs if:included ?></a><?cs /if ?></td> <td><?cs if:included ?><a href="<?cs var:toroot ?><?cs var:attr.href ?>"><?cs /if
<td class="jd-linkcol"><?cs each:m=attr.methods ?> ?><code><?cs var:attr.name ?></code><?cs if:included ?></a><?cs /if ?></td>
<?cs call:cond_link(m.name, toroot, m.href, included) ?> <td width="100%">
<?cs /each ?>
</td>
<td class="jd-descrcol" width="100%">
<?cs call:short_descr(attr) ?>&nbsp; <?cs call:short_descr(attr) ?>&nbsp;
<?cs call:show_annotations_list(attr) ?> <?cs call:show_annotations_list(attr) ?>
</td> </td>
@@ -264,30 +95,220 @@ Summary:
<?cs /each ?> <?cs /each ?>
<?cs /def ?> <?cs /def ?>
<?cs def:write_inners_summary(classes) ?> <?cs
# Print the table cells for the inner classes
?><?cs def:write_inners_summary(classes) ?>
<?cs set:count = #1 ?> <?cs set:count = #1 ?>
<?cs each:cl=class.inners ?> <?cs each:cl=class.inners ?>
<tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:cl.since ?>" > <tr class="api apilevel-<?cs var:cl.since ?>" >
<td class="jd-typecol"><nobr> <td class="jd-typecol"><code>
<?cs var:cl.scope ?> <?cs var:cl.scope ?>
<?cs var:cl.static ?> <?cs var:cl.static ?>
<?cs var:cl.final ?> <?cs var:cl.final ?>
<?cs var:cl.abstract ?> <?cs var:cl.abstract ?>
<?cs var:cl.kind ?></nobr></td> <?cs var:cl.kind ?></code></td>
<td class="jd-linkcol"><?cs call:type_link(cl.type) ?></td>
<td class="jd-descrcol" width="100%"> <td class="jd-descrcol" width="100%">
<?cs call:short_descr(cl) ?>&nbsp; <code><?cs call:type_link(cl.type) ?></code>
<?cs call:show_annotations_list(cl) ?> <p><?cs call:short_descr(cl) ?>&nbsp;
<?cs call:show_annotations_list(cl) ?></p>
</td> </td>
</tr> </tr>
<?cs set:count = count + #1 ?> <?cs set:count = count + #1 ?>
<?cs /each ?> <?cs /each ?>
<?cs /def ?> <?cs /def ?>
<?cs
###################
# END OF FUNCTIONS FOR API SUMMARY
# START OF FUNCTIONS FOR THE API DETAILS
###################
?>
<?cs
# Print the table cells for the summary of constants
?>
<?cs def:write_field_details(fields) ?>
<?cs each:field=fields ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?>
<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
<A NAME="<?cs var:field.anchor ?>"></A>
<?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
<div class="api apilevel-<?cs var:field.since ?>">
<h3 class="api-name"><?cs var:field.name ?></h3>
<div class="api-level">
<?cs call:since_tags(field) ?>
<?cs call:federated_refs(field) ?>
</div>
<pre class="api-signature no-pretty-print">
<?cs if:subcount(field.scope) ?><?cs var:field.scope
?> <?cs /if ?><?cs if:subcount(field.static) ?><?cs var:field.static
?> <?cs /if ?><?cs if:subcount(field.final) ?><?cs var:field.final
?> <?cs /if ?><?cs if:subcount(field.type) ?><?cs call:type_link(field.type)
?> <?cs /if ?><?cs var:field.name ?></pre>
<?cs call:show_annotations_list(field) ?>
<?cs call:description(field) ?>
<?cs if:subcount(field.constantValue) ?>
<p>Constant Value:
<?cs if:field.constantValue.isString ?>
<?cs var:field.constantValue.str ?>
<?cs else ?>
<?cs var:field.constantValue.dec ?>
(<?cs var:field.constantValue.hex ?>)
<?cs /if ?>
<?cs /if ?>
</div>
<?cs /each ?>
<?cs /def ?>
<?cs # end macros ?> <?cs def:write_method_details(methods) ?>
<?cs each:method=methods ?>
<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
<A NAME="<?cs var:method.anchor ?>"></A>
<?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
<div class="api apilevel-<?cs var:method.since ?>">
<h3 class="api-name"><?cs var:method.name ?></h3>
<div class="api-level">
<div><?cs call:since_tags(method) ?></div>
<?cs call:federated_refs(method) ?>
</div>
<pre class="api-signature no-pretty-print">
<?cs if:subcount(method.scope) ?><?cs var:method.scope
?> <?cs /if ?><?cs if:subcount(method.static) ?><?cs var:method.static
?> <?cs /if ?><?cs if:subcount(method.final) ?><?cs var:method.final
?> <?cs /if ?><?cs if:subcount(method.abstract) ?><?cs var:method.abstract
?> <?cs /if ?><?cs if:subcount(method.returnType) ?><?cs call:type_link(method.returnType)
?> <?cs /if ?><?cs var:method.name ?> (<?cs call:parameter_list(method.params, 1) ?>)</pre>
<?cs call:show_annotations_list(method) ?>
<?cs call:description(method) ?>
</div>
<?cs /each ?>
<?cs /def ?>
<div class="jd-descr"> <?cs def:write_attr_details(attrs) ?>
<?cs # make sure there's a summary view to display ?> <?cs each:attr=attrs ?>
<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
<A NAME="<?cs var:attr.anchor ?>"></A>
<h3 class="api-name"><?cs var:attr.name ?></h3>
<?cs call:show_annotations_list(attr) ?>
<?cs call:description(attr) ?>
<?cs if:subcount(attr.methods) ?>
<p><b>Related methods:</b></p>
<ul class="nolist">
<?cs each:m=attr.methods ?>
<li><a href="<?cs var:toroot ?><?cs var:m.href ?>"><?cs var:m.name ?></a></li>
<?cs /each ?>
</ul>
<?cs /if ?>
<?cs /each ?>
<?cs /def ?>
<?cs
#########################
# END OF MACROS
# START OF PAGE PRINTING
#########################
?>
<?cs include:"doctype.cs" ?>
<html<?cs if:devsite ?> devsite<?cs /if ?>>
<?cs include:"head_tag.cs" ?>
<?cs include:"body_tag.cs" ?>
<?cs include:"header.cs" ?>
<?cs include:"page_info.cs" ?>
<?cs # This DIV spans the entire document to provide scope for some scripts ?>
<div class="api apilevel-<?cs var:class.since ?>" id="jd-content">
<?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ======== START OF CLASS DATA ======== -->
<?cs
#
# Page header with class name and signature
#
?>
<h1 class="api-title"><?cs var:class.name ?></h1>
<p>
<code class="api-signature">
<?cs var:class.scope ?>
<?cs var:class.static ?>
<?cs var:class.final ?>
<?cs var:class.abstract ?>
<?cs var:class.kind ?>
<?cs var:class.name ?>
</code>
<br>
<?cs set:colspan = subcount(class.inheritance) ?>
<?cs each:supr = class.inheritance ?>
<code class="api-signature">
<?cs if:colspan == 2 ?>
extends <?cs call:type_link(supr.short_class) ?>
<?cs /if ?>
<?cs if:last(supr) && subcount(supr.interfaces) ?>
implements
<?cs each:t=supr.interfaces ?>
<?cs call:type_link(t) ?><?cs
if: name(t)!=subcount(supr.interfaces)-1
?>, <?cs /if ?>
<?cs /each ?>
<?cs /if ?>
<?cs set:colspan = colspan-1 ?>
</code>
<?cs /each ?>
</p><?cs
#
# Class inheritance tree
#
?><table class="jd-inheritance-table">
<?cs set:colspan = subcount(class.inheritance) ?>
<?cs each:supr = class.inheritance ?>
<tr>
<?cs loop:i = 1, (subcount(class.inheritance)-colspan), 1 ?>
<td class="jd-inheritance-space">&nbsp;<?cs
if:(subcount(class.inheritance)-colspan) == i
?>&nbsp;&nbsp;&#x21b3;<?cs
/if ?></td>
<?cs /loop ?>
<td colspan="<?cs var:colspan ?>" class="jd-inheritance-class-cell"><?cs
if:colspan == 1
?><?cs call:class_name(class.qualifiedType) ?><?cs
else
?><?cs call:type_link(supr.class) ?><?cs
/if ?>
</td>
</tr>
<?cs set:colspan = colspan-1 ?>
<?cs /each ?>
</table><?cs
#
# Collapsible list of subclasses
#
?><?cs
if:subcount(class.subclasses.direct) && !class.subclasses.hidden ?>
<table class="jd-sumtable jd-sumtable-subclasses">
<tr><td style="border:none;margin:0;padding:0;">
<?cs call:expando_trigger("subclasses-direct", "closed") ?>Known Direct Subclasses
<?cs call:expandable_class_list("subclasses-direct", class.subclasses.direct, "list") ?>
</td></tr>
</table>
<?cs /if ?>
<?cs if:subcount(class.subclasses.indirect) && !class.subclasses.hidden ?>
<table class="jd-sumtable jd-sumtable-subclasses"><tr><td colspan="2" style="border:none;margin:0;padding:0;">
<?cs call:expando_trigger("subclasses-indirect", "closed") ?>Known Indirect Subclasses
<?cs call:expandable_class_list("subclasses-indirect", class.subclasses.indirect, "list") ?>
</td></tr></table><?cs
/if ?>
<?cs call:show_annotations_list(class) ?>
<br><hr><?cs
#
# The long-form class description.
#
?><?cs call:deprecated_warning(class) ?>
<?cs if:subcount(class.descr) ?>
<p><?cs call:tag_list(class.descr) ?></p>
<?cs /if ?>
<?cs call:see_also_tags(class.seeAlso) ?>
<?cs
#################
# CLASS SUMMARY
#################
?>
<?cs # make sure there is a summary view to display ?>
<?cs if:subcount(class.inners) <?cs if:subcount(class.inners)
|| subcount(class.attrs) || subcount(class.attrs)
|| inhattrs || inhattrs
@@ -301,19 +322,21 @@ Summary:
|| subcount(class.methods.public) || subcount(class.methods.public)
|| subcount(class.methods.protected) || subcount(class.methods.protected)
|| inhmethods ?> || inhmethods ?>
<h2>Summary</h2> <h2 class="api-section">Summary</h2>
<?cs if:subcount(class.inners) ?> <?cs if:subcount(class.inners) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ======== NESTED CLASS SUMMARY ======== --> <!-- ======== NESTED CLASS SUMMARY ======== -->
<table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr> <table id="nestedclasses" class="responsive">
<tr><th colspan="2"><h3>Nested classes</h3></th></tr>
<?cs call:write_inners_summary(class.inners) ?> <?cs call:write_inners_summary(class.inners) ?>
<?cs /if ?> <?cs /if ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<?cs if:subcount(class.attrs) ?> <?cs if:subcount(class.attrs) ?>
<!-- =========== FIELD SUMMARY =========== --> <!-- =========== FIELD SUMMARY =========== -->
<table id="lattrs" class="jd-sumtable"><tr><th colspan="12">XML Attributes</th></tr> <table id="lattrs" class="responsive">
<tr><th colspan="2"><h3>XML attributes</h3></th></tr>
<?cs call:write_attr_summary(class.attrs, 1) ?> <?cs call:write_attr_summary(class.attrs, 1) ?>
<?cs /if ?> <?cs /if ?>
@@ -321,15 +344,17 @@ Summary:
<?cs if:inhattrs ?> <?cs if:inhattrs ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- =========== FIELD SUMMARY =========== --> <!-- =========== FIELD SUMMARY =========== -->
<table id="inhattrs" class="jd-sumtable"><tr><th> <table id="inhattrs" class="responsive inhtable">
<a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a> <tr><th><h3>Inherited XML attributes</h3></th></tr>
<div style="clear:left;">Inherited XML Attributes</div></th></tr>
<?cs each:cl=class.inherited ?> <?cs each:cl=class.inherited ?>
<?cs if:subcount(cl.attrs) ?> <?cs if:subcount(cl.attrs) ?>
<tr class="api apilevel-<?cs var:cl.since ?>" > <tr class="api apilevel-<?cs var:cl.since ?>" >
<td colspan="12"> <td colspan="2">
<?cs call:expando_trigger("inherited-attrs-"+cl.qualified, "closed") ?>From <?cs var:cl.kind ?> <?cs call:expando_trigger("inherited-attrs-"+cl.qualified, "closed") ?>From
<?cs var:cl.kind ?>
<code>
<?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?> <?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
</code>
<div id="inherited-attrs-<?cs var:cl.qualified ?>"> <div id="inherited-attrs-<?cs var:cl.qualified ?>">
<div id="inherited-attrs-<?cs var:cl.qualified ?>-list" <div id="inherited-attrs-<?cs var:cl.qualified ?>-list"
class="jd-inheritedlinks"> class="jd-inheritedlinks">
@@ -348,15 +373,16 @@ Summary:
<?cs if:subcount(class.enumConstants) ?> <?cs if:subcount(class.enumConstants) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- =========== ENUM CONSTANT SUMMARY =========== --> <!-- =========== ENUM CONSTANT SUMMARY =========== -->
<table id="enumconstants" class="jd-sumtable"><tr><th colspan="12">Enum Values</th></tr> <table id="enumconstants" class="responsive constants">
<tr><th colspan="2"><h3>Enum values</h3></th></tr>
<?cs set:count = #1 ?> <?cs set:count = #1 ?>
<?cs each:field=class.enumConstants ?> <?cs each:field=class.enumConstants ?>
<tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:field.since ?>" > <tr class="api apilevel-<?cs var:field.since ?>" >
<td class="jd-descrcol"><?cs call:type_link(field.type) ?>&nbsp;</td> <td><code><?cs call:type_link(field.type) ?></code>&nbsp;</td>
<td class="jd-linkcol"><?cs call:cond_link(field.name, toroot, field.href, cl.included) ?>&nbsp;</td> <td width="100%">
<td class="jd-descrcol" width="100%"> <code><?cs call:cond_link(field.name, toroot, field.href, cl.included) ?></code>
<?cs call:short_descr(field) ?>&nbsp; <p><?cs call:short_descr(field) ?>&nbsp;
<?cs call:show_annotations_list(field) ?> <?cs call:show_annotations_list(field) ?></p>
</td> </td>
</tr> </tr>
<?cs set:count = count + #1 ?> <?cs set:count = count + #1 ?>
@@ -366,7 +392,8 @@ Summary:
<?cs if:subcount(class.constants) ?> <?cs if:subcount(class.constants) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- =========== ENUM CONSTANT SUMMARY =========== --> <!-- =========== ENUM CONSTANT SUMMARY =========== -->
<table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr> <table id="constants" class="responsive constants">
<tr><th colspan="2"><h3>Constants</h3></th></tr>
<?cs call:write_constant_summary(class.constants, 1) ?> <?cs call:write_constant_summary(class.constants, 1) ?>
</table> </table>
<?cs /if ?> <?cs /if ?>
@@ -375,21 +402,23 @@ Summary:
<?cs if:inhconstants ?> <?cs if:inhconstants ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- =========== ENUM CONSTANT SUMMARY =========== --> <!-- =========== ENUM CONSTANT SUMMARY =========== -->
<table id="inhconstants" class="jd-sumtable"><tr><th> <table id="inhconstants" class="responsive constants inhtable">
<a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a> <tr><th><h3>Inherited constants</h3></th></tr>
<div style="clear:left;">Inherited Constants</div></th></tr>
<?cs each:cl=class.inherited ?> <?cs each:cl=class.inherited ?>
<?cs if:subcount(cl.constants) ?> <?cs if:subcount(cl.constants) ?>
<tr class="api apilevel-<?cs var:cl.since ?>" > <tr class="api apilevel-<?cs var:cl.since ?>" >
<td colspan="12"> <td>
<?cs call:expando_trigger("inherited-constants-"+cl.qualified, "closed") ?>From <?cs var:cl.kind ?> <?cs call:expando_trigger("inherited-constants-"+cl.qualified, "closed") ?>From
<?cs var:cl.kind ?>
<code>
<?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?> <?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
</code>
<div id="inherited-constants-<?cs var:cl.qualified ?>"> <div id="inherited-constants-<?cs var:cl.qualified ?>">
<div id="inherited-constants-<?cs var:cl.qualified ?>-list" <div id="inherited-constants-<?cs var:cl.qualified ?>-list"
class="jd-inheritedlinks"> class="jd-inheritedlinks">
</div> </div>
<div id="inherited-constants-<?cs var:cl.qualified ?>-summary" style="display: none;"> <div id="inherited-constants-<?cs var:cl.qualified ?>-summary" style="display: none;">
<table class="jd-sumtable-expando"> <table class="jd-sumtable-expando responsive">
<?cs call:write_constant_summary(cl.constants, cl.included) ?></table> <?cs call:write_constant_summary(cl.constants, cl.included) ?></table>
</div> </div>
</div> </div>
@@ -402,7 +431,8 @@ Summary:
<?cs if:subcount(class.fields) ?> <?cs if:subcount(class.fields) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- =========== FIELD SUMMARY =========== --> <!-- =========== FIELD SUMMARY =========== -->
<table id="lfields" class="jd-sumtable"><tr><th colspan="12">Fields</th></tr> <table id="lfields" class="responsive properties">
<tr><th colspan="2"><h3>Fields</h3></th></tr>
<?cs call:write_field_summary(class.fields, 1) ?> <?cs call:write_field_summary(class.fields, 1) ?>
</table> </table>
<?cs /if ?> <?cs /if ?>
@@ -411,21 +441,23 @@ Summary:
<?cs if:inhfields ?> <?cs if:inhfields ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- =========== FIELD SUMMARY =========== --> <!-- =========== FIELD SUMMARY =========== -->
<table id="inhfields" class="jd-sumtable"><tr><th> <table id="inhfields" class="properties inhtable">
<a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a> <tr><th><h3>Inherited fields</h3></th></tr>
<div style="clear:left;">Inherited Fields</div></th></tr>
<?cs each:cl=class.inherited ?> <?cs each:cl=class.inherited ?>
<?cs if:subcount(cl.fields) ?> <?cs if:subcount(cl.fields) ?>
<tr class="api apilevel-<?cs var:cl.since ?>" > <tr class="api apilevel-<?cs var:cl.since ?>" >
<td colspan="12"> <td>
<?cs call:expando_trigger("inherited-fields-"+cl.qualified, "closed") ?>From <?cs var:cl.kind ?> <?cs call:expando_trigger("inherited-fields-"+cl.qualified, "closed") ?>From
<?cs var:cl.kind ?>
<code>
<?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?> <?cs call:cond_link(cl.qualified, toroot, cl.link, cl.included) ?>
</code>
<div id="inherited-fields-<?cs var:cl.qualified ?>"> <div id="inherited-fields-<?cs var:cl.qualified ?>">
<div id="inherited-fields-<?cs var:cl.qualified ?>-list" <div id="inherited-fields-<?cs var:cl.qualified ?>-list"
class="jd-inheritedlinks"> class="jd-inheritedlinks">
</div> </div>
<div id="inherited-fields-<?cs var:cl.qualified ?>-summary" style="display: none;"> <div id="inherited-fields-<?cs var:cl.qualified ?>-summary" style="display: none;">
<table class="jd-sumtable-expando"> <table class="jd-sumtable-expando responsive">
<?cs call:write_field_summary(cl.fields, cl.included) ?></table> <?cs call:write_field_summary(cl.fields, cl.included) ?></table>
</div> </div>
</div> </div>
@@ -438,7 +470,8 @@ Summary:
<?cs if:subcount(class.ctors.public) ?> <?cs if:subcount(class.ctors.public) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ======== CONSTRUCTOR SUMMARY ======== --> <!-- ======== CONSTRUCTOR SUMMARY ======== -->
<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr> <table id="pubctors" class="responsive constructors">
<tr><th colspan="2"><h3>Public constructors</h3></th></tr>
<?cs call:write_method_summary(class.ctors.public, 1) ?> <?cs call:write_method_summary(class.ctors.public, 1) ?>
</table> </table>
<?cs /if ?> <?cs /if ?>
@@ -446,7 +479,8 @@ Summary:
<?cs if:subcount(class.ctors.protected) ?> <?cs if:subcount(class.ctors.protected) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ======== CONSTRUCTOR SUMMARY ======== --> <!-- ======== CONSTRUCTOR SUMMARY ======== -->
<table id="proctors" class="jd-sumtable"><tr><th colspan="12">Protected Constructors</th></tr> <table id="proctors" class="responsive constructors">
<tr><th colspan="2"><h3>Protected constructors</h3></th></tr>
<?cs call:write_method_summary(class.ctors.protected, 1) ?> <?cs call:write_method_summary(class.ctors.protected, 1) ?>
</table> </table>
<?cs /if ?> <?cs /if ?>
@@ -454,7 +488,8 @@ Summary:
<?cs if:subcount(class.methods.public) ?> <?cs if:subcount(class.methods.public) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========== METHOD SUMMARY =========== --> <!-- ========== METHOD SUMMARY =========== -->
<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr> <table id="pubmethods" class="responsive methods">
<tr><th colspan="2"><h3>Public methods</h3></th></tr>
<?cs call:write_method_summary(class.methods.public, 1) ?> <?cs call:write_method_summary(class.methods.public, 1) ?>
</table> </table>
<?cs /if ?> <?cs /if ?>
@@ -462,7 +497,8 @@ Summary:
<?cs if:subcount(class.methods.protected) ?> <?cs if:subcount(class.methods.protected) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========== METHOD SUMMARY =========== --> <!-- ========== METHOD SUMMARY =========== -->
<table id="promethods" class="jd-sumtable"><tr><th colspan="12">Protected Methods</th></tr> <table id="promethods" class="reponsive methods">
<tr><th colspan="2"><h3>Protected methods</h3></th></tr>
<?cs call:write_method_summary(class.methods.protected, 1) ?> <?cs call:write_method_summary(class.methods.protected, 1) ?>
</table> </table>
<?cs /if ?> <?cs /if ?>
@@ -471,14 +507,15 @@ Summary:
<?cs if:inhmethods ?> <?cs if:inhmethods ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========== METHOD SUMMARY =========== --> <!-- ========== METHOD SUMMARY =========== -->
<table id="inhmethods" class="jd-sumtable"><tr><th> <table id="inhmethods" class="methods inhtable">
<a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a> <tr><th><h3>Inherited methods</h3></th></tr>
<div style="clear:left;">Inherited Methods</div></th></tr>
<?cs each:cl=class.inherited ?> <?cs each:cl=class.inherited ?>
<?cs if:subcount(cl.methods) ?> <?cs if:subcount(cl.methods) ?>
<tr class="api apilevel-<?cs var:cl.since ?>" > <tr class="api apilevel-<?cs var:cl.since ?>" >
<td colspan="12"><?cs call:expando_trigger("inherited-methods-"+cl.qualified, "closed") ?> <td colspan="2">
From <?cs var:cl.kind ?> <?cs call:expando_trigger("inherited-methods-"+cl.qualified, "closed") ?>From
<?cs var:cl.kind ?>
<code>
<?cs if:cl.included ?> <?cs if:cl.included ?>
<a href="<?cs var:toroot ?><?cs var:cl.link ?>"><?cs var:cl.qualified ?></a> <a href="<?cs var:toroot ?><?cs var:cl.link ?>"><?cs var:cl.qualified ?></a>
<?cs elif:cl.federated ?> <?cs elif:cl.federated ?>
@@ -486,13 +523,15 @@ From <?cs var:cl.kind ?>
<?cs else ?> <?cs else ?>
<?cs var:cl.qualified ?> <?cs var:cl.qualified ?>
<?cs /if ?> <?cs /if ?>
</code>
<div id="inherited-methods-<?cs var:cl.qualified ?>"> <div id="inherited-methods-<?cs var:cl.qualified ?>">
<div id="inherited-methods-<?cs var:cl.qualified ?>-list" <div id="inherited-methods-<?cs var:cl.qualified ?>-list"
class="jd-inheritedlinks"> class="jd-inheritedlinks">
</div> </div>
<div id="inherited-methods-<?cs var:cl.qualified ?>-summary" style="display: none;"> <div id="inherited-methods-<?cs var:cl.qualified ?>-summary" style="display: none;">
<table class="jd-sumtable-expando"> <table class="jd-sumtable-expando responsive">
<?cs call:write_method_summary(cl.methods, cl.included) ?></table> <?cs call:write_method_summary(cl.methods, cl.included) ?>
</table>
</div> </div>
</div> </div>
</td></tr> </td></tr>
@@ -501,111 +540,16 @@ From <?cs var:cl.kind ?>
</table> </table>
<?cs /if ?> <?cs /if ?>
<?cs /if ?> <?cs /if ?>
</div><!-- jd-descr (summary) --> <?cs
################
<!-- Details --> # CLASS DETAILS
################
<?cs def:write_field_details(fields) ?> ?>
<?cs each:field=fields ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?>
<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
<A NAME="<?cs var:field.anchor ?>"></A>
<?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
<div class="jd-details api apilevel-<?cs var:field.since ?>">
<h4 class="jd-details-title">
<span class="normal">
<?cs var:field.scope ?>
<?cs var:field.static ?>
<?cs var:field.final ?>
<?cs call:type_link(field.type) ?>
</span>
<?cs var:field.name ?>
</h4>
<div class="api-level">
<?cs call:since_tags(field) ?>
<?cs call:federated_refs(field) ?>
</div>
<div class="jd-details-descr">
<?cs call:show_annotations_list(field) ?>
<?cs call:description(field) ?>
<?cs if:subcount(field.constantValue) ?>
<div class="jd-tagdata">
<span class="jd-tagtitle">Constant Value: </span>
<span>
<?cs if:field.constantValue.isString ?>
<?cs var:field.constantValue.str ?>
<?cs else ?>
<?cs var:field.constantValue.dec ?>
(<?cs var:field.constantValue.hex ?>)
<?cs /if ?>
</span>
</div>
<?cs /if ?>
</div>
</div>
<?cs /each ?>
<?cs /def ?>
<?cs def:write_method_details(methods) ?>
<?cs each:method=methods ?>
<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
<A NAME="<?cs var:method.anchor ?>"></A>
<?cs # The apilevel-N class MUST BE LAST in the sequence of class names ?>
<div class="jd-details api apilevel-<?cs var:method.since ?>">
<h4 class="jd-details-title">
<span class="normal">
<?cs var:method.scope ?>
<?cs var:method.abstract ?>
<?cs var:method.default ?>
<?cs var:method.static ?>
<?cs var:method.final ?>
<?cs call:type_link(method.returnType) ?>
</span>
<span class="sympad"><?cs var:method.name ?></span>
<span class="normal">(<?cs call:parameter_list(method.params) ?>)</span>
</h4>
<div class="api-level">
<div><?cs call:since_tags(method) ?></div>
<?cs call:federated_refs(method) ?>
</div>
<div class="jd-details-descr">
<?cs call:show_annotations_list(method) ?>
<?cs call:description(method) ?>
</div>
</div>
<?cs /each ?>
<?cs /def ?>
<?cs def:write_attr_details(attrs) ?>
<?cs each:attr=attrs ?>
<?cs # the A tag in the next line must remain where it is, so that Eclipse can parse the docs ?>
<A NAME="<?cs var:attr.anchor ?>"></A>
<div class="jd-details">
<h4 class="jd-details-title"><?cs var:attr.name ?>
</h4>
<div class="jd-details-descr">
<?cs call:show_annotations_list(attr) ?>
<?cs call:description(attr) ?>
<div class="jd-tagdata">
<h5 class="jd-tagtitle">Related Methods</h5>
<ul class="nolist">
<?cs each:m=attr.methods ?>
<li><a href="<?cs var:toroot ?><?cs var:m.href ?>"><?cs var:m.name ?></a></li>
<?cs /each ?>
</ul>
</div>
</div>
</div>
<?cs /each ?>
<?cs /def ?>
<!-- XML Attributes --> <!-- XML Attributes -->
<?cs if:subcount(class.attrs) ?> <?cs if:subcount(class.attrs) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========= FIELD DETAIL ======== --> <!-- ========= FIELD DETAIL ======== -->
<h2>XML Attributes</h2> <h2 class="api-section">XML attributes</h2>
<?cs call:write_attr_details(class.attrs) ?> <?cs call:write_attr_details(class.attrs) ?>
<?cs /if ?> <?cs /if ?>
@@ -613,7 +557,7 @@ From <?cs var:cl.kind ?>
<?cs if:subcount(class.enumConstants) ?> <?cs if:subcount(class.enumConstants) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========= ENUM CONSTANTS DETAIL ======== --> <!-- ========= ENUM CONSTANTS DETAIL ======== -->
<h2>Enum Values</h2> <h2 class="api-section">Enum values</h2>
<?cs call:write_field_details(class.enumConstants) ?> <?cs call:write_field_details(class.enumConstants) ?>
<?cs /if ?> <?cs /if ?>
@@ -621,7 +565,7 @@ From <?cs var:cl.kind ?>
<?cs if:subcount(class.constants) ?> <?cs if:subcount(class.constants) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========= ENUM CONSTANTS DETAIL ======== --> <!-- ========= ENUM CONSTANTS DETAIL ======== -->
<h2>Constants</h2> <h2 class="api-section">Constants</h2>
<?cs call:write_field_details(class.constants) ?> <?cs call:write_field_details(class.constants) ?>
<?cs /if ?> <?cs /if ?>
@@ -629,7 +573,7 @@ From <?cs var:cl.kind ?>
<?cs if:subcount(class.fields) ?> <?cs if:subcount(class.fields) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========= FIELD DETAIL ======== --> <!-- ========= FIELD DETAIL ======== -->
<h2>Fields</h2> <h2 class="api-section">Fields</h2>
<?cs call:write_field_details(class.fields) ?> <?cs call:write_field_details(class.fields) ?>
<?cs /if ?> <?cs /if ?>
@@ -637,7 +581,7 @@ From <?cs var:cl.kind ?>
<?cs if:subcount(class.ctors.public) ?> <?cs if:subcount(class.ctors.public) ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========= CONSTRUCTOR DETAIL ======== --> <!-- ========= CONSTRUCTOR DETAIL ======== -->
<h2>Public Constructors</h2> <h2 class="api-section">Public constructors</h2>
<?cs call:write_method_details(class.ctors.public) ?> <?cs call:write_method_details(class.ctors.public) ?>
<?cs /if ?> <?cs /if ?>
@@ -645,7 +589,7 @@ From <?cs var:cl.kind ?>
<!-- ========= CONSTRUCTOR DETAIL ======== --> <!-- ========= CONSTRUCTOR DETAIL ======== -->
<!-- Protected ctors --> <!-- Protected ctors -->
<?cs if:subcount(class.ctors.protected) ?> <?cs if:subcount(class.ctors.protected) ?>
<h2>Protected Constructors</h2> <h2 class="api-section">Protected constructors</h2>
<?cs call:write_method_details(class.ctors.protected) ?> <?cs call:write_method_details(class.ctors.protected) ?>
<?cs /if ?> <?cs /if ?>
@@ -653,26 +597,50 @@ From <?cs var:cl.kind ?>
<!-- ========= METHOD DETAIL ======== --> <!-- ========= METHOD DETAIL ======== -->
<!-- Public methdos --> <!-- Public methdos -->
<?cs if:subcount(class.methods.public) ?> <?cs if:subcount(class.methods.public) ?>
<h2>Public Methods</h2> <h2 class="api-section">Public methods</h2>
<?cs call:write_method_details(class.methods.public) ?> <?cs call:write_method_details(class.methods.public) ?>
<?cs /if ?> <?cs /if ?>
<?cs # this next line must be exactly like this to be parsed by eclipse ?> <?cs # this next line must be exactly like this to be parsed by eclipse ?>
<!-- ========= METHOD DETAIL ======== --> <!-- ========= METHOD DETAIL ======== -->
<?cs if:subcount(class.methods.protected) ?> <?cs if:subcount(class.methods.protected) ?>
<h2>Protected Methods</h2> <h2 class="api-section">Protected methods</h2>
<?cs call:write_method_details(class.methods.protected) ?> <?cs call:write_method_details(class.methods.protected) ?>
<?cs /if ?> <?cs /if ?>
<?cs # the next two lines must be exactly like this to be parsed by eclipse ?> <?cs # the next two lines must be exactly like this to be parsed by eclipse ?>
<!-- ========= END OF CLASS DATA ========= --> <!-- ========= END OF CLASS DATA ========= -->
<A NAME="navbar_top"></A>
</div> <!-- jd-content -->
</div><!-- end jd-content -->
<?cs if:devsite ?>
<div class="data-reference-resources-wrapper">
<?cs if:subcount(class.package) ?>
<ul data-reference-resources>
<?cs call:list("Annotations", class.package.annotations) ?>
<?cs call:list("Interfaces", class.package.interfaces) ?>
<?cs call:list("Classes", class.package.classes) ?>
<?cs call:list("Enums", class.package.enums) ?>
<?cs call:list("Exceptions", class.package.exceptions) ?>
<?cs call:list("Errors", class.package.errors) ?>
</ul>
<?cs elif:subcount(package) ?>
<ul data-reference-resources>
<?cs call:class_link_list("Annotations", package.annotations) ?>
<?cs call:class_link_list("Interfaces", package.interfaces) ?>
<?cs call:class_link_list("Classes", package.classes) ?>
<?cs call:class_link_list("Enums", package.enums) ?>
<?cs call:class_link_list("Exceptions", package.exceptions) ?>
<?cs call:class_link_list("Errors", package.errors) ?>
</ul>
<?cs /if ?>
</div>
<?cs /if ?>
<?cs if:!devsite ?>
<?cs include:"footer.cs" ?> <?cs include:"footer.cs" ?>
</div><!-- end doc-content -->
<?cs include:"trailer.cs" ?> <?cs include:"trailer.cs" ?>
<?cs /if ?>
</body> </body>
</html> </html>

View File

@@ -1,34 +1,27 @@
<?cs include:"doctype.cs" ?> <?cs # THIS CREATES A LIST OF ALL PACKAGES AND NAMES IT packages.html ?>
<?cs include:"macros.cs" ?> <?cs include:"macros.cs" ?>
<?cs include:"macros_override.cs" ?> <?cs include:"macros_override.cs" ?>
<?cs include:"doctype.cs" ?>
<html<?cs if:devsite ?> devsite<?cs /if ?>> <html<?cs if:devsite ?> devsite<?cs /if ?>>
<?cs include:"head_tag.cs" ?> <?cs include:"head_tag.cs" ?>
<body class="gc-documentation <?cs if:(reference.gms || reference.gcm) ?>google<?cs /if ?> <?cs include:"body_tag.cs" ?>
<?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs
if:reference ?> reference<?cs
/if ?><?cs
elif:design ?>design<?cs
elif:distribute ?>distribute<?cs
/if ?>" itemscope itemtype="http://schema.org/Article">
<a name="top"></a>
<?cs include:"header.cs" ?> <?cs include:"header.cs" ?>
<div class="col-12" id="doc-col">
<div id="jd-header">
<h1><?cs var:page.title ?></h1> <h1><?cs var:page.title ?></h1>
</div> <p>These are the API classes. See all
<a href="packages.html">API packages</a>.</p>
<div id="jd-content"> <div class="jd-letterlist"><?cs
<p>These are the Android API classes. See all <a href="packages.html">API packages</a>.</p> each:letter=docs.classes ?>
<div class="jd-letterlist"><?cs each:letter=docs.classes ?> <a href="#letter_<?cs name:letter ?>"><?cs
<a href="#letter_<?cs name:letter ?>"><?cs name:letter ?></a>&nbsp;&nbsp;<?cs /each?> name:letter ?></a>&nbsp;&nbsp;<?cs
/each?>
</div> </div>
<?cs each:letter=docs.classes ?> <?cs each:letter=docs.classes ?>
<?cs set:count = #1 ?> <?cs set:count = #1 ?>
<h2 id="letter_<?cs name:letter ?>"><?cs name:letter ?></h2> <h2 id="letter_<?cs name:letter ?>"><?cs name:letter ?></h2>
<table class="jd-sumtable"> <table>
<?cs set:cur_row = #0 ?> <?cs set:cur_row = #0 ?>
<?cs each:cl = letter ?> <?cs each:cl = letter ?>
<tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:cl.since ?>" > <tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:cl.since ?>" >
@@ -43,12 +36,34 @@
</table> </table>
<?cs /each ?> <?cs /each ?>
</div><!-- end jd-content --> <?cs if:devsite ?>
<div class="data-reference-resources-wrapper">
<?cs if:subcount(class.package) ?>
<ul data-reference-resources>
<?cs call:list("Annotations", class.package.annotations) ?>
<?cs call:list("Interfaces", class.package.interfaces) ?>
<?cs call:list("Classes", class.package.classes) ?>
<?cs call:list("Enums", class.package.enums) ?>
<?cs call:list("Exceptions", class.package.exceptions) ?>
<?cs call:list("Errors", class.package.errors) ?>
</ul>
<?cs elif:subcount(package) ?>
<ul data-reference-resources>
<?cs call:class_link_list("Annotations", package.annotations) ?>
<?cs call:class_link_list("Interfaces", package.interfaces) ?>
<?cs call:class_link_list("Classes", package.classes) ?>
<?cs call:class_link_list("Enums", package.enums) ?>
<?cs call:class_link_list("Exceptions", package.exceptions) ?>
<?cs call:class_link_list("Errors", package.errors) ?>
</ul>
<?cs /if ?>
</div>
<?cs /if ?>
<?cs if:!devsite ?>
<?cs include:"footer.cs" ?> <?cs include:"footer.cs" ?>
</div><!-- end doc-content -->
<?cs include:"trailer.cs" ?> <?cs include:"trailer.cs" ?>
<?cs /if ?>
</body> </body>
</html> </html>

View File

@@ -1,55 +1,8 @@
<?cs def:custom_masthead() ?> <?cs def:custom_masthead() ?>
<a name="top"></a> <a name="top"></a>
<!-- dialog to prompt lang pref change when loaded from hardcoded URL
<div id="langMessage" style="display:none">
<div>
<div class="lang en">
<p>You requested a page in English, would you like to proceed with this language setting?</p>
</div>
<div class="lang es">
<p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p>
</div>
<div class="lang ja">
<p>You requested a page in Japanese (), would you like to proceed with this language setting?</p>
</div>
<div class="lang ko">
<p>You requested a page in Korean (), would you like to proceed with this language setting?</p>
</div>
<div class="lang ru">
<p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p>
</div>
<div class="lang zh-cn">
<p>You requested a page in Simplified Chinese (), would you like to proceed with this language setting?</p>
</div>
<div class="lang zh-tw">
<p>You requested a page in Traditional Chinese (), would you like to proceed with this language setting?</p>
</div>
<a href="#" class="button yes" onclick="return false;">
<span class="lang en">Yes</span>
<span class="lang es"></span>
<span class="lang ja">Yes</span>
<span class="lang ko">Yes</span>
<span class="lang ru">Yes</span>
<span class="lang zh-cn"></span>
<span class="lang zh-tw"></span>
</a>
<a href="#" class="button" onclick="$('#langMessage').hide();return false;">
<span class="lang en">No</span>
<span class="lang es">No</span>
<span class="lang ja">No</span>
<span class="lang ko">No</span>
<span class="lang ru">No</span>
<span class="lang zh-cn"></span>
<span class="lang zh-tw"></span>
</a>
</div>
</div> -->
<?cs if:!devsite ?><?cs # leave out the global header for devsite; it is in devsite template ?>
<!-- Header --> <!-- Header -->
<div id="header-wrapper"> <div id="header-wrapper">
<div class="dac-header" id="header"><?cs call:butter_bar() ?> <div class="dac-header <?cs if:ndk ?>dac-ndk<?cs /if ?>" id="header">
<div class="dac-header-inner"> <div class="dac-header-inner">
<a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation"> <a class="dac-nav-toggle" data-dac-toggle-nav href="javascript:;" title="Open navigation">
<span class="dac-nav-hamburger"> <span class="dac-nav-hamburger">
@@ -58,9 +11,10 @@
<span class="dac-nav-hamburger-bot"></span> <span class="dac-nav-hamburger-bot"></span>
</span> </span>
</a> </a>
<?cs if:ndk ?><a class="dac-header-logo" href="<?cs var:toroot ?>ndk/index.html"> <?cs if:ndk ?><a class="dac-header-logo" style="width:144px;" href="<?cs var:toroot
<img class="dac-header-logo-image" src="<?cs var:toroot ?>assets/images/android_logo_ndk.png" ?>ndk/index.html">
srcset="<?cs var:toroot ?>assets/images/android_logo_ndk@2x.png 2x" <img class="dac-header-logo-image" src="<?cs var:toroot ?>assets/images/android_logo.png"
srcset="<?cs var:toroot ?>assets/images/android_logo@2x.png 2x"
width="32" height="36" alt="Android" /> NDK width="32" height="36" alt="Android" /> NDK
</a><?cs else ?><a class="dac-header-logo" href="<?cs var:toroot ?>index.html"> </a><?cs else ?><a class="dac-header-logo" href="<?cs var:toroot ?>index.html">
<img class="dac-header-logo-image" src="<?cs var:toroot ?>assets/images/android_logo.png" <img class="dac-header-logo-image" src="<?cs var:toroot ?>assets/images/android_logo.png"
@@ -68,33 +22,107 @@
width="32" height="36" alt="Android" /> Developers width="32" height="36" alt="Android" /> Developers
</a><?cs /if ?> </a><?cs /if ?>
<ul class="dac-header-crumbs"> <?cs if:ndk
<?cs # More <li> elements added here with javascript ?> ?><ul class="dac-header-tabs">
<?cs if:!section.landing ?><li class="dac-header-crumbs-item"><span class="dac-header-crumbs-link current <?cs <li>
if:ndk ?>ndk<?cs /if ?>"><?cs var:page.title ?></a></li><?cs <a href="<?cs var:toroot ?>ndk/guides/index.html" class="dac-header-tab"
/if ?> zh-tw-lang="API 指南"
zh-cn-lang="API 指南"
ru-lang="Руководства по API"
ko-lang="API 가이드"
ja-lang="API ガイド"
es-lang="Guías de la API">Guides</a>
</li>
<li>
<a href="<?cs var:toroot ?>ndk/reference/index.html" class="dac-header-tab"
zh-tw-lang="參考資源"
zh-cn-lang="参考"
ru-lang="Справочник"
ko-lang="참조문서"
ja-lang="リファレンス"
es-lang="Referencia">Reference</a>
</li>
<li>
<a href="<?cs var:toroot ?>ndk/samples/index.html" class="dac-header-tab"
>Samples</a>
</li>
<li>
<a href="<?cs var:toroot ?>ndk/downloads/index.html" class="dac-header-tab"
>Downloads</a>
</li>
</ul><?cs else
?><?cs
#
# For the reference only docs, include just one tab
#
?><?cs if:referenceonly
?><ul class="dac-header-tabs">
<li><a href="<?cs var:toroot ?>reference/packages.html" class="dac-header-tab"><?cs
if:sdk.preview
?>Android <?cs var:sdk.codename ?>
Preview <?cs var:sdk.preview.version ?><?cs
else
?>Android <?cs var:sdk.version ?>
r<?cs var:sdk.rel.id ?><?cs
/if ?></a>
</li>
</ul> </ul>
<?cs else ?><?cs
#
# End reference only docs, now the online DAC tabs...
#
?><ul class="dac-header-tabs">
<li>
<a class="dac-header-tab" href="<?cs var:toroot ?>design/index.html"
zh-tw-lang="設計"
zh-cn-lang="设计"
ru-lang="Проектирование"
ko-lang="디자인"
ja-lang="設計"
es-lang="Diseñar">Design</a>
</li>
<li>
<a class="dac-header-tab" href="<?cs var:toroot ?>develop/index.html"
zh-tw-lang="開發"
zh-cn-lang="开发"
ru-lang="Разработка"
ko-lang="개발"
ja-lang="開発"
es-lang="Desarrollar">Develop</a>
</li>
<li>
<a class="dac-header-tab" href="<?cs var:toroot ?>distribute/index.html"
zh-tw-lang="發佈"
zh-cn-lang="分发"
ru-lang="Распространение"
ko-lang="배포"
ja-lang="配布"
es-lang="Distribuir">Distribute</a>
</li>
</ul><?cs
/if ?><?cs
#
# End if/else reference only docs
#
?><?cs
/if ?><?cs # end if/else ndk ?>
<?cs # ADD SEARCH AND MENU ?> <?cs if:ndk ?><a class="dac-header-console-btn" href="http://developer.android.com">
<?cs if:!ndk ?> Back to Android Developers
<?cs call:header_search_widget() ?>
<?cs /if ?>
<?cs if:ndk ?><a class="dac-header-console-btn" href="//developer.android.com">
<span class="dac-visible-desktop-inline">Back to Android Developers</span>
</a><?cs else ?><a class="dac-header-console-btn" href="https://play.google.com/apps/publish/"> </a><?cs else ?><a class="dac-header-console-btn" href="https://play.google.com/apps/publish/">
<span class="dac-sprite dac-google-play"></span> <span class="dac-sprite dac-google-play"></span>
<span class="dac-visible-desktop-inline">Developer</span> <span class="dac-visible-desktop-inline">Developer</span>
Console Console
</a><?cs /if ?> </a><?cs /if ?><?cs
# ADD SEARCH AND MENU ?><?cs
if:!ndk ?><?cs
if:!referenceonly ?><?cs
call:header_search_widget() ?><?cs
/if ?><?cs
/if ?>
</div><!-- end header-wrap.wrap --> </div><!-- end header-wrap.wrap -->
</div><!-- end header --> </div><!-- end header -->
<div id="searchResults" class="wrap" style="display:none;">
<h2 id="searchTitle">Results</h2>
<div id="leftSearchControl" class="search-control">Loading...</div>
</div>
</div> <!--end header-wrapper --> </div> <!--end header-wrapper -->
<?cs if:ndk ?> <?cs if:ndk ?>
@@ -102,14 +130,10 @@
<nav class="dac-nav"> <nav class="dac-nav">
<div class="dac-nav-dimmer" data-dac-toggle-nav></div> <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
<ul class="dac-nav-list" data-dac-nav> <div class="dac-nav-sidebar" data-swap data-dynamic="false" data-transition-speed="300" data-dac-nav>
<li class="dac-nav-item dac-nav-head"> <div data-swap-container>
<a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation"> <?cs call:custom_left_nav() ?>
<img class="dac-logo-image" src="<?cs var:toroot ?>assets/images/android_logo_ndk.png" <ul id="dac-main-navigation" class="dac-nav-list dac-swap-section dac-left dac-no-anim">
srcset="<?cs var:toroot ?>assets/images/android_logo_ndk@2x.png 2x"
width="32" height="36" alt="Android" /> NDK
</a>
</li>
<li class="dac-nav-item guides"> <li class="dac-nav-item guides">
<a class="dac-nav-link" href="<?cs var:toroot ?>ndk/guides/index.html" <a class="dac-nav-link" href="<?cs var:toroot ?>ndk/guides/index.html"
zh-tw-lang="API 指南" zh-tw-lang="API 指南"
@@ -137,50 +161,29 @@
>Downloads</a> >Downloads</a>
</li> </li>
</ul> </ul>
</div>
</div>
</nav> </nav>
<!-- end NDK navigation--> <!-- end NDK navigation-->
<?cs else ?> <?cs else ?>
<!-- Standard DAC Navigation--> <!-- Navigation-->
<nav class="dac-nav"> <nav class="dac-nav">
<div class="dac-nav-dimmer" data-dac-toggle-nav></div> <div class="dac-nav-dimmer" data-dac-toggle-nav></div>
<ul class="dac-nav-list" data-dac-nav> <div class="dac-nav-sidebar" data-swap data-dynamic="false" data-transition-speed="300" data-dac-nav>
<li class="dac-nav-item dac-nav-head"> <div <?cs if:!referenceonly ?>data-swap-container<?cs /if ?>>
<a class="dac-nav-link dac-nav-logo" data-dac-toggle-nav href="javascript:;" title="Close navigation"> <?cs call:custom_left_nav() ?>
<img class="dac-logo-image" src="<?cs var:toroot ?>assets/images/android_logo.png" <?cs if:!referenceonly ?>
srcset="<?cs var:toroot ?>assets/images/android_logo@2x.png 2x" <ul id="dac-main-navigation" class="dac-nav-list dac-swap-section dac-left dac-no-anim">
width="32" height="36" alt="Android" /> Developers <li class="dac-nav-item home">
</a> <a class="dac-nav-link" href="<?cs var:toroot ?>index.html">Home</a>
</li><?cs <i class="dac-sprite dac-expand-more-black dac-nav-sub-slider"></i>
#
# For the reference only docs, include just one tab
#
?><?cs if:referenceonly ?>
<li class="dac-nav-item develop">
<a class="dac-nav-link has-subnav" href="<?cs var:toroot ?>reference/packages.html" zh-tw-lang="參考資源"
zh-cn-lang="参考" ru-lang="Справочник" ko-lang="참조문서" ja-lang="リファレンス"
es-lang="Referencia">API Reference</a>
<div class="dac-nav-secondary develop">
<h1 style="font-size: 20px; line-height: 24px; margin: 20px; color:#444"
><?cs
if:sdk.preview
?>Android <?cs var:sdk.codename ?>
Preview <?cs var:sdk.preview.version ?><?cs
else
?>Android <?cs var:sdk.version ?>
r<?cs var:sdk.rel.id ?><?cs
/if ?></h1>
</div>
</li>
<?cs else ?><?cs
#
# End reference only docs, now the online DAC tabs...
#
?><li class="dac-nav-item home">
<a class="dac-nav-link dac-visible-mobile-block" href="<?cs var:toroot ?>index.html">Home</a>
<ul class="dac-nav-secondary about"> <ul class="dac-nav-secondary about">
<li class="dac-nav-item about"> <li class="dac-nav-item versions">
<a class="dac-nav-link" href="<?cs var:toroot ?>about/index.html">Android</a> <a class="dac-nav-link" href="<?cs var:toroot ?>about/versions/nougat/index.html">Android</a>
</li> </li>
<li class="dac-nav-item wear"> <li class="dac-nav-item wear">
<a class="dac-nav-link" href="<?cs var:toroot ?>wear/index.html">Wear</a> <a class="dac-nav-link" href="<?cs var:toroot ?>wear/index.html">Wear</a>
@@ -210,6 +213,7 @@
ko-lang="개발" ko-lang="개발"
ja-lang="開発" ja-lang="開発"
es-lang="Desarrollar">Develop</a> es-lang="Desarrollar">Develop</a>
<i class="dac-sprite dac-expand-more-black dac-nav-sub-slider"></i>
<ul class="dac-nav-secondary develop"> <ul class="dac-nav-secondary develop">
<li class="dac-nav-item training"> <li class="dac-nav-item training">
<a class="dac-nav-link" href="<?cs var:toroot ?>training/index.html" <a class="dac-nav-link" href="<?cs var:toroot ?>training/index.html"
@@ -252,10 +256,8 @@
<?cs if:android.hasSamples ?> <?cs if:android.hasSamples ?>
<li class="dac-nav-item samples"> <li class="dac-nav-item samples">
<a class="dac-nav-link" href="<?cs var:toroot ?>samples/index.html">Samples</a> <a class="dac-nav-link" href="<?cs var:toroot ?>samples/index.html">Samples</a>
</li><?cs /if ?>
<li class="dac-nav-item preview">
<a class="dac-nav-link" href="<?cs var:toroot ?>preview/index.html">Preview</a>
</li> </li>
<?cs /if ?>
</ul> </ul>
</li> </li>
<li class="dac-nav-item distribute"> <li class="dac-nav-item distribute">
@@ -266,6 +268,7 @@
ko-lang="배포" ko-lang="배포"
ja-lang="配布" ja-lang="配布"
es-lang="Distribuir">Distribute</a> es-lang="Distribuir">Distribute</a>
<i class="dac-sprite dac-expand-more-black dac-nav-sub-slider"></i>
<ul class="dac-nav-secondary distribute"> <ul class="dac-nav-secondary distribute">
<li class="dac-nav-item googleplay"> <li class="dac-nav-item googleplay">
<a class="dac-nav-link" href="<?cs var:toroot ?>distribute/googleplay/index.html">Google Play</a></li> <a class="dac-nav-link" href="<?cs var:toroot ?>distribute/googleplay/index.html">Google Play</a></li>
@@ -285,36 +288,35 @@
<a class="dac-nav-link" href="<?cs var:toroot ?>distribute/stories/index.html">Stories</a> <a class="dac-nav-link" href="<?cs var:toroot ?>distribute/stories/index.html">Stories</a>
</li> </li>
</ul> </ul>
</li><?cs </li>
/if ?><?cs <!--<li class="dac-nav-item preview">
# <a class="dac-nav-link" href="<?cs var:toroot ?>preview/index.html">Preview</a>
# End if/else reference only docs </li>-->
#
?>
</ul> </ul>
<?cs /if ?><?cs # end if referenceonly ?>
</div>
</div>
</nav> </nav>
<!-- end navigation--> <!-- end navigation-->
<?cs /if ?> <?cs /if ?>
<?cs /if ?><?cs # end if/else !devsite ?>
<!-- Nav Setup -->
<script>$('[data-dac-nav]').dacNav();</script>
<?cs <?cs
/def ?><?cs # end custom_masthead() ?> /def ?><?cs # end custom_masthead() ?><?cs
def:toast() ?><?cs
<?cs # (UN)COMMENT THE INSIDE OF THIS METHOD TO TOGGLE VISIBILITY ?> # (UN)COMMENT TO TOGGLE VISIBILITY
<?cs def:butter_bar() ?>
<?cs # HIDE THE BUTTER BAR <div class="dac-toast-group">
<div class="dac-toast" data-toast>
<div style="height:20px"><!-- spacer to bump header down --></div> <div class="dac-toast-wrap">
<div id="butterbar-wrapper"> This is a demo notification <a href="#">Learn more</a>.
<div id="butterbar"> </div>
<a href="//googleblog.blogspot.com/" id="butterbar-message">
The Android 5.0 SDK will be available on October 17th!
</a>
</div> </div>
</div> </div>
?> ?><?cs
/def ?>
<?cs /def ?>

View File

@@ -1,357 +1,28 @@
<?cs <?cs def:body_content_wrap_start() ?>
def:mobile_nav_toggle() ?> <div class="wrap clearfix" id="body-content">
<div class="dac-visible-mobile-block" data-toggle="section">
<span class="dac-toggle-expand dac-devdoc-toggle"><i class="dac-sprite dac-expand-more-black"></i> Show navigation</span>
<span class="dac-toggle-collapse dac-devdoc-toggle" data-toggle-section><i class="dac-sprite dac-expand-less-black"></i> Hide navigation</span>
</div>
<?cs /def ?><?cs <?cs /def ?><?cs
def:fullpage() ?> def:fullpage() ?>
<div id="body-content"> <div id="body-content">
<div> <div>
<?cs /def ?>
<?cs
def:sdk_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-4 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/sdk/sdk_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<?cs /def ?><?cs <?cs /def ?><?cs
def:no_nav() ?> # The default side navigation for the reference docs ?><?cs
<div class="wrap clearfix" id="body-content"> def:reference_default_nav() ?>
<div> <!-- Fullscreen toggler -->
<?cs /def ?><?cs <button data-fullscreen class="dac-nav-fullscreen">
<i class="dac-sprite dac-fullscreen"></i>
</button>
def:tools_nav() ?> <script>$('[data-fullscreen]').dacFullscreen();</script>
<div class="wrap clearfix" id="body-content"><div class="cols"> <!-- End: Fullscreen toggler -->
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/tools/tools_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs
def:training_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-4 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/training/training_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:googleplay_nav() ?> <?cs if:reference.gcm || reference.gms ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/googleplay/googleplay_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:preview_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-4 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/preview/preview_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:essentials_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/essentials/essentials_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:users_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/users/users_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:engage_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/engage/engage_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:analyze_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/analyze/analyze_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:monetize_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/monetize/monetize_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:disttools_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/tools/disttools_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:stories_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/stories/stories_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?><?cs
def:guide_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-4 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/guide/guide_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs
def:design_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/design/design_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs
def:distribute_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/distribute/distribute_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs
def:samples_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-4 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/samples/samples_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs
def:google_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-4 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/google/google_toc.cs" ?> <?cs include:"../../../../frameworks/base/docs/html/google/google_toc.cs" ?>
</div>
</div>
<script type="text/javascript"> <script type="text/javascript">
showGoogleRefTree(); showGoogleRefTree();
</script> </script>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs
def:about_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/about/about_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs
def:wear_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-4 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<?cs call:mobile_nav_toggle() ?>
<div class="dac-toggle-content" id="devdoc-nav">
<div class="scroll-pane">
<?cs include:"../../../../frameworks/base/docs/html/wear/wear_toc.cs" ?>
</div>
</div>
</div> <!-- end side-nav -->
<script>
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs # The default side navigation for the reference docs ?><?cs
def:default_left_nav() ?>
<?cs if:reference.gcm || reference.gms ?>
<?cs call:google_nav() ?>
<?cs else ?> <?cs else ?>
<div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-4 dac-hidden-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
<div id="devdoc-nav"> <div id="devdoc-nav">
<div id="api-nav-header"> <div id="api-nav-header">
<div id="api-level-toggle"> <div id="api-level-toggle">
@@ -375,87 +46,35 @@ def:default_left_nav() ?>
buildApiLevelSelector(); buildApiLevelSelector();
</script> </script>
<div id="swapper"> <div class="dac-reference-nav" data-reference-tree>
<div id="nav-panels"> <ul class="dac-reference-nav-list" data-reference-namespaces>
<div id="resize-packages-nav">
<div id="packages-nav" class="scroll-pane">
<ul>
<?cs call:package_link_list(docs.packages) ?> <?cs call:package_link_list(docs.packages) ?>
</ul><br/> </ul>
</div> <!-- end packages-nav --> <?cs if:subcount(class.package) ?>
</div> <!-- end resize-packages --> <ul data-reference-resources>
<div id="classes-nav" class="scroll-pane">
<?cs
if:subcount(class.package) ?>
<ul>
<?cs call:list("Annotations", class.package.annotations) ?> <?cs call:list("Annotations", class.package.annotations) ?>
<?cs call:list("Interfaces", class.package.interfaces) ?> <?cs call:list("Interfaces", class.package.interfaces) ?>
<?cs call:list("Classes", class.package.classes) ?> <?cs call:list("Classes", class.package.classes) ?>
<?cs call:list("Enums", class.package.enums) ?> <?cs call:list("Enums", class.package.enums) ?>
<?cs call:list("Exceptions", class.package.exceptions) ?> <?cs call:list("Exceptions", class.package.exceptions) ?>
<?cs call:list("Errors", class.package.errors) ?> <?cs call:list("Errors", class.package.errors) ?>
</ul><?cs </ul>
elif:subcount(package) ?> <?cs elif:subcount(package) ?>
<ul> <ul data-reference-resources>
<?cs call:class_link_list("Annotations", package.annotations) ?> <?cs call:class_link_list("Annotations", package.annotations) ?>
<?cs call:class_link_list("Interfaces", package.interfaces) ?> <?cs call:class_link_list("Interfaces", package.interfaces) ?>
<?cs call:class_link_list("Classes", package.classes) ?> <?cs call:class_link_list("Classes", package.classes) ?>
<?cs call:class_link_list("Enums", package.enums) ?> <?cs call:class_link_list("Enums", package.enums) ?>
<?cs call:class_link_list("Exceptions", package.exceptions) ?> <?cs call:class_link_list("Exceptions", package.exceptions) ?>
<?cs call:class_link_list("Errors", package.errors) ?> <?cs call:class_link_list("Errors", package.errors) ?>
</ul><?cs </ul>
else ?>
<p style="padding:10px">Select a package to view its members</p><?cs
/if ?><br/>
</div><!-- end classes -->
</div><!-- end nav-panels -->
<div id="nav-tree" style="display:none" class="scroll-pane">
<div id="tree-list"></div>
</div><!-- end nav-tree -->
</div><!-- end swapper -->
<div id="nav-swap">
<a class="fullscreen">fullscreen</a>
<a href='#' onclick='swapNav();return false;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>
</div>
</div> <!-- end devdoc-nav -->
</div> <!-- end side-nav -->
<script type="text/javascript">
// init fullscreen based on user pref
var fullscreen = readCookie("fullscreen");
if (fullscreen != 0) {
if (fullscreen == "false") {
toggleFullscreen(false);
} else {
toggleFullscreen(true);
}
}
// init nav version for mobile
if (isMobile) {
swapNav(); // tree view should be used on mobile
$('#nav-swap').hide();
} else {
chooseDefaultNav();
if ($("#nav-tree").is(':visible')) {
init_default_navtree("<?cs var:toroot ?>");
}
}
// scroll the selected page into view
$(document).ready(function() {
scrollIntoView("packages-nav");
scrollIntoView("classes-nav");
});
</script>
<?cs /if ?> <?cs /if ?>
<?cs </div>
/def ?> </div>
<?cs /if ?>
<?cs /def ?><?cs
<?cs
def:ndk_nav() ?> def:ndk_nav() ?>
<div class="wrap clearfix" id="body-content"><div class="cols"> <div class="wrap clearfix" id="body-content"><div class="cols">
<div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement"> <div class="col-3 dac-toggle dac-mobile" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
@@ -471,150 +90,159 @@ elif:samples ?><?cs include:"../../../../frameworks/base/docs/html/ndk/samples/s
</div> </div>
</div> </div>
</div> <!-- end side-nav --> </div> <!-- end side-nav -->
<script> <?cs /def ?><?cs
$(document).ready(function() {
scrollIntoView("devdoc-nav");
});
</script>
<?cs /def ?>
<?cs
def:header_search_widget() ?> def:header_search_widget() ?>
<div class="dac-header-search" id="search-container"> <form data-search class="dac-header-search">
<button class="dac-header-search-close" data-search-close>
<i class="dac-sprite dac-back-arrow"></i>
</button>
<div class="dac-header-search-inner"> <div class="dac-header-search-inner">
<div class="dac-sprite dac-search dac-header-search-btn" id="search-btn"></div> <i class="dac-sprite dac-search-white dac-header-search-icon"></i>
<form class="dac-header-search-form" onsubmit="return submit_search()"> <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q" class="dac-header-search-input" placeholder="Search" />
<input id="search_autocomplete" type="text" value="" autocomplete="off" name="q" <button class="dac-header-search-clear dac-hidden" data-search-clear>
onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)" <i class="dac-sprite dac-close-black"></i>
onkeydown="return search_changed(event, true, '<?cs var:toroot ?>')" </button>
onkeyup="return search_changed(event, false, '<?cs var:toroot ?>')" </div>
class="dac-header-search-input" placeholder="Search" />
<a class="dac-header-search-close hide" id="search-close">close</a>
</form> </form>
</div><!-- end dac-header-search-inner --> <?cs /def ?><?cs
</div><!-- end dac-header-search -->
<div class="search_filtered_wrapper"> def:search_results() ?>
<div id="search-results" class="dac-search-results">
<div id="dac-search-results-history" class="dac-search-results-history">
<div class="wrap dac-search-results-history-wrap">
<div class="cols">
<div class="col-1of2 col-tablet-1of2 col-mobile-1of1">
<h2>Most visited</h2>
<div class="resource-flow-layout" data-history-query="history:most/visited" data-maxresults="3" data-cardsizes="18x2"></div>
</div>
<div class="col-1of2 col-tablet-1of2 col-mobile-1of1">
<h2>Recently visited</h2>
<div class="resource-flow-layout cols" data-history-query="history:recent" data-allow-duplicates="true" data-maxresults="3" data-cardsizes="18x2"></div>
</div>
</div>
</div>
</div>
<div id="dac-search-results-content" class="dac-search-results-content">
<div class="dac-search-results-metadata wrap">
<div class="dac-search-results-for">
<h2>Results for <span id="search-results-for"></span></h2>
</div>
<div id="dac-search-results-hero"></div>
<div class="dac-search-results-hero cols">
<div id="dac-search-results-reference" class="col-3of6 col-tablet-1of2 col-mobile-1of1">
<div class="suggest-card reference no-display"> <div class="suggest-card reference no-display">
<ul class="search_filtered"> <ul class="dac-search-results-reference">
</ul>
</div>
<div class="suggest-card develop no-display">
<ul class="search_filtered">
</ul>
<div class="child-card guides no-display">
</div>
<div class="child-card training no-display">
</div>
<div class="child-card samples no-display">
</div>
</div>
<div class="suggest-card design no-display">
<ul class="search_filtered">
</ul>
</div>
<div class="suggest-card distribute no-display">
<ul class="search_filtered">
</ul> </ul>
</div> </div>
</div> </div>
<?cs /def ?> <div id="dac-custom-search-results"></div>
</div>
</div>
</div>
</div>
<?cs /def ?><?cs
<?cs def:custom_left_nav() ?>
def:custom_left_nav() ?><?cs <?cs if:(!fullpage && !nonavpage) || forcelocalnav ?>
if:ndk ?><?cs <?cs if:!referenceonly ?>
if:fullpage ?><?cs <a class="dac-nav-back-button dac-swap-section dac-up dac-no-anim" data-swap-button href="javascript:;">
call:fullpage() ?><?cs <i class="dac-sprite dac-nav-back"></i> <span class="dac-nav-back-title">Back</span>
elif:nonavpage ?><?cs </a>
call:no_nav() ?><?cs <?cs /if ?>
elif:guide || reference || samples || downloads ?><?cs <div class="dac-nav-sub dac-swap-section dac-right dac-active" itemscope
call:ndk_nav() ?><?cs itemtype="http://schema.org/SiteNavigationElement" <?cs
else ?><?cs if:referenceonly ?>style="top:0 !important;"<?cs /if ?>>
call:default_left_nav() ?> <?cs <?cs if:ndk ?>
/if ?><?cs <?cs if:guide ?>
else ?><?cs <?cs include:"../../../../frameworks/base/docs/html/ndk/guides/guides_toc.cs" ?>
if:fullpage ?><?cs <?cs elif:reference ?>
call:fullpage() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/ndk/reference/reference_toc.cs" ?>
elif:nonavpage ?><?cs <?cs elif:downloads ?>
call:no_nav() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/ndk/downloads/downloads_toc.cs" ?>
elif:guide ?><?cs <?cs elif:samples ?>
call:guide_nav() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/ndk/samples/samples_toc.cs" ?>
elif:design ?><?cs <?cs else ?>
call:design_nav() ?><?cs <?cs call:reference_default_nav() ?>
elif:training ?><?cs <?cs /if ?>
call:training_nav() ?><?cs <?cs elif:guide ?>
elif:tools ?><?cs <?cs include:"../../../../frameworks/base/docs/html/guide/guide_toc.cs" ?>
call:tools_nav() ?><?cs <?cs elif:design ?>
elif:google ?><?cs <?cs include:"../../../../frameworks/base/docs/html/design/design_toc.cs" ?>
call:google_nav() ?><?cs <?cs elif:training ?>
elif:samples ?><?cs <?cs include:"../../../../frameworks/base/docs/html/training/training_toc.cs" ?>
call:samples_nav() ?><?cs <?cs elif:tools ?>
elif:preview ?><?cs <?cs include:"../../../../frameworks/base/docs/html/tools/tools_toc.cs" ?>
call:preview_nav() ?><?cs <?cs elif:google ?>
elif:distribute ?><?cs <?cs include:"../../../../frameworks/base/docs/html/google/google_toc.cs" ?>
if:googleplay ?><?cs <?cs elif:samples ?>
call:googleplay_nav() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/samples/samples_toc.cs" ?>
elif:essentials ?><?cs <?cs elif:preview ?>
call:essentials_nav() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/preview/preview_toc.cs" ?>
elif:users ?><?cs <?cs elif:preview ?>
call:users_nav() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/wear/preview/preview_toc.cs" ?>
elif:engage ?><?cs <?cs elif:distribute ?>
call:engage_nav() ?><?cs <?cs if:googleplay ?>
elif:monetize ?><?cs <?cs include:"../../../../frameworks/base/docs/html/distribute/googleplay/googleplay_toc.cs" ?>
call:monetize_nav() ?><?cs <?cs elif:essentials ?>
elif:analyze ?><?cs <?cs include:"../../../../frameworks/base/docs/html/distribute/essentials/essentials_toc.cs" ?>
call:analyze_nav() ?><?cs <?cs elif:users ?>
elif:disttools ?><?cs <?cs include:"../../../../frameworks/base/docs/html/distribute/users/users_toc.cs" ?>
call:disttools_nav() ?><?cs <?cs elif:engage ?>
elif:stories ?><?cs <?cs include:"../../../../frameworks/base/docs/html/distribute/engage/engage_toc.cs" ?>
call:stories_nav() ?><?cs <?cs elif:monetize ?>
/if ?><?cs <?cs include:"../../../../frameworks/base/docs/html/distribute/monetize/monetize_toc.cs" ?>
elif:about ?><?cs <?cs elif:analyze ?>
call:about_nav() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/distribute/analyze/analyze_toc.cs" ?>
elif:distribute ?><?cs <?cs elif:disttools ?>
call:distribute_nav() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/distribute/tools/disttools_toc.cs" ?>
elif:wear ?><?cs <?cs elif:stories ?>
call:wear_nav() ?><?cs <?cs include:"../../../../frameworks/base/docs/html/distribute/stories/stories_toc.cs" ?>
else ?><?cs <?cs /if ?>
call:default_left_nav() ?> <?cs <?cs elif:about ?>
/if ?><?cs <?cs include:"../../../../frameworks/base/docs/html/about/about_toc.cs" ?>
/if ?><?cs <?cs else ?>
/def ?> <?cs call:reference_default_nav() ?>
<?cs /if ?>
</div>
<?cs /if ?>
<?cs /def ?><?cs
<?cs # appears at the bottom of every page ?><?cs # appears at the bottom of every page ?><?cs
def:custom_cc_copyright() ?> def:custom_cc_copyright() ?>
Except as noted, this content is Except as noted, this content is
licensed under <a href="//creativecommons.org/licenses/by/2.5/"> licensed under <a href="http://creativecommons.org/licenses/by/2.5/">
Creative Commons Attribution 2.5</a>. For details and Creative Commons Attribution 2.5</a>. For details and
restrictions, see the <a href="<?cs var:toroot ?>license.html">Content restrictions, see the <a href="<?cs var:toroot ?>license.html">Content
License</a>.<?cs License</a>.
/def ?> <?cs /def ?><?cs
<?cs
def:custom_copyright() ?> def:custom_copyright() ?>
Except as noted, this content is licensed under <a Except as noted, this content is licensed under <a
href="//www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>.
For details and restrictions, see the <a href="<?cs var:toroot ?>license.html"> For details and restrictions, see the <a href="<?cs var:toroot ?>license.html">
Content License</a>.<?cs Content License</a>.
/def ?> <?cs /def ?><?cs
<?cs
def:custom_footerlinks() ?> def:custom_footerlinks() ?>
<a href="<?cs var:toroot ?>about/index.html">About Android</a> <a href="<?cs var:toroot ?>about/android.html">About Android</a>
<a href="<?cs var:toroot ?>auto/index.html">Auto</a> <a href="<?cs var:toroot ?>auto/index.html">Auto</a>
<a href="<?cs var:toroot ?>tv/index.html">TV</a> <a href="<?cs var:toroot ?>tv/index.html">TV</a>
<a href="<?cs var:toroot ?>wear/index.html">Wear</a> <a href="<?cs var:toroot ?>wear/index.html">Wear</a>
<a href="<?cs var:toroot ?>legal.html">Legal</a> <a href="<?cs var:toroot ?>legal.html">Legal</a>
<?cs <?cs /def ?><?cs
/def ?>
<?cs # appears on the right side of the blue bar at the bottom off every page ?><?cs # appears on the right side of the blue bar at the bottom off every page ?><?cs
def:custom_buildinfo() ?><?cs def:custom_buildinfo() ?>
if:!google && !reference.gcm && !reference.gms ?> <?cs if:!google && !reference.gcm && !reference.gms ?>
Android <?cs var:sdk.version ?>&nbsp;r<?cs var:sdk.rel.id ?> &mdash; <?cs Android <?cs var:sdk.version ?>&nbsp;r<?cs var:sdk.rel.id ?> &mdash;
/if ?> <?cs /if ?>
<script src="<?cs var:toroot ?>timestamp.js" type="text/javascript"></script> <script src="<?cs var:toroot ?>timestamp.js" type="text/javascript"></script>
<script>document.write(BUILD_TIMESTAMP)</script> <script>document.write(BUILD_TIMESTAMP)</script>
<?cs /def ?> <?cs /def ?>

View File

@@ -7,12 +7,12 @@
Android Design<?cs if:page.title ?> - <?cs var:page.title ?><?cs /if ?> Android Design<?cs if:page.title ?> - <?cs var:page.title ?><?cs /if ?>
</title> </title>
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico"> <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:regular,medium,thin,italic,mediumitalic"> <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Roboto:regular,medium,thin,italic,mediumitalic">
<link rel="stylesheet" href="<?cs var:toroot ?>assets/yui-3.3.0-reset-min.css"> <link rel="stylesheet" href="<?cs var:toroot ?>assets/yui-3.3.0-reset-min.css">
<link rel="stylesheet" href="<?cs var:toroot ?>assets/design/default.css?v=19"> <link rel="stylesheet" href="<?cs var:toroot ?>assets/design/default.css">
<script src="<?cs var:toroot ?>assets/jquery-1.6.2.min.js"></script> <script src="<?cs var:toroot ?>assets/jquery-1.6.2.min.js"></script>
<script>var SITE_ROOT = '<?cs var:toroot ?>design';</script> <script>var SITE_ROOT = '<?cs var:toroot ?>design';</script>
<script src="<?cs var:toroot ?>assets/design/default.js?v=19"></script> <script src="<?cs var:toroot ?>assets/design/default.js"></script>
</head> </head>
<body class="gc-documentation <body class="gc-documentation
<?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs <?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs
@@ -42,10 +42,6 @@
<?cs elif:header.title ?><h2><?cs var:header.title ?></h2> <?cs elif:header.title ?><h2><?cs var:header.title ?></h2>
<?cs else ?><h2><?cs var:page.title ?></h2> <?cs else ?><h2><?cs var:page.title ?></h2>
<?cs /if ?> <?cs /if ?>
<div class="paging-links" itemscope itemtype="http://schema.org/SiteNavigationElement">
<a href="#" class="prev-page-link">Previous</a>
<a href="#" class="next-page-link">Next</a>
</div>
</div> </div>
<?cs /if ?> <?cs /if ?>
@@ -70,16 +66,16 @@
<p id="copyright"> <p id="copyright">
Except as noted, this content is licensed under Except as noted, this content is licensed under
<a href="//creativecommons.org/licenses/by/2.5/"> <a href="http://creativecommons.org/licenses/by/2.5/">
Creative Commons Attribution 2.5</a>.<br> Creative Commons Attribution 2.5</a>.<br>
For details and restrictions, see the For details and restrictions, see the
<a href="//developer.android.com/license.html">Content License</a>. <a href="http://developer.android.com/license.html">Content License</a>.
</p> </p>
<p> <p>
<a href="//www.android.com/terms.html">Site Terms of Service</a> &ndash; <a href="http://www.android.com/terms.html">Site Terms of Service</a> &ndash;
<a href="//www.android.com/privacy.html">Privacy Policy</a> &ndash; <a href="http://www.android.com/privacy.html">Privacy Policy</a> &ndash;
<a href="//www.android.com/branding.html">Brand Guidelines</a> <a href="http://www.android.com/branding.html">Brand Guidelines</a>
</p> </p>
</div> </div>

View File

@@ -1,10 +1,10 @@
<?cs include:"doctype.cs" ?> <?cs if:!devsite ?><?cs
<?cs include:"macros.cs" ?> include:"doctype.cs" ?><?cs /if ?><?cs
<html<?cs if:devsite ?> devsite<?cs /if ?>> include:"macros.cs" ?><html<?cs if:devsite ?> devsite<?cs /if ?>>
<?cs include:"head_tag.cs" ?> <?cs include:"head_tag.cs" ?>
<body class="gc-documentation <body<?cs
if:!devsite ?> class="gc-documentation<?cs
<?cs # add document classes for navigation header selection (and other stuff) ?> # add document classes for navigation header selection (and other stuff) ?>
<?cs <?cs
if:(google || reference.gms || reference.gcm) ?>google <?cs /if ?><?cs if:(google || reference.gms || reference.gcm) ?>google <?cs /if ?><?cs
if:ndk ?>ndk<?cs if:ndk ?>ndk<?cs
@@ -13,10 +13,9 @@
if:reference ?> reference<?cs /if ?><?cs if:reference ?> reference<?cs /if ?><?cs
if:downloads ?> downloads<?cs /if ?><?cs if:downloads ?> downloads<?cs /if ?><?cs
else ?><?cs else ?><?cs
if:(guide||develop||training||reference||tools||sdk||google||samples||preview) ?>develop<?cs if:(guide||develop||training||reference||tools||sdk||google||samples) ?>develop<?cs
if:guide ?> guide<?cs /if ?><?cs if:guide ?> guide<?cs /if ?><?cs
if:samples ?> samples<?cs /if ?><?cs if:samples ?> samples<?cs /if ?><?cs
if:preview ?> preview<?cs /if ?><?cs
elif:(distribute||googleplay||essentials||users||engage||monetize||disttools||stories||analyze) ?>distribute<?cs elif:(distribute||googleplay||essentials||users||engage||monetize||disttools||stories||analyze) ?>distribute<?cs
if:googleplay ?> googleplay<?cs /if ?><?cs if:googleplay ?> googleplay<?cs /if ?><?cs
if:essentials ?> essentials<?cs /if ?><?cs if:essentials ?> essentials<?cs /if ?><?cs
@@ -26,29 +25,42 @@
if:disttools ?> disttools<?cs /if ?><?cs if:disttools ?> disttools<?cs /if ?><?cs
if:stories ?> stories<?cs /if ?><?cs if:stories ?> stories<?cs /if ?><?cs
if:analyze ?> analyze<?cs /if ?><?cs if:analyze ?> analyze<?cs /if ?><?cs
elif:(about||wear||tv||auto) ?>about<?cs elif:(design||vision||material||patterns||devices||designdownloads) ?> design<?cs
elif:design ?>design<?cs if:vision ?> vision<?cs /if ?><?cs
if:material ?> material<?cs /if ?><?cs
if:patterns ?> patterns<?cs /if ?><?cs
if:devices ?> devices<?cs /if ?><?cs
if:designdownloads ?> designdownloads<?cs /if ?><?cs
elif:(about||versions||wear||tv||auto) ?> about<?cs
if:versions ?> versions<?cs /if ?><?cs
if:wear ?> wear<?cs /if ?><?cs
if:tv ?> tv<?cs /if ?><?cs
if:auto ?> auto<?cs /if ?><?cs
elif:(preview) ?> preview<?cs
/if ?><?cs /if ?><?cs
if:page.trainingcourse ?> trainingcourse<?cs /if ?><?cs if:page.trainingcourse ?> trainingcourse<?cs /if ?><?cs
/if ?>" itemscope itemtype="http://schema.org/Article"><?cs /if ?>" itemscope itemtype="http://schema.org/Article"><?cs
include:"header.cs" ?> /if ?>><?cs
include:"header.cs" ?><?cs
<div <?cs if:(design||training||walkthru) && !page.trainingcourse && !page.article ?><?cs
if:fullpage # header logic for docs that provide previous/next buttons ?><?cs
?>class="fullpage"<?cs if:(header.hide||devsite) ?><?cs
elif:(design||tools||about||sdk||googleplay||essentials||users||engage||monetize||disttools||stories) && !nonavpage else ?>
?>class="col-13" id="doc-col"<?cs
elif:!nonavpage
?>class="col-12" id="doc-col"<?cs /if ?> >
<?cs if:(design||training||walkthru) && !page.trainingcourse && !page.article ?><?cs # header logic for docs that provide previous/next buttons ?>
<?cs if:header.hide ?>
<?cs else ?>
<div class="content-header <?cs if:header.justLinks ?>just-links<?cs /if ?>"> <div class="content-header <?cs if:header.justLinks ?>just-links<?cs /if ?>">
<?cs if:header.justLinks ?>&nbsp; <?cs if:header.justLinks ?>&nbsp;
<?cs else ?><h1 itemprop="name"><?cs var:page.title ?></h1> <?cs else ?>
<?cs /if ?> <ul class="dac-header-crumbs">
<?cs if:training ?> <?cs # More <li> elements added here with javascript ?>
</ul>
<!-- Breadcrumb Setup -->
<script>$('.dac-nav-list').dacCurrentPage().dacCrumbs();</script>
<h1 itemprop="name"><?cs var:page.title ?>
</h1><?cs
/if ?><?cs
if:training ?>
<div class="training-nav-top" itemscope itemtype="http://schema.org/SiteNavigationElement"> <div class="training-nav-top" itemscope itemtype="http://schema.org/SiteNavigationElement">
<a href="#" class="prev-page-link hide" <a href="#" class="prev-page-link hide"
zh-tw-lang="上一堂課" zh-tw-lang="上一堂課"
@@ -74,9 +86,9 @@ include:"header.cs" ?>
ja-lang="開始する" ja-lang="開始する"
es-lang="Empezar" es-lang="Empezar"
>Get started</a> >Get started</a>
</div> </div><?cs
<?cs elif:!page.trainingcourse ?> elif:!page.trainingcourse ?>
<div class="paging-links" itemscope itemtype="http://schema.org/SiteNavigationElement"> <?cs # <div class="paging-linkss" itemscope itemtype="http://schema.org/SiteNavigationElement">
<a href="#" class="prev-page-link hide" <a href="#" class="prev-page-link hide"
zh-tw-lang="上一堂課" zh-tw-lang="上一堂課"
zh-cn-lang="上一课" zh-cn-lang="上一课"
@@ -93,12 +105,12 @@ include:"header.cs" ?>
ja-lang="次へ" ja-lang="次へ"
es-lang="Siguiente" es-lang="Siguiente"
>Next</a> >Next</a>
</div> ?><?cs
/if ?><?cs # end if training ?>
</div> </div>
<?cs /if ?><?cs # end if training ?> <?cs /if ?><?cs # end if header.hide ?><?cs
</div>
<?cs /if ?><?cs # end if header.hide ?>
<?cs elif:samplesProjectIndex ?> elif:samplesProjectIndex ?>
<div id="api-info-block"> <div id="api-info-block">
<div class="sum-details-links"> <div class="sum-details-links">
Overview Overview
@@ -108,18 +120,9 @@ include:"header.cs" ?>
</div><!-- end breadcurmb block --> </div><!-- end breadcurmb block -->
<h1 itemprop="name"><?cs var:projectDir ?></h1> <h1 itemprop="name"><?cs var:projectDir ?></h1>
<?cs else ?> <?cs else ?><?cs
<?cs if:training ?> if:(!fullpage && !header.hide && !devsite) ?><?cs
<?cs # horrible horrible hack to move TOC up when the next/prev links are not there ?> if:page.landing ?><?cs # header logic for docs that are landing pages ?>
<style>
#tb-wrapper {
margin-top:6px;
}
</style>
<?cs /if ?>
<?cs if:(!fullpage && !header.hide) ?>
<?cs if:page.landing ?><?cs # header logic for docs that are landing pages ?>
<div class="landing-banner"> <div class="landing-banner">
<?cs if:page.landing.image ?><?cs # use two-column layout only if there is an image ?> <?cs if:page.landing.image ?><?cs # use two-column layout only if there is an image ?>
<div class="cols"> <div class="cols">
@@ -137,8 +140,15 @@ include:"header.cs" ?>
</div> </div>
<?cs /if ?> <?cs /if ?>
</div> </div>
<?cs else ?> <?cs else ?><?cs
<?cs if:tab1 ?><div id="title-tabs-wrapper"><?cs /if ?> if:tab1 ?><div id="title-tabs-wrapper"><?cs /if ?>
<ul class="dac-header-crumbs">
<?cs # More <li> elements added here with javascript ?>
</ul>
<!-- Breadcrumb Setup -->
<p><script>$('.dac-nav-list').dacCurrentPage().dacCrumbs();</script></p>
<h1 itemprop="name" <?cs if:tab1 ?>class="with-title-tabs"<?cs /if ?>><?cs var:page.title ?></h1><?cs <h1 itemprop="name" <?cs if:tab1 ?>class="with-title-tabs"<?cs /if ?>><?cs var:page.title ?></h1><?cs
if:tab1 ?><ul id="title-tabs"> if:tab1 ?><ul id="title-tabs">
<li class="selected"><a href="<?cs var:tab1.link ?>"><?cs var:tab1 ?></a></li> <li class="selected"><a href="<?cs var:tab1.link ?>"><?cs var:tab1 ?></a></li>
@@ -148,24 +158,73 @@ include:"header.cs" ?>
<li><a href="<?cs var:tab3.link ?>"><?cs var:tab3 ?></a></li><?cs /if ?> <li><a href="<?cs var:tab3.link ?>"><?cs var:tab3 ?></a></li><?cs /if ?>
</ul> </ul>
<?cs /if ?> <?cs /if ?>
<?cs if:tab1 ?></div><!-- end tab-wrapper --><?cs /if ?> <?cs if:tab1 ?></div><!-- end tab-wrapper --><?cs /if ?><?cs
<?cs /if ?> /if ?><?cs
<?cs /if ?> /if ?><?cs
<?cs /if ?><?cs # end if design ?> /if ?><?cs # end if design ?><?cs
<?cs # THIS IS THE MAIN DOC CONTENT ?> if devsite ?><?cs
if:tab1 ?>
<div id="title-tabs-wrapper">
<ul id="title-tabs">
<li class="selected"><a href="<?cs var:tab1.link ?>"><?cs var:tab1 ?></a></li>
<?cs if:tab2 ?>
<li><a href="<?cs var:tab2.link ?>"><?cs var:tab2 ?></a></li><?cs /if ?>
<?cs if:tab3 ?>
<li><a href="<?cs var:tab3.link ?>"><?cs var:tab3 ?></a></li><?cs /if ?>
</ul>
</div><!-- end tab-wrapper --><?cs
/if ?><?cs
/if ?><?cs
# THIS IS THE MAIN DOC CONTENT ?><?cs
if:!devsite ?>
<div id="jd-content"> <div id="jd-content">
<div class="jd-descr" itemprop="articleBody"><?cs
/if ?><?cs
<div class="jd-descr" itemprop="articleBody"> if:(!fullpage && !header.hide && devsite) ?><?cs
<?cs call:tag_list(root.descr) ?> if:page.landing ?><?cs # header logic for docs that are landing pages ?>
<div class="landing-banner">
<?cs if:page.landing.image ?><?cs # use two-column layout only if there is an image ?>
<div class="cols">
<div class="col-6">
<img src="<?cs var:toroot ?><?cs var:page.landing.image ?>" alt="" />
</div> </div>
<div class="col-6">
<?cs /if ?>
<h1 itemprop="name" style="margin-bottom:0;"><?cs var:page.title ?></h1>
<p itemprop="description"><?cs var:page.landing.intro ?></p>
<?cs if:!fullscreen && (design||training||walkthru) && !page.landing && !page.trainingcourse && !footer.hide ?> <p><a class="next-page-link topic-start-link"></a></p><?cs
if:page.landing.image ?>
</div>
</div><?cs
/if ?>
</div><?cs
/if ?><?cs
/if ?>
<?cs call:tag_list(root.descr) ?><?cs
if:!devsite ?>
</div><!-- end jd-descr --><?cs
/if ?><?cs
if:!fullscreen && (design||training||walkthru) && !page.landing && !page.trainingcourse
&& !footer.hide && !devsite?>
<div class="content-footer <?cs <div class="content-footer <?cs
if:fullpage ?>wrap<?cs /if ?>" if:fullpage ?>wrap<?cs /if ?>"
itemscope itemtype="http://schema.org/SiteNavigationElement"> itemscope itemtype="http://schema.org/SiteNavigationElement">
<div class="paging-links"> <div class="paging-links">
<a href="#" class="prev-page-link hide"
zh-tw-lang="上一堂課"
zh-cn-lang="上一课"
ru-lang="Предыдущий"
ko-lang="이전"
ja-lang="前へ"
es-lang="Anterior"
><span class="page-link-caption">Previous</span>
</a>
<a href="#" class="next-page-link hide" <a href="#" class="next-page-link hide"
zh-tw-lang="下一堂課" zh-tw-lang="下一堂課"
zh-cn-lang="下一课" zh-cn-lang="下一课"
@@ -173,7 +232,8 @@ include:"header.cs" ?>
ko-lang="다음" ko-lang="다음"
ja-lang="次へ" ja-lang="次へ"
es-lang="Siguiente" es-lang="Siguiente"
>Next</a> ><span class="page-link-caption">Next</span>
</a>
<a href="#" class="start-class-link hide" <a href="#" class="start-class-link hide"
zh-tw-lang="開始上課" zh-tw-lang="開始上課"
zh-cn-lang="开始" zh-cn-lang="开始"
@@ -182,22 +242,20 @@ include:"header.cs" ?>
ja-lang="開始する" ja-lang="開始する"
es-lang="Empezar" es-lang="Empezar"
>Get started</a> >Get started</a>
<a href="#" class="next-class-link hide">Next class</a> <a href="#" class="next-class-link hide">
<span class="page-link-caption">Next class</span>
</a>
</div> </div>
</div> </div><?cs
<?cs /if ?> /if ?><?cs
if:!devsite ?>
</div> <!-- end jd-content --> </div> <!-- end jd-content --><?cs
/if ?><?cs
if:!devsite ?>
<?cs include:"footer.cs" ?> <?cs include:"footer.cs" ?>
</div><!-- end doc-content -->
<?cs include:"trailer.cs" ?> <?cs include:"trailer.cs" ?>
<script src="https://developer.android.com/ytblogger_lists_unified.js?v=19" type="text/javascript"></script> <?cs /if ?>
<script src="<?cs var:toroot ?>jd_lists_unified.js?v=19" type="text/javascript"></script>
<script src="<?cs var:toroot ?>jd_extras.js?v=19" type="text/javascript"></script>
<script src="<?cs var:toroot ?>jd_collections.js?v=19" type="text/javascript"></script>
<script src="<?cs var:toroot ?>jd_tag_helpers.js?v=19" type="text/javascript"></script>
</body> </body>
</html> </html>

View File

@@ -1,19 +1,20 @@
<?cs # page footer content ?>
<div class="wrap"> <div class="wrap">
<div class="dac-footer<?cs if:fullpage ?> dac-landing<?cs /if ?>"> <div class="dac-footer<?cs if:fullpage ?> dac-landing<?cs /if ?>">
<div class="cols dac-footer-main"> <div class="cols dac-footer-main">
<div class="col-1of2"> <div class="col-1of2">
<a class="dac-footer-getnews" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span <a class="dac-footer-getnews" id="newsletter" data-modal-toggle="newsletter" href="javascript:;">Get news &amp; tips <span
class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a> class="dac-fab dac-primary"><i class="dac-sprite dac-mail"></i></span></a>
</div> </div>
<div class="col-1of2 dac-footer-reachout"> <div class="col-1of2 dac-footer-reachout">
<div class="dac-footer-contact"> <div class="dac-footer-contact">
<a class="dac-footer-contact-link" href="//android-developers.blogspot.com/">Blog</a> <a class="dac-footer-contact-link" href="http://android-developers.blogspot.com/">Blog</a>
<a class="dac-footer-contact-link" href="/support.html">Support</a> <a class="dac-footer-contact-link" href="/support.html">Support</a>
</div> </div>
<div class="dac-footer-social"> <div class="dac-footer-social">
<a class="dac-fab dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a> <a class="dac-button-social dac-youtube dac-footer-social-link" href="https://www.youtube.com/user/androiddevelopers"><i class="dac-sprite dac-youtube"></i></a>
<a class="dac-fab dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a> <a class="dac-button-social dac-gplus dac-footer-social-link" href="https://plus.google.com/+AndroidDevelopers"><i class="dac-sprite dac-gplus"></i></a>
<a class="dac-fab dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a> <a class="dac-button-social dac-twitter dac-footer-social-link" href="https://twitter.com/AndroidDev"><i class="dac-sprite dac-twitter"></i></a>
</div> </div>
</div> </div>
</div> </div>
@@ -34,7 +35,7 @@
<?cs /if ?> <?cs /if ?>
<p class="dac-footer-links"> <p class="dac-footer-links">
<a href="/about/index.html">About Android</a> <a href="/about/android.html">About Android</a>
<a href="/auto/index.html">Auto</a> <a href="/auto/index.html">Auto</a>
<a href="/tv/index.html">TV</a> <a href="/tv/index.html">TV</a>
<a href="/wear/index.html">Wear</a> <a href="/wear/index.html">Wear</a>
@@ -56,48 +57,54 @@
</span> </span>
</p> </p>
</div> </div>
</div> <!-- end footer --> </div>
<!-- end footer -->
<?cs call:toast() ?>
<div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter"> <div data-modal="newsletter" data-newsletter data-swap class="dac-modal newsletter">
<div class="dac-modal-container"> <div class="dac-modal-container">
<div class="dac-modal-window"> <div class="dac-modal-window">
<header class="dac-modal-header"> <header class="dac-modal-header">
<button class="dac-modal-header-close" data-modal-toggle><i class="dac-sprite dac-close"></i></button> <div class="dac-modal-header-actions">
<button class="dac-modal-header-close" data-modal-toggle></button>
</div>
<div class="dac-swap" data-swap-container> <div class="dac-swap" data-swap-container>
<section class="dac-swap-section dac-active dac-down"> <section class="dac-swap-section dac-active dac-down">
<h2 class="norule dac-modal-header-title">Get the latest Android developer news and tips that will help you find success on Google Play.</h2> <h2 class="norule dac-modal-header-title" data-t="newsletter.title"></h2>
<p class="dac-modal-header-subtitle">&#42; Required Fields</p> <p class="dac-modal-header-subtitle" data-t="newsletter.requiredHint"></p>
</section> </section>
<section class="dac-swap-section dac-up"> <section class="dac-swap-section dac-up">
<h2 class="norule dac-modal-header-title">Hooray!</h2> <h2 class="norule dac-modal-header-title" data-t="newsletter.successTitle">Hooray!</h2>
</section> </section>
</div> </div>
</header> </header>
<div class="dac-swap" data-swap-container> <div class="dac-swap" data-swap-container>
<section class="dac-swap-section dac-active dac-left"> <section class="dac-swap-section dac-active dac-left">
<form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe"> <form action="https://docs.google.com/forms/d/1QgnkzbEJIDu9lMEea0mxqWrXUJu0oBCLD7ar23V0Yys/formResponse" class="dac-form" method="post" target="dac-newsletter-iframe">
<input type="hidden" name="entry.935454734" data-newsletter-language>
<section class="dac-modal-content"> <section class="dac-modal-content">
<fieldset class="dac-form-fieldset"> <fieldset class="dac-form-fieldset">
<div class="cols"> <div class="cols">
<div class="col-1of2 newsletter-leftCol"> <div class="col-1of2 newsletter-leftCol">
<div class="dac-form-input-group"> <div class="dac-form-input-group">
<label for="newsletter-full-name" class="dac-form-floatlabel">Full name</label> <label for="newsletter-full-name" class="dac-form-floatlabel" data-t="newsletter.name">Full name</label>
<input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required> <input type="text" class="dac-form-input" name="entry.1357890476" id="newsletter-full-name" required>
<span class="dac-form-required">*</span> <span class="dac-form-required">*</span>
</div> </div>
<div class="dac-form-input-group"> <div class="dac-form-input-group">
<label for="newsletter-email" class="dac-form-floatlabel">Email address</label> <label for="newsletter-email" class="dac-form-floatlabel" data-t="newsletter.email">Email address</label>
<input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required> <input type="email" class="dac-form-input" name="entry.472100832" id="newsletter-email" required>
<span class="dac-form-required">*</span> <span class="dac-form-required">*</span>
</div> </div>
</div> </div>
<div class="col-1of2 newsletter-rightCol"> <div class="col-1of2 newsletter-rightCol">
<div class="dac-form-input-group"> <div class="dac-form-input-group">
<label for="newsletter-company" class="dac-form-floatlabel">Company / developer name</label> <label for="newsletter-company" class="dac-form-floatlabel" data-t="newsletter.company">Company / developer name</label>
<input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company"> <input type="text" class="dac-form-input" name="entry.1664780309" id="newsletter-company">
</div> </div>
<div class="dac-form-input-group"> <div class="dac-form-input-group">
<label for="newsletter-play-store" class="dac-form-floatlabel">One of your Play Store app URLs</label> <label for="newsletter-play-store" class="dac-form-floatlabel" data-t="newsletter.appUrl">One of your Play Store app URLs</label>
<input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required> <input type="url" class="dac-form-input" name="entry.47013838" id="newsletter-play-store" required>
<span class="dac-form-required">*</span> <span class="dac-form-required">*</span>
</div> </div>
@@ -107,22 +114,22 @@
<fieldset class="dac-form-fieldset"> <fieldset class="dac-form-fieldset">
<div class="cols"> <div class="cols">
<div class="col-1of2 newsletter-leftCol"> <div class="col-1of2 newsletter-leftCol">
<legend class="dac-form-legend">Which best describes your business:<span class="dac-form-required">*</span> <legend class="dac-form-legend"><span data-t="newsletter.business.label">Which best describes your business:</span><span class="dac-form-required">*</span>
</legend> </legend>
<div class="dac-form-radio-group"> <div class="dac-form-radio-group">
<input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required> <input type="radio" value="Apps" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-app" required>
<label for="newsletter-business-type-app" class="dac-form-radio-button"></label> <label for="newsletter-business-type-app" class="dac-form-radio-button"></label>
<label for="newsletter-business-type-app" class="dac-form-label">Apps</label> <label for="newsletter-business-type-app" class="dac-form-label" data-t="newsletter.business.apps">Apps</label>
</div> </div>
<div class="dac-form-radio-group"> <div class="dac-form-radio-group">
<input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required> <input type="radio" value="Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-games" required>
<label for="newsletter-business-type-games" class="dac-form-radio-button"></label> <label for="newsletter-business-type-games" class="dac-form-radio-button"></label>
<label for="newsletter-business-type-games" class="dac-form-label">Games</label> <label for="newsletter-business-type-games" class="dac-form-label" data-t="newsletter.business.games">Games</label>
</div> </div>
<div class="dac-form-radio-group"> <div class="dac-form-radio-group">
<input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required> <input type="radio" value="Apps and Games" class="dac-form-radio" name="entry.1796324055" id="newsletter-business-type-appsgames" required>
<label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label> <label for="newsletter-business-type-appsgames" class="dac-form-radio-button"></label>
<label for="newsletter-business-type-appsgames" class="dac-form-label">Apps &amp; Games</label> <label for="newsletter-business-type-appsgames" class="dac-form-label" data-t="newsletter.business.both">Apps &amp; Games</label>
</div> </div>
</div> </div>
<div class="col-1of2 newsletter-rightCol newsletter-checkboxes"> <div class="col-1of2 newsletter-rightCol newsletter-checkboxes">
@@ -133,7 +140,7 @@
<label for="newsletter-add" class="dac-form-checkbox-button"></label> <label for="newsletter-add" class="dac-form-checkbox-button"></label>
</div> </div>
<div class="dac-media-body"> <div class="dac-media-body">
<label for="newsletter-add" class="dac-form-label dac-form-aside">Add me to the mailing list for the monthly newsletter and occasional emails about development and Google Play opportunities.<span class="dac-form-required">*</span></label> <label for="newsletter-add" class="dac-form-label dac-form-aside"><span data-t="newsletter.confirmMailingList"></span><span class="dac-form-required">*</span></label>
</div> </div>
</div> </div>
</div> </div>
@@ -144,7 +151,7 @@
<label for="newsletter-terms" class="dac-form-checkbox-button"></label> <label for="newsletter-terms" class="dac-form-checkbox-button"></label>
</div> </div>
<div class="dac-media-body"> <div class="dac-media-body">
<label for="newsletter-terms" class="dac-form-label dac-form-aside">I acknowledge that the information provided in this form will be subject to <a href="https://www.google.com/policies/privacy/">Google's privacy policy</a>.<span class="dac-form-required">*</span></label> <label for="newsletter-terms" class="dac-form-label dac-form-aside"><span data-t="newsletter.privacyPolicy" data-t-html></span><span class="dac-form-required">*</span></label>
</div> </div>
</div> </div>
</div> </div>
@@ -163,12 +170,50 @@
</section> </section>
<section class="dac-swap-section dac-right"> <section class="dac-swap-section dac-right">
<div class="dac-modal-content"> <div class="dac-modal-content">
<p class="newsletter-success-message"> <p class="newsletter-success-message" data-t="newsletter.successDetails"></p>
You have successfully signed up for the latest Android developer news and tips.
</p>
</div> </div>
</section> </section>
</div> </div>
</div> </div>
</div> </div>
</div> <!-- end footer --> </div>
<!-- end newsletter modal -->
<!-- start reset language header modal -->
<div data-modal="langform" class="dac-modal" id="langform">
<div class="dac-modal-container">
<div class="dac-modal-window">
<header class="dac-modal-header">
<div class="dac-modal-header-actions">
<button class="dac-modal-header-close" data-modal-toggle></button>
</div>
<section class="dac-swap-section dac-active dac-down">
<h2 class="norule dac-modal-header-title"></h2>
</section>
</header>
<section class="dac-swap-section dac-active dac-left">
<section class="dac-modal-content">
<fieldset class="dac-form-fieldset">
<div class="cols">
<div class="col-2of2 langform-leftCol">
<p id="resetLangText"></p>
<p id="resetLangCta"></p>
</div>
</div>
</fieldset>
</section>
<footer class="dac-modal-footer" id="langfooter">
<div class="cols">
<div class="col-2of5">
</div>
</div>
<button class="button dac-primary dac-modal-action lang yes" data-t="newsletter.resetLangButtonYes" data-modal-toggle></button>
<button class="button dac-primary dac-modal-action lang no" data-t="newsletter.resetLangButtonNo" data-modal-toggle></button>
</a>
</footer>
</form>
</section>
</div>
</div>
</div>
<!-- end langreset modal -->

View File

@@ -1,26 +1,161 @@
<head> <head>
<?cs <title><?cs
####### If building devsite, add some meta data needed for when generating the top nav ######### ?>
<?cs
if:devsite ?><?cs if:devsite ?><?cs
if:guide||develop||training||reference||tools||sdk||google||samples if:page.title ?><?cs
?><meta name="top_category" value="develop" /><?cs var:html_strip(page.title) ?><?cs
elif:google else ?>Android Developers<?cs
?><meta name="top_category" value="google" /><?cs /if ?><?cs
elif:reference && !(reference.gms || reference.gcm) else ?><?cs
?><meta name="top_category" value="css-fullscreen" /><?cs if:page.title ?><?cs
var:page.title ?> | <?cs
/if ?>Android Developers
<?cs /if ?><?cs
# END if/else devsite ?></title><?cs
####### If building devsite, add some meta data needed for when generating the top nav ######### ?><?cs
if:devsite ?>
<meta name="top_category" value="<?cs
if:ndk ?>ndk<?cs
elif:(guide||develop||training||reference||tools||sdk||google||reference.gms||reference.gcm||samples) ?>develop<?cs
elif:(topic||libraries||instantapps||perf||arc) ?>develop<?cs
elif:(distribute||googleplay||essentials||users||engage||monetize||disttools||stories||analyze) ?>distribute<?cs
elif:(design||vision||material||patterns||devices||designdownloads) ?>design<?cs
elif:(about||versions||wear||tv||auto) ?>about<?cs
elif:wearpreview ?>about<?cs
elif:work ?>about<?cs
elif:preview ?>preview<?cs
else ?>none<?cs
/if ?>" /><?cs set:dac_subcategory_set = #1 ?>
<meta name="subcategory" value="<?cs
if:ndk ?><?cs
if:guide ?>guide<?cs
elif:samples ?>samples<?cs
if:(samplesDocPage&&!samplesProjectIndex) ?> samples-docpage<?cs /if ?><?cs
elif:reference ?>reference<?cs
elif:downloads ?>downloads<?cs
else ?>none<?cs set:dac_subcategory_set = #0 ?><?cs /if ?><?cs
else ?><?cs
if:(guide||develop||training||reference||tools||sdk||samples) ?><?cs
if:guide ?>guide<?cs
elif:training ?><?cs
if:page.trainingcourse ?>trainingcourse<?cs
else ?>training<?cs /if ?><?cs
elif:reference ?>reference<?cs
elif:samples ?>samples<?cs
if:(samplesDocPage&&!samplesProjectIndex) ?> samples-docpage<?cs /if ?><?cs
else ?>none<?cs set:dac_subcategory_set = #0 ?><?cs /if ?><?cs
elif:(google||reference.gms||reference.gcm) ?>google<?cs
elif:(topic||libraries||perf||arc) ?><?cs
if:libraries ?>libraries<?cs
elif:instantapps ?>instantapps<?cs
elif:perf ?>perf<?cs
elif:arc ?>arc<?cs
else ?>none<?cs set:dac_subcategory_set = #0 ?><?cs /if ?><?cs
elif:(distribute||googleplay||essentials||users||engage||monetize||disttools||stories||analyze) ?><?cs
if:googleplay ?>googleplay<?cs
elif:essentials ?>essentials<?cs
elif:users ?>users<?cs
elif:engage ?>engage<?cs
elif:monetize ?>monetize<?cs
elif:disttools ?>disttools<?cs
elif:stories ?>stories<?cs
elif:analyze ?>analyze<?cs
else ?>none<?cs set:dac_subcategory_set = #0 ?><?cs /if ?><?cs
elif:(about||versions||wear||tv||auto) ?>about<?cs
elif:preview ?>preview<?cs
elif:wearpreview ?>wear<?cs
elif:work ?>work<?cs
elif:design ?>design<?cs
elif:walkthru ?>walkthru<?cs
else ?>none<?cs set:dac_subcategory_set = #0 ?><?cs /if ?><?cs
/if ?>" /><?cs
if:nonavpage ?>
<meta name="hide_toc" value='True' /><?cs
elif: !nonavpage && dac_subcategory_set && !tools && !sdk ?>
<meta name="book_path" value="<?cs
if:ndk ?>/ndk<?cs
if:guide ?>/guides<?cs
elif:samples ?>/samples<?cs
elif:reference ?>/reference<?cs
elif:downloads ?>/downloads<?cs /if ?><?cs
else ?><?cs
if:(guide||develop||training||reference||tools||sdk||samples) ?><?cs
if:guide ?>/guide<?cs
elif:training ?>/training<?cs
elif:reference ?>/reference<?cs
elif:samples ?>/samples<?cs /if ?><?cs
elif:(google||reference.gms||reference.gcm) ?>/google<?cs
elif:(topic||libraries||perf) ?>/topic<?cs
if:libraries ?>/libraries<?cs
elif:instantapps ?>/instant-apps<?cs
elif:perf ?>/performance<?cs
elif:arc ?>/arc<?cs /if ?><?cs
elif:(distribute||googleplay||essentials||users||engage||monetize||disttools||stories||analyze) ?>/distribute<?cs
if:googleplay ?>/googleplay<?cs
elif:essentials ?>/essentials<?cs
elif:users ?>/users<?cs
elif:engage ?>/engage<?cs
elif:monetize ?>/monetize<?cs
elif:disttools ?>/tools<?cs
elif:stories ?>/stories<?cs
elif:analyze ?>/analyze<?cs /if ?><?cs
elif:(about||versions||wear||tv||auto) ?>/about<?cs
elif:preview ?>/preview<?cs
elif:wearpreview ?>/wear/preview<?cs
elif:work ?>/work<?cs
elif:design ?>/design<?cs
elif:reference.testSupport ?>/reference/android/support/test<?cs
elif:reference.wearableSupport ?>/reference/android/support/wearable<?cs
elif:walkthru ?>/walkthru<?cs /if ?><?cs
/if ?>/_book.yaml" /><?cs
/if ?> /if ?>
<?cs <meta name="project_path" value="<?cs
/if if:(guide||develop||training||reference||tools||sdk||samples) ?><?cs
?><?cs if:guide ?>/guide<?cs
# END if/else devsite ?> elif:training ?>/training<?cs
elif:reference ?>/reference<?cs
elif:samples ?>/samples<?cs /if ?><?cs
elif:(google||reference.gms||reference.gcm) ?>/google<?cs
elif:(topic||libraries) ?>/develop<?cs
elif:(distribute||googleplay||essentials||users||engage||monetize||disttools||stories||analyze) ?>/distribute<?cs
if:googleplay ?>/googleplay<?cs
elif:essentials ?>/essentials<?cs
elif:users ?>/users<?cs
elif:engage ?>/engage<?cs
elif:monetize ?>/monetize<?cs
elif:disttools ?>/tools<?cs
elif:stories ?>/stories<?cs
elif:analyze ?>/analyze<?cs
else ?><?cs /if ?><?cs
elif:(about||versions||wear||tv||auto) ?>/about<?cs
elif:wearpreview ?>/wear<?cs
elif:work ?>/work<?cs
elif:preview ?>/preview<?cs
elif:design ?>/design<?cs /if ?>/_project.yaml" /><?cs
if:page.tags && page.tags != "" ?>
<meta name="keywords" value='<?cs var:page.tags ?>' /><?cs
/if ?><?cs
if:meta.tags && meta.tags != "" ?>
<meta name="meta_tags" value='<?cs var:meta.tags ?>' /><?cs
/if ?><?cs
if:fullpage ?>
<meta name="full_width" value="True" /><?cs
/if ?><?cs
if:page.landing ?>
<meta name="page_type" value="landing" /><?cs
/if ?><?cs
if:page.article ?>
<meta name="page_type" value="article" /><?cs
/if ?><?cs
if:page.image ?>
<meta name="image_path" value='<?cs var:page.image ?>' /><?cs
/if ?><?cs
/if ?><?cs # END if/else devsite ?><?cs
if:!devsite ?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" /> <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
<meta content="IE=edge" http-equiv="X-UA-Compatible"> <meta content="IE=edge" http-equiv="X-UA-Compatible">
<?cs
if:page.metaDescription ?>
<meta name="Description" content="<?cs var:page.metaDescription ?>"><?cs
/if ?>
<link rel="shortcut icon" type="image/x-icon" href="<?cs var:toroot ?>favicon.ico" /> <link rel="shortcut icon" type="image/x-icon" href="<?cs var:toroot ?>favicon.ico" />
<link rel="alternate" href="http://developer.android.com/<?cs var:path.canonical ?>" hreflang="en" /> <link rel="alternate" href="http://developer.android.com/<?cs var:path.canonical ?>" hreflang="en" />
<link rel="alternate" href="http://developer.android.com/intl/es/<?cs var:path.canonical ?>" hreflang="es" /> <link rel="alternate" href="http://developer.android.com/intl/es/<?cs var:path.canonical ?>" hreflang="es" />
@@ -32,42 +167,32 @@
<link rel="alternate" href="http://developer.android.com/intl/vi/<?cs var:path.canonical ?>" hreflang="vi" /> <link rel="alternate" href="http://developer.android.com/intl/vi/<?cs var:path.canonical ?>" hreflang="vi" />
<link rel="alternate" href="http://developer.android.com/intl/zh-cn/<?cs var:path.canonical ?>" hreflang="zh-cn" /> <link rel="alternate" href="http://developer.android.com/intl/zh-cn/<?cs var:path.canonical ?>" hreflang="zh-cn" />
<link rel="alternate" href="http://developer.android.com/intl/zh-tw/<?cs var:path.canonical ?>" hreflang="zh-tw" /> <link rel="alternate" href="http://developer.android.com/intl/zh-tw/<?cs var:path.canonical ?>" hreflang="zh-tw" />
<?cs /if ?><?cs
# END if/else !devsite ?><?cs
<title><?cs if:page.metaDescription ?>
if:page.title ?><?cs <meta name="description" content="<?cs var:page.metaDescription ?>"><?cs
var:page.title ?> | <?cs /if ?><?cs
/if ?>Android Developers</title> if:!devsite ?>
<!-- STYLESHEETS --> <!-- STYLESHEETS -->
<link rel="stylesheet" <link rel="stylesheet"
href="<?cs href="<?cs
if:android.whichdoc != 'online' ?>https:<?cs if:android.whichdoc != 'online' ?>http:<?cs
/if ?>//fonts.googleapis.com/css?family=Roboto+Condensed"> /if ?>//fonts.googleapis.com/css?family=Roboto+Condensed">
<link rel="stylesheet" href="<?cs <link rel="stylesheet" href="<?cs
if:android.whichdoc != 'online' ?>https:<?cs if:android.whichdoc != 'online' ?>http:<?cs
/if ?>//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" /if ?>//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
title="roboto"> title="roboto">
<?cs <?cs
if:ndk ?><link rel="stylesheet" href="<?cs if:ndk ?><link rel="stylesheet" href="<?cs
if:android.whichdoc != 'online' ?>https:<?cs if:android.whichdoc != 'online' ?>http:<?cs
/if ?>//fonts.googleapis.com/css?family=Roboto+Mono:400,500,700" title="roboto-mono" type="text/css"><?cs /if ?>//fonts.googleapis.com/css?family=Roboto+Mono:400,500,700" title="roboto-mono" type="text/css"><?cs
/if ?> /if ?>
<link href="<?cs var:toroot ?>assets/css/default.css?v=19" rel="stylesheet" type="text/css"> <link href="<?cs var:toroot ?>assets/css/default.css?v=16" rel="stylesheet" type="text/css">
<?cs if:reference && !(reference.gms || reference.gcm || preview) ?>
<!-- FULLSCREEN STYLESHEET -->
<link href="<?cs var:toroot ?>assets/css/fullscreen.css" rel="stylesheet" class="fullscreen"
type="text/css">
<?cs /if ?>
<!-- JAVASCRIPT --> <!-- JAVASCRIPT -->
<script src="<?cs if:android.whichdoc != 'online' ?>https:<?cs /if ?>//www.google.com/jsapi" type="text/javascript"></script> <script src="<?cs if:android.whichdoc != 'online' ?>http:<?cs /if ?>//www.google.com/jsapi" type="text/javascript"></script>
<?cs <script src="<?cs var:toroot ?>assets/js/android_3p-bundle.js" type="text/javascript"></script><?cs
if:devsite
?><script src="<?cs var:toroot ?>_static/js/android_3p-bundle.js" type="text/javascript"></script><?cs
else
?><script src="<?cs var:toroot ?>assets/js/android_3p-bundle.js" type="text/javascript"></script><?cs
/if ?><?cs
if:page.customHeadTag ?> if:page.customHeadTag ?>
<?cs var:page.customHeadTag ?><?cs <?cs var:page.customHeadTag ?><?cs
/if ?> /if ?>
@@ -77,14 +202,7 @@ else
var devsite = <?cs if:devsite ?>true<?cs else ?>false<?cs /if ?>; var devsite = <?cs if:devsite ?>true<?cs else ?>false<?cs /if ?>;
var useUpdatedTemplates = <?cs if:useUpdatedTemplates ?>true<?cs else ?>false<?cs /if ?>; var useUpdatedTemplates = <?cs if:useUpdatedTemplates ?>true<?cs else ?>false<?cs /if ?>;
</script> </script>
<script src="<?cs var:toroot ?>assets/js/docs.js?v=19" type="text/javascript"></script> <script src="<?cs var:toroot ?>assets/js/docs.js?v=17" type="text/javascript"></script>
<?cs if:helpoutsWidget ?>
<script type="text/javascript" src="https://helpouts.google.com/ps/res/embed.js" defer async
data-helpouts-embed data-helpouts-vertical="programming"
data-helpouts-tags="<?cs var:page.tags ?>" data-helpouts-prefix="android"
data-helpouts-standalone="true"></script>
<?cs /if ?>
<script> <script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
@@ -96,6 +214,6 @@ else
ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'}); // New tracker); ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'}); // New tracker);
ga('send', 'pageview'); ga('send', 'pageview');
ga('universal.send', 'pageview'); // Send page view for new tracker. ga('universal.send', 'pageview'); // Send page view for new tracker.
</script> </script><?cs /if ?><?cs
# END if/else !devsite ?>
</head> </head>

View File

@@ -1,3 +1,11 @@
<?cs if:!devsite ?><?cs # leave out the global header for devsite; it is in devsite template ?>
<?cs call:custom_masthead() ?> <?cs call:custom_masthead() ?>
<?cs call:custom_left_nav() ?>
<?cs if:(fullpage) ?>
<?cs call:fullpage() ?>
<?cs else ?>
<?cs call:body_content_wrap_start() ?>
<?cs /if ?>
<?cs call:search_results() ?>
<?cs /if ?><?cs # end if/else !devsite ?>

View File

@@ -1 +1,10 @@
window.METADATA = window.METADATA || {};
METADATA['<?cs var:metadata.lang ?>'] = {};
METADATA['<?cs var:metadata.lang ?>'].about = [];
METADATA['<?cs var:metadata.lang ?>'].design = [];
METADATA['<?cs var:metadata.lang ?>'].develop = [];
METADATA['<?cs var:metadata.lang ?>'].distribute = [];
METADATA['<?cs var:metadata.lang ?>'].extras = [];
<?cs var:reference_tree ?> <?cs var:reference_tree ?>

View File

@@ -0,0 +1,8 @@
var <?cs
if:reference.testSupport ?>SUPPORT_TEST_<?cs
elif: reference.wearableSupport ?>SUPPORT_WEARABLE_<?cs
/if ?>DATA = [
<?cs each:page = docs.pages
?> { id:<?cs var: page.id ?>, label:"<?cs var:page.label ?>", link:"<?cs var:page.link ?>", type:"<?cs var:page.type ?>", deprecated:"<?cs var:page.deprecated ?>" }<?cs if:!last(page) ?>,<?cs /if ?>
<?cs /each ?>
];

View File

@@ -35,10 +35,17 @@
</table> </table>
<?cs /def ?> <?cs /def ?>
<?cs def:doc_root_override() ?><?cs <?cs
if:referenceonly # Prints a comma separated list of parameters with optional line breaks
?>https://developer.android.com/<?cs ?><?cs
else ?><?cs def:parameter_list(params, linebreaks) ?><?cs
var:toroot ?><?cs each:param = params ?><?cs
call:simple_type_link(param.type)?> <?cs
var:param.name ?><?cs
if: name(param)!=subcount(params)-1
?>, <?cs if:linebreaks
?>
<?cs /if ?><?cs
/if ?><?cs /if ?><?cs
/each ?><?cs
/def ?> /def ?>

View File

@@ -1,50 +1,25 @@
<?cs include:"doctype.cs" ?> <?cs # THIS CREATES A PACKAGE SUMMARY PAGE FROM EACH package.html FILES
# AND NAMES IT package-summary.html ?>
<?cs include:"macros.cs" ?> <?cs include:"macros.cs" ?>
<?cs include:"macros_override.cs" ?> <?cs include:"macros_override.cs" ?>
<?cs include:"doctype.cs" ?>
<html<?cs if:devsite ?> devsite<?cs /if ?>> <html<?cs if:devsite ?> devsite<?cs /if ?>>
<?cs include:"head_tag.cs" ?> <?cs include:"head_tag.cs" ?>
<?cs include:"body_tag.cs" ?>
<body class="gc-documentation <?cs if:(reference.gms || reference.gcm) ?>google<?cs /if ?>
<?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs
if:reference ?> reference<?cs
/if ?><?cs
elif:design ?>design<?cs
elif:distribute ?>distribute<?cs
/if ?>">
<div id="doc-api-level" class="<?cs var:package.since ?>" style="display:none"></div>
<a name="top"></a>
<?cs include:"header.cs" ?> <?cs include:"header.cs" ?>
<?cs include:"page_info.cs" ?>
<div class="api apilevel-<?cs var:package.since ?>" id="jd-content">
<div class="col-12" id="doc-col">
<div id="api-info-block">
<div class="api-level">
<?cs call:since_tags(package) ?>
<?cs call:federated_refs(package) ?>
</div>
</div>
<div id="jd-header">
package
<h1><?cs var:package.name ?></h1> <h1><?cs var:package.name ?></h1>
</div><!-- end header -->
<div id="naMessage"></div>
<div id="jd-content" class="api apilevel-<?cs var:package.since ?>">
<?cs if:subcount(package.descr) ?> <?cs if:subcount(package.descr) ?>
<div class="jd-descr">
<?cs call:tag_list(package.descr) ?> <?cs call:tag_list(package.descr) ?>
</div>
<?cs /if ?> <?cs /if ?>
<?cs def:class_table(label, classes) ?> <?cs def:class_table(label, classes) ?>
<?cs if:subcount(classes) ?> <?cs if:subcount(classes) ?>
<h2><?cs var:label ?></h2> <h2><?cs var:label ?></h2>
<div class="jd-sumtable">
<?cs call:class_link_table(classes) ?> <?cs call:class_link_table(classes) ?>
</div>
<?cs /if ?> <?cs /if ?>
<?cs /def ?> <?cs /def ?>
@@ -55,12 +30,35 @@
<?cs call:class_table("Exceptions", package.exceptions) ?> <?cs call:class_table("Exceptions", package.exceptions) ?>
<?cs call:class_table("Errors", package.errors) ?> <?cs call:class_table("Errors", package.errors) ?>
</div><!-- end jd-content --> </div><!-- end apilevel -->
<?cs if:devsite ?>
<div class="data-reference-resources-wrapper">
<?cs if:subcount(class.package) ?>
<ul data-reference-resources>
<?cs call:list("Annotations", class.package.annotations) ?>
<?cs call:list("Interfaces", class.package.interfaces) ?>
<?cs call:list("Classes", class.package.classes) ?>
<?cs call:list("Enums", class.package.enums) ?>
<?cs call:list("Exceptions", class.package.exceptions) ?>
<?cs call:list("Errors", class.package.errors) ?>
</ul>
<?cs elif:subcount(package) ?>
<ul data-reference-resources>
<?cs call:class_link_list("Annotations", package.annotations) ?>
<?cs call:class_link_list("Interfaces", package.interfaces) ?>
<?cs call:class_link_list("Classes", package.classes) ?>
<?cs call:class_link_list("Enums", package.enums) ?>
<?cs call:class_link_list("Exceptions", package.exceptions) ?>
<?cs call:class_link_list("Errors", package.errors) ?>
</ul>
<?cs /if ?>
</div>
<?cs /if ?>
<?cs if:!devsite ?>
<?cs include:"footer.cs" ?> <?cs include:"footer.cs" ?>
</div><!-- doc-content -->
<?cs include:"trailer.cs" ?> <?cs include:"trailer.cs" ?>
<?cs /if ?>
</body> </body>
</html> </html>

View File

@@ -1,33 +1,19 @@
<?cs include:"doctype.cs" ?> <?cs # THIS CREATES A LIST OF ALL PACKAGES AND NAMES IT packages.html ?>
<?cs include:"macros.cs" ?> <?cs include:"macros.cs" ?>
<?cs include:"doctype.cs" ?>
<html<?cs if:devsite ?> devsite<?cs /if ?>> <html<?cs if:devsite ?> devsite<?cs /if ?>>
<?cs include:"head_tag.cs" ?> <?cs include:"head_tag.cs" ?>
<body class="gc-documentation <?cs if:(reference.gms || reference.gcm) ?>google<?cs /if ?> <?cs include:"body_tag.cs" ?>
<?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs
if:reference ?> reference<?cs
/if ?><?cs
elif:design ?>design<?cs
elif:distribute ?>distribute<?cs
/if ?>">
<a name="top"></a>
<?cs include:"header.cs" ?> <?cs include:"header.cs" ?>
<div class="col-12" id="doc-col">
<div id="jd-header">
<h1><?cs var:page.title ?></h1> <h1><?cs var:page.title ?></h1>
</div> <p>These are the API packages.
See all <a href="classes.html">API classes</a>.</p>
<div id="jd-content">
<div class="jd-descr">
<p><?cs call:tag_list(root.descr) ?></p>
</div>
<?cs set:count = #1 ?> <?cs set:count = #1 ?>
<table class="jd-sumtable"> <table>
<?cs each:pkg = docs.packages ?> <?cs each:pkg = docs.packages ?>
<tr class="<?cs if:count % #2 ?>alt-color<?cs /if ?> api apilevel-<?cs var:pkg.since ?>" > <tr class="api apilevel-<?cs var:pkg.since ?>" >
<td class="jd-linkcol"><?cs call:package_link(pkg) ?></td> <td class="jd-linkcol"><?cs call:package_link(pkg) ?></td>
<td class="jd-descrcol" width="100%"><?cs call:tag_list(pkg.shortDescr) ?></td> <td class="jd-descrcol" width="100%"><?cs call:tag_list(pkg.shortDescr) ?></td>
</tr> </tr>
@@ -35,12 +21,33 @@
<?cs /each ?> <?cs /each ?>
</table> </table>
</div><!-- end jd-content --> <?cs if:devsite ?>
<div class="data-reference-resources-wrapper">
<?cs if:subcount(class.package) ?>
<ul data-reference-resources>
<?cs call:list("Annotations", class.package.annotations) ?>
<?cs call:list("Interfaces", class.package.interfaces) ?>
<?cs call:list("Classes", class.package.classes) ?>
<?cs call:list("Enums", class.package.enums) ?>
<?cs call:list("Exceptions", class.package.exceptions) ?>
<?cs call:list("Errors", class.package.errors) ?>
</ul>
<?cs elif:subcount(package) ?>
<ul data-reference-resources>
<?cs call:class_link_list("Annotations", package.annotations) ?>
<?cs call:class_link_list("Interfaces", package.interfaces) ?>
<?cs call:class_link_list("Classes", package.classes) ?>
<?cs call:class_link_list("Enums", package.enums) ?>
<?cs call:class_link_list("Exceptions", package.exceptions) ?>
<?cs call:class_link_list("Errors", package.errors) ?>
</ul>
<?cs /if ?>
</div>
<?cs /if ?>
<?cs if:!devsite ?>
<?cs include:"footer.cs" ?> <?cs include:"footer.cs" ?>
</div> <!-- end doc-content -->
<?cs include:"trailer.cs" ?> <?cs include:"trailer.cs" ?>
<?cs /if ?>
</body> </body>
</html> </html>

View File

@@ -0,0 +1,109 @@
<?cs # optional, more info about the page, such as API level and links ?>
<?cs
# A modal dialog when API level is set too low for this page
?><div id="naMessage"></div>
<?cs
#
# If this is a package summary page...
#
?><?cs
if:subcount(package)
?>
<div id="api-info-block">
<div class="api-level">
<?cs call:since_tags(package) ?>
<?cs call:federated_refs(package) ?>
</div>
</div><?cs
#
# Or if this is a class page...
#
?><?cs
elif:subcount(class)
?>
<div id="api-info-block">
<div class="api-level">
<?cs call:since_tags(class) ?><?cs
if:class.deprecatedsince
?><br>Deprecated since <a href="<?cs var:toroot ?>guide/topics/manifest/uses-sdk-element.html#ApiLevels"
>API level <?cs var:class.deprecatedsince ?></a><?cs
/if ?>
<?cs call:federated_refs(class) ?>
</div>
<?cs # Set variables about whether there are inherited members; no output ?>
<?cs each:cl=class.inherited ?>
<?cs if:subcount(cl.methods) ?>
<?cs set:inhmethods = #1 ?>
<?cs /if ?>
<?cs if:subcount(cl.constants) ?>
<?cs set:inhconstants = #1 ?>
<?cs /if ?>
<?cs if:subcount(cl.fields) ?>
<?cs set:inhfields = #1 ?>
<?cs /if ?>
<?cs if:subcount(cl.attrs) ?>
<?cs set:inhattrs = #1 ?>
<?cs /if ?>
<?cs /each ?>
<div class="sum-details-links">
<?cs if:inhattrs || inhconstants || inhfields || inhmethods || (!class.subclasses.hidden &&
(subcount(class.subclasses.direct) || subcount(class.subclasses.indirect))) ?>
Summary:
<?cs if:subcount(class.inners) ?>
<a href="#nestedclasses">Nested Classes</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.attrs) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#lattrs">XML Attrs</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:inhattrs ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhattrs">Inherited XML Attrs</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.enumConstants) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#enumconstants">Enums</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.constants) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#constants">Constants</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:inhconstants ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhconstants">Inherited Constants</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.fields) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#lfields">Fields</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:inhfields ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhfields">Inherited Fields</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.ctors.public) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#pubctors">Ctors</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.ctors.protected) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#proctors">Protected Ctors</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.methods.public) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#pubmethods">Methods</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:subcount(class.methods.protected) ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#promethods">Protected Methods</a>
<?cs set:linkcount = #1 ?>
<?cs /if ?>
<?cs if:inhmethods ?>
<?cs if:linkcount ?>&#124; <?cs /if ?><a href="#inhmethods">Inherited Methods</a>
<?cs /if ?>
&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
<?cs /if ?>
</div><!-- end sum-details-links -->
</div><!-- end api-info-block --><?cs
/if ?><?cs # end of if package or class ?>

View File

@@ -5,11 +5,6 @@
<body class="gc-documentation develop samples" itemscope itemtype="http://schema.org/Article"> <body class="gc-documentation develop samples" itemscope itemtype="http://schema.org/Article">
<?cs include:"header.cs" ?> <?cs include:"header.cs" ?>
<div <?cs if:fullpage
?>class="fullpage"<?cs elif:design||tools||about||sdk||distribute
?>class="col-13" id="doc-col"<?cs else
?>class="col-12" id="doc-col"<?cs /if ?> >
<!-- start breadcrumb block --> <!-- start breadcrumb block -->
<div id="api-info-block"> <div id="api-info-block">
<div class="sum-details-links"> <div class="sum-details-links">
@@ -135,17 +130,10 @@
</div> <!-- end jd-content --> </div> <!-- end jd-content -->
<?cs if:!devsite ?>
<?cs include:"footer.cs" ?> <?cs include:"footer.cs" ?>
</div><!-- end doc-content -->
<?cs include:"trailer.cs" ?> <?cs include:"trailer.cs" ?>
<?cs /if ?>
</body> </body>
</html> </html>

View File

@@ -5,11 +5,6 @@
<body class="gc-documentation develop samples" itemscope itemtype="http://schema.org/Article"> <body class="gc-documentation develop samples" itemscope itemtype="http://schema.org/Article">
<?cs include:"header.cs" ?> <?cs include:"header.cs" ?>
<div <?cs if:fullpage
?>class="fullpage"<?cs elif:design||tools||about||sdk||distribute
?>class="col-13" id="doc-col"<?cs else
?>class="col-12" id="doc-col"<?cs /if ?> >
<!-- start breadcrumb block --> <!-- start breadcrumb block -->
<div id="api-info-block"> <div id="api-info-block">
<div class="sum-details-links"> <div class="sum-details-links">
@@ -126,7 +121,6 @@
</div> <!-- end jd-content --> </div> <!-- end jd-content -->
<?cs include:"footer.cs" ?> <?cs include:"footer.cs" ?>
</div><!-- end doc-content -->
<?cs include:"trailer.cs" ?> <?cs include:"trailer.cs" ?>

View File

@@ -1,3 +1,8 @@
var SAMPLES_NAVTREE_DATA = toc:
<?cs var:reference_tree ?> - title: About the Samples
; path: /samples/index.html
- title: What's New
path: /samples/new/index.html
<?cs var:samples_toc_tree ?>

View File

@@ -1,443 +0,0 @@
<?cs include:"doctype.cs" ?>
<?cs include:"macros.cs" ?>
<?cs include:"../../../../frameworks/base/docs/html/sdk/sdk_vars.cs" ?>
<html<?cs if:devsite ?> devsite<?cs /if ?>>
<?cs if:sdk.redirect ?>
<head>
<title>Redirecting...</title>
<meta http-equiv="refresh" content="0;url=<?cs var:toroot ?>sdk/<?cs
if:sdk.redirect.path ?><?cs var:sdk.redirect.path ?><?cs
else ?>index.html<?cs /if ?>">
</head>
<?cs else ?>
<?cs include:"head_tag.cs" ?>
<?cs /if ?>
<body class="gc-documentation
<?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs
elif:design ?>design<?cs
elif:distribute ?>distribute<?cs
/if ?>" itemscope itemtype="http://schema.org/CreativeWork">
<a name="top"></a>
<?cs include:"header.cs" ?>
<div <?cs if:fullpage
?><?cs else
?>class="col-13" id="doc-col"<?cs /if ?> >
<?cs if:sdk.redirect ?>
<div class="g-unit">
<div id="jd-content">
<p>Redirecting to
<a href="<?cs var:toroot ?>sdk/<?cs
if:sdk.redirect.path ?><?cs var:sdk.redirect.path ?><?cs
else ?>index.html<?cs /if ?>"><?cs
if:sdk.redirect.path ?><?cs var:sdk.redirect.path ?><?cs
else ?>Download the SDK<?cs /if ?>
</a> ...</p>
<?cs else ?>
<?cs # else, if NOT redirect ...
#
#
# The following is for SDK/NDK pages
#
#
?>
<?cs if:header.hide ?><?cs else ?>
<h1 itemprop="name"><?cs var:page.title ?></h1>
<?cs /if ?>
<div id="jd-content" itemprop="description">
<?cs if:sdk.not_latest_version ?>
<div class="special">
<p><strong>This is NOT the current Android SDK release.</strong></p>
<p><a href="/sdk/index.html">Download the current Android SDK</a></p>
</div>
<?cs /if ?>
<?cs if:ndk ?>
<?cs #
#
#
#
#
#
#
# the following is for the NDK
#
# (nested in if/else redirect)
#
#
#
#
?>
<table class="download" id="download-table">
<tr>
<th>Platform</th>
<th>Package</th>
<th style="white-space:nowrap">Size (Bytes)</th>
<th>SHA1 Checksum</th>
</tr>
<tr>
<td>Windows 32-bit</td>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.win32_download ?>"><?cs var:ndk.win32_download ?></a>
</td>
<td><?cs var:ndk.win32_bytes ?></td>
<td><?cs var:ndk.win32_checksum ?></td>
</tr>
<!-- <tr>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/ndk/<?cs var:ndk.win32.legacy_download ?>"><?cs var:ndk.win32.legacy_download ?></a>
</td>
<td><?cs var:ndk.win32.legacy_bytes ?></td>
<td><?cs var:ndk.win32.legacy_checksum ?></td>
</tr> -->
<tr>
<td>Windows 64-bit</td>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.win64_download ?>"><?cs var:ndk.win64_download ?></a>
</td>
<td><?cs var:ndk.win64_bytes ?></td>
<td><?cs var:ndk.win64_checksum ?></td>
</tr>
<!-- <tr>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.win64.legacy_download ?>"><?cs var:ndk.win64.legacy_download ?></a>
</td>
<td><?cs var:ndk.win64.legacy_bytes ?></td>
<td><?cs var:ndk.win64.legacy_checksum ?></td>
</tr> -->
<!-- (this item is deprecated)
<tr>
<td>Mac OS X 32-bit</td>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.mac32_download ?>"><?cs var:ndk.mac32_download ?></a>
</td>
<td><?cs var:ndk.mac32_bytes ?></td>
<td><?cs var:ndk.mac32_checksum ?></td>
</tr> -->
<!-- (this item is deprecated)
<tr>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.mac32.legacy_download ?>"><?cs var:ndk.mac32.legacy_download ?></a>
</td>
<td><?cs var:ndk.mac32.legacy_bytes ?></td>
<td><?cs var:ndk.mac32.legacy_checksum ?></td>
</tr> -->
<td>Mac OS X 64-bit</td>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.mac64_download ?>"><?cs var:ndk.mac64_download ?></a>
</td>
<td><?cs var:ndk.mac64_bytes ?></td>
<td><?cs var:ndk.mac64_checksum ?></td>
</tr>
<!-- <tr>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.mac64.legacy_download ?>"><?cs var:ndk.mac64.legacy_download ?></a>
</td>
<td><?cs var:ndk.mac64.legacy_bytes ?></td>
<td><?cs var:ndk.mac64.legacy_checksum ?></td>
</tr> -->
<!-- <tr>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.linux32.legacy_download ?>"><?cs var:ndk.linux32.legacy_download ?></a>
</td>
<td><?cs var:ndk.linux32.legacy_bytes ?></td>
<td><?cs var:ndk.linux32.legacy_checksum ?></td>
</tr> -->
<tr>
<td>Linux 64-bit (x86)</td>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.linux64_download ?>"><?cs var:ndk.linux64_download ?></a>
</td>
<td><?cs var:ndk.linux64_bytes ?></td>
<td><?cs var:ndk.linux64_checksum ?></td>
</tr>
<!-- <tr>
<td>
<a onClick="return onDownload(this)" data-modal-toggle="ndk_tos"
href="//dl.google.com/android/repository/<?cs var:ndk.linux64.legacy_download ?>"><?cs var:ndk.linux64.legacy_download ?></a>
</td>
<td><?cs var:ndk.linux64.legacy_bytes ?></td>
<td><?cs var:ndk.linux64.legacy_checksum ?></td>
</tr> -->
</table>
<?cs ######## HERE IS THE JD DOC CONTENT ######### ?>
<?cs call:tag_list(root.descr) ?>
<?cs ######## The NDK version of the download script ######### ?>
<script>
function onDownload(link) {
$("#downloadForRealz").html("Download " + $(link).text());
$("#downloadForRealz").attr('href',$(link).attr('href'));
return false;
}
function onAgreeChecked() {
if ($("input#agree").is(":checked")) {
$("a#downloadForRealz").removeClass('disabled');
} else {
$("a#downloadForRealz").addClass('disabled');
}
}
function onDownloadForRealz(link) {
if ($("input#agree").is(':checked')) {
$("div.sdk-terms").slideUp();
$("h2#tos-header").text('Now downloading...');
$(".sdk-terms-intro").text('Your download is in progress.');
$("#sdk-terms-form").fadeOut('slow', function() {
setTimeout(function() {
// close the dialog
$('#ndk_tos').trigger('modal-close');
// reload to refresh the tos or optionally forward the user
location.reload();
}, 3000);
});
ga('send', 'event', 'SDK', 'NDK tools', $("#downloadForRealz").html());
return true;
} else {
return false;
}
}
$(window).hashchange( function(){
if (location.hash == "") {
location.reload();
}
});
</script>
<?cs else ?>
<?cs # end if NDK ...
#
#
#
#
#
#
# the following is for the SDK
#
# (nested in if/else redirect and if/else NDK)
#
#
#
#
?>
<?cs if:android.whichdoc == "online" ?>
<?cs ######## HERE IS THE JD DOC CONTENT FOR ONLINE ######### ?>
<?cs call:tag_list(root.descr) ?>
<?cs ####### TODO: Remove this whole file from processing. ######## ?>
<?cs ######## The Android Studio version of the download script ######### ?>
<script>
var os;
var bundlename;
var $toolslink;
if (navigator.appVersion.indexOf("Mobile")!=-1) {
// Do nothing for any "mobile" user agent
} else if (navigator.appVersion.indexOf("Win")!=-1) {
os = "Windows";
bundlename = '#win-bundle';
$toolslink = $('#win-tools');
} else if (navigator.appVersion.indexOf("Mac")!=-1) {
os = "Mac";
bundlename = '#mac-bundle';
$toolslink = $('#mac-tools');
} else if (navigator.appVersion.indexOf("Linux")!=-1 && navigator.appVersion.indexOf("Android")==-1) {
os = "Linux";
bundlename = '#linux-bundle';
$toolslink = $('#linux-tools');
}
if (os != undefined) {
$('#not-supported').hide();
/* set up primary Android Studio download button */
idname = bundlename + "-size";
sizeMB = $(idname).text().split(' MB')[0];
$('.download-bundle-button > .small').html(" for " + os + " <em>(" + sizeMB + " MB)</em>");
$('.download-bundle-button').click(function() {return onDownload(this,true,true);}).attr('href', bundlename);
}
function onDownload(link, button, bundle) {
/* set text for download button */
if (button) {
$("#downloadForRealz").html($(link).text());
} else {
$("#downloadForRealz").html("Download " + $(link).text());
}
$("#downloadForRealz").attr('bundle', bundle);
if (bundle && !button) {
$("a#downloadForRealz").attr("name", "#" + $(link).attr('id'));
} else {
$("h2#tos-header").text('Download the Android SDK Tools');
$("a#downloadForRealz").attr("name", $(link).attr('href'));
}
return false;
}
function onAgreeChecked() {
/* verify that the TOS is agreed */
if ($("input#agree").is(":checked")) {
/* if downloading the bundle */
if ($("#downloadForRealz").attr('bundle')) {
/* construct the name of the link we want */
linkId = $("a#downloadForRealz").attr("name");
/* set the real url for download */
$("a#downloadForRealz").attr("href", $(linkId).attr("href"));
} else {
$("a#downloadForRealz").attr("href", $("a#downloadForRealz").attr("name"));
}
/* reveal the download button */
$("a#downloadForRealz").removeClass('disabled');
} else {
$("a#downloadForRealz").addClass('disabled');
}
}
function onDownloadForRealz(link) {
if ($("input#agree").is(':checked')) {
$("div.sdk-terms").slideUp();
if ($("#downloadForRealz").attr('bundle') == 'true') {
$("h2#tos-header").text('Now downloading Android Studio!');
$(".sdk-terms-intro").text('Redirecting to the install instructions...');
$("#sdk-terms-form").slideUp(function() {
setTimeout(function() {
window.location = "/sdk/installing/index.html";
}, 2000);
});
} else {
$("h2#tos-header").text('Now downloading the Android SDK Tools!');
$(".sdk-terms-intro").html("<p>Because you've chosen to download " +
"only the Android SDK tools (and not Android Studio), there are no " +
"setup procedures to follow.</p><p>For information about how to " +
"keep your SDK tools up to date, refer to the " +
"<a href='/tools/help/sdk-manager.html'>SDK Manager</a> guide.</p>");
$("#sdk-terms-form").slideUp();
}
ga('send', 'event', 'SDK', 'IDE and Tools', $("#downloadForRealz").html());
return true;
} else {
return false;
}
}
$(window).hashchange( function(){
if (location.hash == "") {
location.reload();
}
});
</script>
<?cs # THIS DIV WAS OPENED IN INDEX.JD ?>
<?cs else ?> <?cs # end if online ?>
<?cs if:sdk.preview ?><?cs # it's preview offline docs ?>
<p>Welcome developers! We are pleased to provide you with a preview SDK for the upcoming
Android 3.0 release, to give you a head-start on developing applications for it.
</p>
<p>See the <a
href="<?cs var:toroot ?>sdk/preview/start.html">Getting Started</a> document for more information
about how to set up the preview SDK and get started.</p>
<style type="text/css">
.non-preview { display:none; }
</style>
<?cs else ?><?cs # it's normal offline docs ?>
<?cs ######## HERE IS THE JD DOC CONTENT FOR OFFLINE ######### ?>
<?cs call:tag_list(root.descr) ?>
<style type="text/css">
body .offline { display:block; }
body .online { display:none; }
</style>
<script>
$('.reqs').show();
</script>
<?cs /if ?>
<?cs /if ?> <?cs # end if/else online ?>
<?cs /if ?> <?cs # end if/else NDK ?>
<?cs /if ?> <?cs # end if/else redirect ?>
</div><!-- end jd-content -->
<?cs if:!sdk.redirect ?>
<?cs include:"footer.cs" ?>
<?cs /if ?>
</div><!-- end g-unit -->
<?cs include:"trailer.cs" ?>
<script src="https://developer.android.com/ytblogger_lists_unified.js?v=17" type="text/javascript"></script>
<script src="/jd_lists_unified.js?v=17" type="text/javascript"></script>
<script src="/jd_extras.js?v=17" type="text/javascript"></script>
<script src="/jd_collections.js?v=17" type="text/javascript"></script>
<script src="/jd_tag_helpers.js?v=17" type="text/javascript"></script>
<!-- Start of Tag -->
<script type="text/javascript">
var axel = Math.random() + "";
var a = axel * 10000000000000;
document.write('<iframe src="https://2507573.fls.doubleclick.net/activityi;src=2507573;type=other026;cat=googl348;ord=' + a + '?" width="1" height="1" frameborder="0" style="display:none"></iframe>');
</script>
<noscript>
<iframe src="https://2507573.fls.doubleclick.net/activityi;src=2507573;type=other026;cat=googl348;ord=1?" width="1" height="1" frameborder="0" style="display:none"></iframe>
</noscript>
<!-- End of Tag -->
</body>
</html>

View File

@@ -1,4 +1,7 @@
</div> <!-- end .cols --> <?cs # normally opened by header.cs ?> <?cs
# Other, non-visible things needed at the end of the page,
# because not every page needs footer content, but does need other stuff
?>
</div> <!-- end body-content --> <?cs # normally opened by header.cs ?> </div> <!-- end body-content --> <?cs # normally opened by header.cs ?>
<?cs if:carousel ?> <?cs if:carousel ?>
@@ -19,3 +22,17 @@ $(".feed").dacTabbedList({
</script> </script>
<?cs /if ?> <?cs /if ?>
<script src="https://developer.android.com/ytblogger_lists_unified.js" defer></script>
<script src="/jd_lists_unified_en.js?v=17" defer></script>
<script src="/reference/lists.js?v=17" defer></script>
<script src="/reference/gcm_lists.js?v=17" defer></script>
<script src="/reference/gms_lists.js?v=17" defer></script>
<script>
// Load localized metadata.
(function(lang) {
if (lang === 'en') { return; }
// Write it to the document so it gets evaluated before DOMContentReady.
document.write('<script src="/jd_lists_unified_' + lang + '.js?v=14" defer></' + 'script>');
})(getLangPref())
</script>

View File

@@ -0,0 +1,14 @@
<?cs
# print out the yaml nav for the reference docs, only printing the title,
path, and status_text (API level) for each package.
?>
reference:<?cs
each:page = docs.pages?><?cs
if:page.type == "package"?>
- title: <?cs var:page.label ?>
path: /<?cs var:page.link ?>
status_text: apilevel-<?cs var:page.apilevel ?><?cs
/if?><?cs
/each ?>