summaryrefslogtreecommitdiffstats
path: root/testapi/3rd_party/static/testapi-ui/assets/lib/angular-ui-router/src/viewScroll.js
diff options
context:
space:
mode:
authorMorgan Richomme <morgan.richomme@orange.com>2017-05-12 06:26:03 +0000
committerGerrit Code Review <gerrit@opnfv.org>2017-05-12 06:26:03 +0000
commit909be5b53a6141f84480dc29eb5dbfffe5c35fad (patch)
treef48c1a1e98dffcbe393a428f06e02fceaf937875 /testapi/3rd_party/static/testapi-ui/assets/lib/angular-ui-router/src/viewScroll.js
parent9437526b739c41c0a1fc25396677d2f134d4ce80 (diff)
parent55d74f86440a5a804d4551e04f7fd39518af0723 (diff)
Merge "add web portal framework for TestAPI"
Diffstat (limited to 'testapi/3rd_party/static/testapi-ui/assets/lib/angular-ui-router/src/viewScroll.js')
-rw-r--r--testapi/3rd_party/static/testapi-ui/assets/lib/angular-ui-router/src/viewScroll.js52
1 files changed, 52 insertions, 0 deletions
diff --git a/testapi/3rd_party/static/testapi-ui/assets/lib/angular-ui-router/src/viewScroll.js b/testapi/3rd_party/static/testapi-ui/assets/lib/angular-ui-router/src/viewScroll.js
new file mode 100644
index 0000000..dfe0a03
--- /dev/null
+++ b/testapi/3rd_party/static/testapi-ui/assets/lib/angular-ui-router/src/viewScroll.js
@@ -0,0 +1,52 @@
+/**
+ * @ngdoc object
+ * @name ui.router.state.$uiViewScrollProvider
+ *
+ * @description
+ * Provider that returns the {@link ui.router.state.$uiViewScroll} service function.
+ */
+function $ViewScrollProvider() {
+
+ var useAnchorScroll = false;
+
+ /**
+ * @ngdoc function
+ * @name ui.router.state.$uiViewScrollProvider#useAnchorScroll
+ * @methodOf ui.router.state.$uiViewScrollProvider
+ *
+ * @description
+ * Reverts back to using the core [`$anchorScroll`](http://docs.angularjs.org/api/ng.$anchorScroll) service for
+ * scrolling based on the url anchor.
+ */
+ this.useAnchorScroll = function () {
+ useAnchorScroll = true;
+ };
+
+ /**
+ * @ngdoc object
+ * @name ui.router.state.$uiViewScroll
+ *
+ * @requires $anchorScroll
+ * @requires $timeout
+ *
+ * @description
+ * When called with a jqLite element, it scrolls the element into view (after a
+ * `$timeout` so the DOM has time to refresh).
+ *
+ * If you prefer to rely on `$anchorScroll` to scroll the view to the anchor,
+ * this can be enabled by calling {@link ui.router.state.$uiViewScrollProvider#methods_useAnchorScroll `$uiViewScrollProvider.useAnchorScroll()`}.
+ */
+ this.$get = ['$anchorScroll', '$timeout', function ($anchorScroll, $timeout) {
+ if (useAnchorScroll) {
+ return $anchorScroll;
+ }
+
+ return function ($element) {
+ $timeout(function () {
+ $element[0].scrollIntoView();
+ }, 0, false);
+ };
+ }];
+}
+
+angular.module('ui.router.state').provider('$uiViewScroll', $ViewScrollProvider);