* Loading indicator when the user is waiting for a trip to the server.
* Bug fixes for diff priming.
* Fix the date display.
* Forget about local comparator, instead order by `modified` on the server.
* Initialize the frame model before the view (this was the source of a LOT of heartache).
git-svn-id: https://develop.svn.wordpress.org/trunk@24667 602fd350-edb4-49c9-b593-d223f7449a82
* Real URLs are being used now, using pushState. `?revision={id}` or `?from={from}&to={to}`.
* Drop the redundant `action=edit` from the URLs (this is the default).
* The initial comparison is preloaded, whether a single revision or a compare-two situation.
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24664 602fd350-edb4-49c9-b593-d223f7449a82
Solves the issue of Prev/Next buttons not being disabled on initial load, when routing to an extremity.
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24661 602fd350-edb4-49c9-b593-d223f7449a82
The CSS3 animations caused issues because the element was still there, and there is no standard way to know when a CSS3 animation is done.
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24660 602fd350-edb4-49c9-b593-d223f7449a82
* Extracted a lot of model-y stuff from the view code.
* Slider now has a proper model, with communication with other models.
* Use of `get( foo )` instead of `findWhere({ id: foo })`.
* Properly set the `from` diff when routing single mode.
* Bind `prev()` and `next()` to their model.
* Tick marks are now percentage based, which means the slider resizes with the browser, without JS resize events.
* When scrubbing, the position of the scrubber is considered a hover, so you can fall off the timeline while still scrubbing and the tooltips will persist.
* Tooltips fade in and out.
* Tooltips hang around for a grace period instead of immediately going away. More forgiving.
* Unused code paths removed.
* Got rid of a bunch of view-to-view communication.
* Use `_.times()` instead of a `for` loop.
* Removed premature `Math.floor()` and `Math.ceil()` calls that were making things not add up to 100%.
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24658 602fd350-edb4-49c9-b593-d223f7449a82
* Fix routing handler logic (`compareTwoMode` was reversed).
* Fix routing handler typo (both should use the same handler).
* Set `compareTwoMode` to false, to start. props duck_.
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24646 602fd350-edb4-49c9-b593-d223f7449a82
* Single mode: `#at/:to`
* Compare two mode: `#from/:from/to/:to`
* Make use of `_.isUndefined()`
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24638 602fd350-edb4-49c9-b593-d223f7449a82
* Move some slider code into the slider view that was loitering in the checkmark view.
* `this.$()`, not `$()`.
* Cache a selector.
* `toggleClass()`, not `addClass()` with a ternary.
* Remove two classes with a single `removeClass()`.
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24636 602fd350-edb4-49c9-b593-d223f7449a82
* Stuff needs to hook in, so firing it early results in a half-rendered screen.
* `updateDiff()` now returns a promise.
* Now, in the frame view's `render()`, it calls `updateDiff()`, relying on its promise.
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24622 602fd350-edb4-49c9-b593-d223f7449a82
* `wp.revisions.log()` — temporary measure for logging based on `wp.revisions.debug`
* Return promises from functions that sometimes bail but normally return promises.
See #24425.
git-svn-id: https://develop.svn.wordpress.org/trunk@24613 602fd350-edb4-49c9-b593-d223f7449a82
This helps to solidify the separation between data and UI. We track the diffId internally now, as the property itself was never referenced, and was always derived from the 'from' and 'to' models. This also sets us up for better request debouncing and diff management.
git-svn-id: https://develop.svn.wordpress.org/trunk@24609 602fd350-edb4-49c9-b593-d223f7449a82