Due to the recent changes ragarding the Docs app "Materialization", some
tests where failing for the following reasons:
1. JQuery wasn't being copied to 'build/docs/components/'.
2. E2E examples 89 and 90 were relying on the Bootstrap's glyphicons.
Temporarily replaced with FontAwesome icons; to be replaced with
Material Design iconfont, when ready.
3. `ngMaterial` (and its various dependencies) weren't loaded by Karma
during unit testing (causing modules depending on it to fail). Added a
fake `ngMaterial` module (as a temporary solution).
Since the structure was a little different than the prototype,
classes/styles where not applied correctly to the links in the left
sidenav. This commit fixes the issue.
I also added FontAwesome, in order to be able to display icons until the
Material Design icon-font is released. Since this is a temporary meassure,
I didn't added as a bower dependency; just added a `font-awesome` folder
in assets and added `font-awesome/css/font-awesome.css` to the stylesheets
of each deployment (under `docs/config/services/deployments/`.
I incorporated the prototype detailed in https://github.com/gkalpak/angular.js/issues/3.
Things that are different from the prototype (besides using actual data):
* The left sidenav (toc) is not styled properly (or even readably).
* The subheaders in the left sidenav are not "stickying" properly (only `ng` becomes sticky).
* Icons are missing (since we are not using FontAwesome). E.g. search-fab, toc-toggle, results
* In the right sidenav (search) there are some unwanted horizontal scrollbars.
(This section probably needs rethinking anyway.)
* I have implemented a `responsiveMenu` directive to show the options in the header-menus
(Learn/Develop/Discuss). The purpose is to show the options in a "dropdown-ish" menu on larger
screens and using a BottomSheet on smaller. At the moment a BottomSheet is used on every
screen-size.
Notes:
- Still no version-picker and breadcrumbs (I have left the original implementation of those two
commented out).
- I have replaced the previous docs.css with a new one containing the style of the prototype.
I have renamed the old one to `docs_old.css` and left it there temporarily for quick reference.
We need to clean up this and the rest of the old CSS files.
- The main content area is totally unstyled and needs some love (a lot actually).
I have also "sprinkled" the code with a few more TODOs/FIXMEs.
(For more details on known issues and missing features take a look at
https://github.com/gkalpak/angular.js/issues/3)
Currently, providing '' to $location#url will only reset the hash, but otherwise has no effect. This
change brings the behaviour of $location#url more inline with window.location.href, which when
assigned to an empty string loads the page's base href.
Before:
$location.url() // http://www.example.com/path
$location.url('') // http://www.example.com/path
After:
$location.url() // http://www.example.com/path
$location.url('') // http://www.example.comFixes#10063Closes#10064
Previously, setting the maxlength to a negative number, would make all
input values invalid (since their length should be less than maxlength,
which is impossible).
This commit changes the behaviour of maxlength/ngMaxlength, effectively
disabling the maxlength validation (always returning true) when maxlength
is set to a negative number. This is more inline to how the HTML5
`maxlength` attribute works (both in browsers and according to the spec:
http://dev.w3.org/html5/spec-preview/attributes-common-to-form-controls.html#attr-fe-maxlength).
Related to #9874Closes#9995
Previously, when (automatically) redirecting from path that fetured a
trailing slash and optional or "eager" parameters, the resulting path
would (incorrectly) contain the special characters (`?`,`*`) along with
the parameter values.
Closes#9819Closes#9827
The ngAnimate makes reference to a function `$animateProvider.classNamePrefix`
that does not exist, the correct function is `$animateProvider.classNameFilter`
Closes#10142
The wordings in setDirty etc. were specific to inputs, but ngModelCtrl
is agnostic to this and the preferred term is 'control'. I also
added some more info about this to the description, and linked to
the example that now lives at the bottom of the page.
- extract existing functionality to public method: $setDirty
- add tests to corresponding changes
- refactor code to use extracted method
Closes#10038Closes#10049