| Age | Commit message (Collapse) | Author |
|
Closes #5678
|
|
function where appropriate
Replace two compile functions that immediately return a post-link function with link function definitions instead.
Closes #5664
|
|
Closes #5643
|
|
Closes #5639
|
|
In order to improve readability from "Is set" (confused on my screen as 'Ls set') updated the
capitalization describing the setting of 4 CSS classes.
Closes #5642
|
|
- use only one IIFE and a ternary op in it, instead of invoking separate IIFEs in if-else
(this also completely fixed the same issue closed by PR #3597)
- also add a spec to verify usage of '$' property in expression object (e.g. `{$: 'a'}`)
Closes #5637
|
|
Closes #5633
|
|
|
|
Clarifies some confusion around $http.defaults existing and able to be modified
at run-time, for when run-time services may be needed in a transformation.
Closes #5559
Closes #5630
|
|
This will safe peoples' time, since ngRepeat's docs, not ngInit's, is the first
place where one would search for such info.
Closes #5622
|
|
|
|
its tests from failing
cspSafeGetterFn incorrectly returned undefined if any of its key parameters were undefined. This
wasn't caught by the $parse unit tests because of a timing problem where $ParseProvider was reading
the CSP flag before the tests manually set it, so the CSP property evaluation tests never ran. Add
test that verifies evaluation of nested properties of multiple lengths.
Closes #5591
Closes #5592
|
|
presubmits
|
|
|
|
fix wrong param order in doc for filter comparator
doc function param for filter expression
Closes #5365
Closes #5611
|
|
Closes #5544
|
|
|
|
IE8's native XHR doesn't support PATCH requests, but the ActiveX one does.
I'm also removing the noxhr error doc because nobody will ever get that error.
Closes #2518
Closes #5043
|
|
triggered by the browser
Fixed inconsistency in $location.path() behaviour on the $locationChangeStart event when using
back/forward buttons in the browser or manually changing the url in the address bar.
$location.path() now returns the target url in these cases.
Closes #4989
Closes #5089
Closes #5118
Closes #5580
|
|
|
|
This change prevents an incorrect appBase url from being calculated when the
<base> href's domain begins with '//'.
Closes #5606
|
|
With this change it's possible to split the ng-repeat expression into multiple
lines at any point in the expression where white-space is expected.
Closes #5537
Closes #5598
|
|
Closes #5599
|
|
loop
Closes #5525
|
|
On mobile webkit `onreadystatechange` might by called multiple times
with `readyState===4` caused by xhrs that are resolved while the app is
in the background.
Fixes #5426.
|
|
Closes #5293
|
|
If an event was performed natively, jQuery sets the isTrigger property.
When triggering event manually, the field is not present. Manually
triggered events are performed synchronously which causes the "$digest
already in progress" error.
Closes #5293
|
|
Closes #5425
|
|
for the event
Update $on and $destroy to maintain a count of event keys registered for each scope and its children.
$broadcast will not descend past a node that has a count of 0/undefined for the $broadcasted event key.
Closes #5341
Closes #5371
|
|
|
|
values to trigger animations
Closes #5357
Closes #5283
|
|
It is essential that users of `$interval` destroy the interval when they are finished.
Otherwise you can get memory leaks.
Often `$intervals` are used in directives or controllers and developers don't think
about what happens when the component is destroyed.
If a directive/controller scope is destroyed, then the $interval should be destroyed as well.
This could cause some issues with developers who assume that the interval will be cleared
for them when the scope is destroyed.
Closes #5377
I believe that the library could/should handle this as well, but thats another issue.
|
|
Closes #5374
|
|
Closes #5361
|
|
Closes #5338
|
|
It appears that this exceptional case was only valid for IE<8 and that for IE>=8 it
was actually causing a bug with the `ng-href-attr` directive on `<a>` elements.
Closes #5479
|
|
Prior to this fix, $parse/$eval would return 'null' if a middle key in
an expression's value is null, when it should be expected to be undefined.
This patch tries to remedy this by returning undefined for middle values in
expressions, when fetching a child of that null value.
For example:
```js
// Given the following object:
$scope.a = {
b: null
};
// $scope.$eval('a.b.c') returns undefined, whereas previously it would return null
```
Closes #5480
|
|
In IE8, reading `console.log.apply` throws an error.
Catching this errow now.
Fixes #5400. Fixes #5147.
|
|
Before this fix, the xlink:href property of an SVG <a> element could not be parsed
on click, as the property is an SVGAnimatedString rather than a DOMString.
This patch parses the xlink:href's animVal into a DOMString in order to prevent
an `Object #<SVGAnimatedString> has no method 'indexOf'` exception from being thrown,
and also to update the location if necessary as expected.
Closes #5472
Closes #5198
Closes #5199
Closes #4098
Closes #1420
|
|
Use a faster path when the number of path tokens is low (ie the common case).
This results in a better than 19x improvement in the time spent in $parse and
produces output that is about the same speed in chrome and substantially faster
in firefox.
http://jsperf.com/angularjs-parse-getter/6
Closes #5359
|
|
Add class ng-scope to dom nodes during directive compile rather than link.
Optimize handling of nodeLists.
This results in a savings of about 130ms during the startup of a product within Google.
Closes #5471
|
|
Closes #5343
|
|
Closes #5310
|
|
Workaround for chrome for android until #2129 is ready.
Closes #5308, #5323
|
|
|
|
End 2 end tests wait for all `$timeout`s to be run before completing the test.
This was problematic where we were using timeouts that restarted themselves because
there would never be a point when all timeouts had completed, causing the tests to hang.
To fix this $timeout had been monkey-patched but this caused other issue itself.
Now that we have $interval we don't need to use $timeout handlers that re-trigger the $timeout
so we can ditch the monkey-patch.
This commit tidies up any examples that are using this approach and changes them to use $interval
instead.
Closes #5232
|
|
When `multiple` attribute is set on a `<select>` control and the model value is an empty array,
we should invalidate the control. Previously, this directive was using incorrect logic for
determining if the model was empty.
Closes #5337
|
|
We cannot use valid /* ... */ CSS comments in examples because they break the parsing
of the ngdoc comments. We can't use inline // comments because these are not valid in
CSS.
We could use the //!annotate extension to the ngdoc parser but this does not seem to be
working. It is best to simply remove this line.
Closes #5234
|
|
allow and pass through new line characters when checking passed in expression
Closes #5000
|
|
jQuery's elem.html('') is way slower than elem.empty(). As clearing
element contents happens quite often in certain scenarios, switching
to using .empty() provides a significant performance boost when using
Angular with jQuery.
Closes #4457
|