- 15 Oct, 2015 13 commits
-
-
Robert Knight authored
Increase top bar height to 40px to match the designs. A visual side effect is that the dropdown menus now overlap the top bar and clearly appear on top of it rather than just below.
-
Robert Knight authored
Position the arrow at the top of the groups list dropdown menu so that it appears beneath the dropdown indicator in the top-bar. This is done by hiding the dropdown menu's "built in" arrow created via CSS :before and :after pseudo-elements and introducing a separate element which uses the same technique with borders to create the dropdown arrow. The use of a separate element for the arrow allows it to be aligned with the right edge of the dropdown menu's parent element (in this case, the group name in the top bar) rather than the dropdown menu's content.
-
Robert Knight authored
* Set the inner container in the top bar to the full height of the top bar. This corrects the vertical alignment of the toolbar icons. * Remove the extraneous 'content' class from the top bar * Remove unused selectors for button styling T-90
-
Robert Knight authored
When the new top-bar design is enabled, collapse the search input unless the field is hovered, focused or there is an active search query. In the legacy top-bar design, the search field remains expanded all the time T-90
-
Robert Knight authored
Update the button styling for top bar icons to match the mocks. The icons have been changed to <a> rather than <button> tags to work around an issue I see in Firefox where the icon is initially clipped when loaded and then re-renders itself correctly on hover. This needs additional investigation.
-
Robert Knight authored
* Make the corners of the top bar straight * Remove the unnecessary border at the top of the sidebar, since the sidebar is already bordered by the bottom of the browser's address bar T-90
-
Robert Knight authored
Variables in calc() expressions must be interpolated.
-
Robert Knight authored
T-90
-
Robert Knight authored
T-90
-
Robert Knight authored
To simplify the process of updating the icon font and make sure that nothing is missed out, add a script which takes the icon font archive generated by icomoon and updates the relevant files in the repository. T-90
-
Robert Knight authored
When the groups feature is enabled, use the new top bar design from https://trello.com/c/DZEDxU4C/90-top-bar-ui-updates : [Group selector ] [Search][Sort][Share][Account] * Align the left/right edges of the top-bar content with the content below. * Use a placeholder icon for the account menu for the moment. It will be replaced with an appropriate SVG when available.
-
Nick Stenning authored
T90 top bar refactor
-
Robert Knight authored
In preparation for implementing the new top-bar design, extract it into its own directive. * Refactor the 'persona' filter into a simple function that returns a {username, provider} object which IMO makes for more straightforward code. Several of the test cases which deal with inputs not in that form were removed. If account IDs are not guaranteed to be in the 'acct:<username>@<provider>' form then we should be explicit about what is accepted and what is returned. T-90
-
- 14 Oct, 2015 7 commits
-
-
Robert Knight authored
For consistency use element directives for components and attribute directives only for directives that provide some enhancement to an existing UI T-90
-
Nick Stenning authored
T93 New 'Clear selection' button design
-
Nick Stenning authored
Sort groups server-side
-
Robert Knight authored
Following discussion on https://github.com/hypothesis/h/pull/2615 it looks like we can ship this for all users. T-93
-
Robert Knight authored
This provides a clearer design for the search status button. The new design is part of the groups roll-out and is only shown when the groups feature is enabled. T-93
-
Robert Knight authored
The groups are already sorted in a suitable order by the server, so they do not need to be sorted again on the client.
-
Robert Knight authored
In preparation for implementing a new design for the search/selection status bar, extract it into its own directive.
-
- 13 Oct, 2015 13 commits
-
-
Robert Knight authored
Don't endlessly re-request features on connectivity issues
-
Nick Stenning authored
If, for whatever reason, the request to fetch features data fails, simply retry a little later (with a randomised exponential backoff). This commit uses the [retry module](https://www.npmjs.com/package/retry) to provide the backoff logic. N.B. If we fail 10 times (over a period spanning between ~15 and ~30 minutes, using the defaults from the retry module) then we will simply stop looking for new features data. There's no point burning client CPU forever in the hope that the server reappears. Fixes #2547.
-
Nick Stenning authored
UI tweaks for the group creation form
-
Robert Knight authored
* Increase the spacing between the label and the group name * Disable focus outline for the group name field, since the input has no border * Disable autocomplete for the group name field, since we are prompting for a _new_ name
-
Nick Stenning authored
Convert Chrome extension to Browserify + CommonJS modules
-
Nick Stenning authored
Push notifications of group membership changes
-
Sean Hammond authored
Server-rendered accounts forms
-
Robert Knight authored
See linked description in GitHub issue. It is a bit silly that we are running the Chrome extension tests exclusively in PhantomJS rather than Chrome, but for the moment, get the existing tests to run using the same getOwnPropertyNames() shim that is used for the main client app tests.
-
Robert Knight authored
It is likely that we will want to handle these events differently in future, so split them into two separate tests.
-
Robert Knight authored
-
Robert Knight authored
* Remove the logic from app-controller.coffee to focus the Public group on logout. This is no longer needed as the 'groups' service automatically updates the focused group if the previously focused group is removed. * Only emit the SESSION_CHANGED event on updates to the session state, not the initial app load, since initialization of the view is deferred until the session has already been loaded. Since the SESSION_CHANGED handler currently reloads the whole view, this avoids reloading the view twice on startup. Refactoring handling of SESSION_CHANGED to only update the relevant app state is left for a future refactoring. T-105
-
Robert Knight authored
* Sort injected parameter names alphabetically for Angular services * Use imperative names for group events published on the 'user' NSQ topic * Avoid unnecessary dance with functools.partial() in streamer.py to pass the reader's topic to the message handler
-
Robert Knight authored
This adds a new class of push notification, 'session-change' which is broadcast to logged-in clients when changes to the user's state, including the list of groups that they are a member of, changes. When the user creates or joins a group, a notification is added to the event queue with an associated user ID which is then broadcast via the web socket. On the client side, the streamer service listens for the new class of notification and triggers an update of the session state in response. When the user leaves a group, this may trigger an implicit change of focus if the user was a member of the group. T-105
-
- 12 Oct, 2015 3 commits
-
-
Sean Hammond authored
Remove the 'notification' feature flag
-
Nick Stenning authored
This is deployed and toggled on everywhere, so we can simplify our code by removing this feature flag.
-
Nick Stenning authored
Let the annotation post button resize to fit its content
-
- 09 Oct, 2015 4 commits
-
-
Robert Knight authored
Remove the 'streamer' feature flag
-
Robert Knight authored
Remove the fixed width from the annotation post button and let the dropdown menu's width adjust to fit its content rather than being the same width as the button. To avoid the menu disappearing into the left edge of the sidebar, the menu has been re-aligned so that it is centered underneath the button's dropdown arrow. * Simplify the styling used to hide the dropdown menu to use just the visibility property instead of setting pointer events to none, applying a rotation transform _and_ setting opacity to 0. I'm unclear why the combination of a transform, pointer events and opacity was used originally but the dropdown menus continue to work with the simplified styling. T-112
-
Nick Stenning authored
Rather than flashing a message to check the user's email, display a persistent message on the reset password form if the code has not been prefilled.
-
Nick Stenning authored
This commit removes all of the client-side code for handling the following forms: - registration - forgot password - reset password The login form remains, as it is of course very convenient to be able to log into Hypothesis from the sidebar.
-