- 16 Jul, 2014 21 commits
-
-
BigBlueHat authored
-
Randall Leeds authored
-
Randall Leeds authored
-
Randall Leeds authored
-
Randall Leeds authored
If anyone doesn't like this, it's easy to revert, so it's going straight to master.
-
Randall Leeds authored
Improve the usability and transitions of toolbar
-
Randall Leeds authored
Change the toolbar transitions, hover actions, and push states to improve usability and feel. - Animate from the right, so that all buttons enter as a group, so as to give them all equal "weight" - Colorize the pushed buttons even when not hovering so it's easier to see which are active - Further emphasize pushed state by "docking" them to the right - Rework curves, delays, and durations for great beauty - Show hidden buttons when hovering anywhere, not just the top Close #1268
-
Randall Leeds authored
Turn Stream into App
-
Randall Leeds authored
-
Randall Leeds authored
- Vertically align the thread expander using ems and taking into account the size of the header it's aligned with. - Fix excerpt bottom margin to match viewer - Tuck the thread border under the content of the parent with a little extra padding - Align the padding of the content class with card margins - Rather than using a space character in the font icon styles, use the offset margin by choosing a sensible, non-zero default Close #1290
-
Randall Leeds authored
Rather than having the annotator service handle the API service discovery event, handle it in the app controller. That allows for all the calls to add the Store plugin to be centralized in this controller. The `reloadAnnotations` function is modified so as not to assume that a Store is already loaded, cleaning up only if one is. The new store is placed on the scope so that its entities can be watched. Rather than racing with the store, the updater is configured with a new filter when the entities change. When the stream route is loaded, these entities are empty, but the configured stream filter is sent without re-initializing the filter. The stream search controller only has to send a new filter if an updater is already open, otherwise it is opened when the store is configured. The patched `Store.loadAnnotations` is changed so that it creates a fresh entities object on each invocation. This change ensures that if provider frame disconnection is handled at some point the entities will not continue to be included in searches and it makes the scope watcher for this property very cheap. Fixes #1306
-
Randall Leeds authored
-
Randall Leeds authored
When a query parameter is used twice in search or the same facet is selected twice in the search input handle it the same way. - Remove special code for multi-value filter clauses - Remove special parsing of text facet, which seems to have been added by mistake (the space-delimited text field might come from the text field being the default remainder field, meaning it takes the left-over text in the search box which doesn't match a facet)
-
Randall Leeds authored
-
Randall Leeds authored
-
Randall Leeds authored
Close #1291
-
Randall Leeds authored
-
Randall Leeds authored
Don't initialize the updater twice when logged in. When the session is first loaded, only initialize the updater if there are no logged in users in the session. If there are, the updater will be initialized by the watcher. Fix #1307
-
Randall Leeds authored
Failure to do this results in an infinite loop of reconnections.
-
Randall Leeds authored
Rather than using extra events to trigger a round trip through the visual search directive callbacks and query parsing, simply rely on $location.search() at the time the route controller is instantiated and stop using `reloadOnSearch: false` in the route definitions so that changes to the search trigger a refresh of the view. The QueryParser now splits `populateFilter` into `parseModels` and `populateFilter` so that the models can be parsed when the visual search callback fires and the filter can be populated separately from the query string after the route reload. Summary of improvements: - Drop the VSSearch and RefreshSearch events. - Make the search.query scope property a simple value instead of a function. This reduces the work required for the watcher and is possible because we no longer update the query string unless the query changes and the route will reload if it does. - Clearing the stream is no longer necessary, since it starts clear on each route reload.
-
Randall Leeds authored
This refactor turns the stream page a part of our main H application Main features: * Stream is now accessible from our app at the /stream angular route * Stream has the same header (same look, same code) as the main app * Authentication from the stream page is now possible * The same visualsearch-bar is used both for page- and stream search * Stream page now uses our viewer.html to show annotation cards. * Replying to/editing/deleting annotations can be done in the stream page too. Details * streamsearch.pt is obsolete and has been delete because app.pt is used instead of it. * streamviewer.html is obsolete and has been deleted because viewer.html is used instead of it. * The QueryParser class is moved into the streamfilter.coffee and available is a new service for the app. * The visualsearch directive now uses functions living in the <current scope>.search object that any part of the app can configure it.
-
- 15 Jul, 2014 7 commits
-
-
Randall Leeds authored
This isn't here yet, and we shouldn't do it like this. We should probably use SASS to include it in "form input" rules or we should add it to the templates.
-
Randall Leeds authored
-
Randall Leeds authored
-
Randall Leeds authored
-
Randall Leeds authored
Add basic test framework for the Angular app
-
Randall Leeds authored
-
Aron Carroll authored
-
- 14 Jul, 2014 3 commits
-
-
Aron Carroll authored
Also refactored the directive to remove the dependency on the controller. The ng-model attribute is still required but only to set the scope.
-
Aron Carroll authored
-
Aron Carroll authored
Using Karma, Angular Mocks, Chai and Sinon.
-
- 10 Jul, 2014 1 commit
-
-
Randall Leeds authored
Improve debug toolbar integration
-
- 09 Jul, 2014 2 commits
-
-
Randall Leeds authored
Restore default view to 'Screen'
-
Ujvari Gergely authored
As a part of the fix for #1231 in commit https://github.com/hypothesis/h/commit/f66448fc3b2d1e07cbb491db73367b4b69e5f9a6 the default view was change to 'Document' from 'Screen' but the annotations were not loaded into the sidebar as supposed for 'Document' view, because the applyView was called before the annotations were loaded. Since it'd take effort to correctly implement Document view update when the store loads new annotations, it is feasible to return to the original 'Screen' view, which works well, because views are planned to be refined, maybe redesigned. Fix #1276
-
- 08 Jul, 2014 4 commits
-
-
gergely-ujvari authored
Delay authentication timeout on scope updates
-
Aron Carroll authored
WebSocket tweaks
-
Randall Leeds authored
Fix #1286
-
Randall Leeds authored
It makes a lot more sense to start the websocket connection as soon as the session is loaded, rather than using an arbitrary delay time of five seconds.
-
- 07 Jul, 2014 2 commits
-
-
Randall Leeds authored
Fix two issues with the authentication timeouts. - Fix #1284, the regression causing resets to always occur, introduced by e4f32116fe5f266e2030a666f5cc912b6b3df308 - Flash a message when the reset happens. Close #1280 - Increased the timeout to five minutes, as per suggestion by @dwhly
-
Randall Leeds authored
Improved form errors
-