From 9a818f55f4a4ca4f88c2a29f8e77ea6cb2153de6 Mon Sep 17 00:00:00 2001 From: "smain@google.com" Date: Fri, 3 Oct 2014 09:25:59 -0700 Subject: [PATCH] more fixes to scroll offset for the sticky header. This offsets the layout position of all tags so they naturally show up below the sticky nav bar... though this is only for API reference, which uses tags as anchors for all API members. bug: 16924057 Change-Id: I88c1e8192f1cbb5373af592b9e9f9a04ffe6fc7c --- tools/droiddoc/templates-sdk/assets/css/default.css | 8 ++++++++ tools/droiddoc/templates-sdk/assets/js/docs.js | 11 ++++------- tools/droiddoc/templates-sdk/class.cs | 2 ++ tools/droiddoc/templates-sdk/classes.cs | 2 ++ tools/droiddoc/templates-sdk/package.cs | 2 ++ tools/droiddoc/templates-sdk/packages.cs | 2 ++ 6 files changed, 20 insertions(+), 7 deletions(-) diff --git a/tools/droiddoc/templates-sdk/assets/css/default.css b/tools/droiddoc/templates-sdk/assets/css/default.css index 8c866c110..dc6166a3a 100644 --- a/tools/droiddoc/templates-sdk/assets/css/default.css +++ b/tools/droiddoc/templates-sdk/assets/css/default.css @@ -4206,6 +4206,14 @@ EndColorStr='#ececec'); z-index: 52; } +/* offset the tags in reference to account for sticky nav */ +body.reference a[name] { + visibility: hidden; + display: block; + position: relative; + top: -56px; +} + } diff --git a/tools/droiddoc/templates-sdk/assets/js/docs.js b/tools/droiddoc/templates-sdk/assets/js/docs.js index f03fb888f..5e548c853 100644 --- a/tools/droiddoc/templates-sdk/assets/js/docs.js +++ b/tools/droiddoc/templates-sdk/assets/js/docs.js @@ -2535,16 +2535,13 @@ google.setOnLoadCallback(function(){ } }, true); -/* Adjust the scroll position to account for sticky header, only if the hash matches an id */ +/* Adjust the scroll position to account for sticky header, only if the hash matches an id. + This does not handle tags. Some CSS fixes those, but only for reference docs. */ function offsetScrollForSticky() { var hash = escape(location.hash.substr(1)); var $matchingElement = $("#"+hash); - // If there's no element with the hash as an ID, then look for an with it. - if ($matchingElement.length < 1) { - $matchingElement = $('a[name="' + hash + '"]'); - } - // Sanity check that there's an element with that ID on the page - if ($matchingElement.length) { + // Sanity check that hash is a real hash and that there's an element with that ID on the page + if ((hash.indexOf("#") == 0) && $matchingElement.length) { // If the position of the target element is near the top of the page (<20px, where we expect it // to be because we need to move it down 60px to become in view), then move it down 60px if (Math.abs($matchingElement.offset().top - $(window).scrollTop()) < 20) { diff --git a/tools/droiddoc/templates-sdk/class.cs b/tools/droiddoc/templates-sdk/class.cs index 0461af629..b6ec19fb9 100644 --- a/tools/droiddoc/templates-sdk/class.cs +++ b/tools/droiddoc/templates-sdk/class.cs @@ -4,6 +4,8 @@ diff --git a/tools/droiddoc/templates-sdk/classes.cs b/tools/droiddoc/templates-sdk/classes.cs index 6769f473f..06592d4b3 100644 --- a/tools/droiddoc/templates-sdk/classes.cs +++ b/tools/droiddoc/templates-sdk/classes.cs @@ -4,6 +4,8 @@ diff --git a/tools/droiddoc/templates-sdk/package.cs b/tools/droiddoc/templates-sdk/package.cs index 99eaff228..445e606c3 100644 --- a/tools/droiddoc/templates-sdk/package.cs +++ b/tools/droiddoc/templates-sdk/package.cs @@ -5,6 +5,8 @@ diff --git a/tools/droiddoc/templates-sdk/packages.cs b/tools/droiddoc/templates-sdk/packages.cs index 44680c30a..5056d3a5d 100644 --- a/tools/droiddoc/templates-sdk/packages.cs +++ b/tools/droiddoc/templates-sdk/packages.cs @@ -4,6 +4,8 @@