| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
Along the way I also changed the repeater impl to use for loop instead
of for in loop.
Iteration over objects is handled by creating an array of keys, which is
sorted and this array then determines the order of iteration over an
element. This makes repeating over objects deterministic and
cross-browser compatible.
|
|
A lot of badness happens when we don't ignore stale xhrs. These
raceconditions are only apparent when user clicks through the app very
quckly without waiting for routes to fully load.
Closes #619
|
|
|
|
|
|
it's not useful any more and it only makes the docs look ugly
|
|
|
|
|
|
|
|
- Configure our docs app to use new $location with html5 history api!
- Update simple node web server to serve index.html for all links
(rewritting).
- Update .htaccess file to serve index.html for all links (rewritting).
- At runtime determine the base href path and attach it to the DOM. We
needed the absolute URL to get all browsers to work well.
- Because of the above, we also need to dynamically determine all needed
js/css resources and add them to the DOM. This was needed because FF6
would eagerly fetch resources with wrong URL since the base element is
added to the dom at runtime.
- All content html files were moved to the partials directory, because
with the new html5 urls it was impossible to tell if request for
http://domain/api/angular.filter.html was an html5 url for the html
filter doc page, or an xhr/appcache request for the content html file
for the html filter.
f
|
|
Because of changes in jQuery, we need to use element().prop() instead of element().attr() to retrieve className and other element properties.
Additionally all attribute selectors (e.g. input[name=value]) must have value quoted if it contains dots (".").
|
|
Contains 3 fixes:
- the internal model was by mistake using "checked" property instead of
"selected"
- use jqLite.prop() to set 'selected' property
- added inChangeEvent check - we should not interfere with the browser
selecting elements when not necessary
|
|
|
|
Closes #547
|
|
BREAKING CHANGE
* removing `onChange`
FEATURE
* adding three events: $beforeRouteChange, $afterRouteChange, $routeReload
|
|
|
|
Change doc_widget.js to:
- render "edit in jsfiddle" button next to all examples
- make opt out certain examples by adding jsfiddle="false" attribute to
doc:source element
|
|
we commonly assign stuff in if statments like this:
if (variable = someFn()) {
//do something with variable
}
This results in lint and IDE warnings (did you mean ==?).
It is better to be explicit about our intention and wrap the assignement
into parens:
if ((variable = someFn())) {
//do something with variable
}
Doing so suppresses warnings + is easier to understand the intention.
I verified that the closure compiler strips the extra parens, so there
is no byte overhead for this safety practice.
We should use this style going forward...
|
|
|
|
|
|
windgets
These widgets are useless and only trigger extra $updateViews.
The only reason we had them was to support ng:change on these widgets,
but since there are no bindings present in these cases it doesn't make
sense to support ng:change here. It's likely just a leftover from
getangular.com
Breaking change: ng:change for input[button], input[submit], input[reset], input[image]
and button widgets is not supported any more
|
|
- Speed improvements (about 4x on flush phase)
- Memory improvements (uses no function closures)
- Break $eval into $apply, $dispatch, $flush
- Introduced $watch and $observe
Breaks angular.equals() use === instead of ==
Breaks angular.scope() does not take parent as first argument
Breaks scope.$watch() takes scope as first argument
Breaks scope.$set(), scope.$get are removed
Breaks scope.$config is removed
Breaks $route.onChange callback has not "this" bounded
|
|
Minor documentation fixes. Should not be any code changes.
One test changed due to dependency on text in documentation.
|
|
|
|
Closes# 450
|
|
Closes #463
|
|
Closes #448
|
|
Closes #464
|
|
Closes #449
|
|
|
|
the flag must be in all src and test files so that we get the benefit of
running in the strict mode even in jstd
the following script was used to modify all files:
for file in `find src test -name "*.js"`; do
echo -e "'use strict';\n" > temp.txt
cat $file >> temp.txt
mv temp.txt $file
done
|
|
|
|
Rewrite $route example a bit, as it required $location and $route services
to be eager published in the root scope.
Fix small typos in formatter and ng:options docs.
|
|
|
|
|
|
|
|
|
|
Closes #301
|
|
|
|
The reason was recent change in docs url
|
|
|
|
|
|
|
|
ng:href was producing unclickable links, as the event propagation was stopped by 'a' widget
All links in regression/issue-352.html were tested in:
* Chrome 11
* Opera 11
* Firefox 4
* IE7, IE8
Closes #352
|
|
find . -name "*.js" -print | xargs sed -Ei s/[[:space:]]*$//
|
|
This is a combination of 4 commits:
* Fix some small typos, missing semi-colons, etc.
* Fix comment for angular.scenario.SpecRunner.run method
* Fixed some missing semi-colons in cookbook
* Fixed missing semi-colon in nodeserver/server.js
|
|
|
|
sync caching in ng:view must be reverted becase ng:view uses
$route.onChange to listen for changes.
$route fires all onChange events before it calls $become(Controller)
which means that if the template being included via ng:view contains
ng:controller, ng:include or other widget that create new scopes,
these scopes will be created and initialized before the parent scope
is fully initialized (happens after $become is called).
For this reason ng:view must be async.
The new scope implemenetation will resolve this issue by providing
us with an api to register one-off tasks to be executed during the
flush phase. We'll be able to compile and link the included template
safely at this time.
|