* origin/styling/add-groups-link: (31 commits)
Comment out the "groups" button until ready to reveal.
Changed the method of adding main navigation icons. Created a png sprite sized @2x based on largest usage (for retina). This will fix some rendering issues caused by using svg images. It will allow adding depth and more color / shading if we choose later.
intents fix
federation fix
two more federation fixes
Removed unused imports
Removed unused PublicTimeline component
Updated CommunityTimeline to add option for "all federated" content
Removed unused import in unauthorized_modal
Updated registration legal links
Updated compose_form to account for if compose modal open
Added empty message to pinned statuses page
Updated nextProps withReplies for account timeline
Added empty message to account_gallery media page
Updated timeline/notification dequeue to be in componentDidMount
Added TimelineQueueButtonHeader to status_list
Added queue functionality status_list_container for status timelines
Updated all Redis.current.publish, PushUpdateWorker.perform_async to work again
Added timeline dequeue functionality to onSubmitCompose action
Added redux functionality for queueing/dequeueing timelines
...
Created a png sprite sized @2x based on largest usage (for retina).
This will fix some rendering issues caused by using svg images.
It will allow adding depth and more color / shading if we choose later.
fixes#9
since there are multiple compose_form on the page (on top of timeline = shouldCondense) and within the modal when replying. if isModalOpen and is the compose form that's on top of timeline then dont set the ref so we can set the cursor on the textarea of the compose modal after the existing reply content.
using streaming.js, when a status comes in to the current page, it queues up using updateTimelineQueue action, it then goes to the reducer to add "queuedItems" to state (up to max:40) and to tally up all count in that timeilne state "totalQueuedItemsCount".
the dequeueTimeline action takes in a "timelineId", "expandFunc", and "optionalExpandArgs". when clicking on the "click to load more" it passes in the timelineId (e.g. "home", "community", etc.) and the "handleLoadMore" function from the timeline component. if within the range of the max: 40, it pushes them to the dom, if over the max: 40 it clears the timeline and refreshes the page/timeline to show the most recent 20 statuses. Then, it resets the "queuedItems" and "totalQueuedItemsCount" in timeline state.
if no expandFunc is added, and timeline is "home" or "community" it expands those timelines with "optionalExpandArgs". Otherwise, it queues up to any other timeline (e.g. "hashtags", etc.)
updated streaming functionality to load notifications into a queue (if currently on notitications page) and to display TimelineQueueButtonHeader with outstanding notification count. (if not on notifications page, it behaves as normal, adding/updating notification state). Max 40 are saved to queuedNotifications state and all are tallied into the totalQueuedNotificationsCount state. On click of TimelineQueueButtonHeader it dequeues the queuedNotifications and loads on page if <= max, otherwise it refreshes the page and shows latest 20 (default count) and clears/resets the state for queuedNotifications and totalQueuedNotificationsCount.