Sorin Davidoi
a9a0c854e1
fix(components/media_modal): Style issues ( #4187 )
8 years ago
Sorin Davidoi
0c7c188c45
Web Push Notifications ( #3243 )
...
* feat: Register push subscription
* feat: Notify when mentioned
* feat: Boost, favourite, reply, follow, follow request
* feat: Notification interaction
* feat: Handle change of public key
* feat: Unsubscribe if things go wrong
* feat: Do not send normal notifications if push is enabled
* feat: Focus client if open
* refactor: Move push logic to WebPushSubscription
* feat: Better title and body
* feat: Localize messages
* chore: Fix lint errors
* feat: Settings
* refactor: Lazy load
* fix: Check if push settings exist
* feat: Device-based preferences
* refactor: Simplify logic
* refactor: Pull request feedback
* refactor: Pull request feedback
* refactor: Create /api/web/push_subscriptions endpoint
* feat: Spec PushSubscriptionController
* refactor: WebPushSubscription => Web::PushSubscription
* feat: Spec Web::PushSubscription
* feat: Display first media attachment
* feat: Support direction
* fix: Stuff broken while rebasing
* refactor: Integration with session activations
* refactor: Cleanup
* refactor: Simplify implementation
* feat: Set VAPID keys via environment
* chore: Comments
* fix: Crash when no alerts
* fix: Set VAPID keys in testing environment
* fix: Follow link
* feat: Notification actions
* fix: Delete previous subscription
* chore: Temporary logs
* refactor: Move migration to a later date
* fix: Fetch the correct session activation and misc bugs
* refactor: Move migration to a later date
* fix: Remove follow request (no notifications)
* feat: Send administrator contact to push service
* feat: Set time-to-live
* fix: Do not show sensitive images
* fix: Reducer crash in error handling
* feat: Add badge
* chore: Fix lint error
* fix: Checkbox label overlap
* fix: Check for payload support
* fix: Rename action "type" (crash in latest Chrome)
* feat: Action to expand notification
* fix: Lint errors
* fix: Unescape notification body
* fix: Do not allow boosting if the status is hidden
* feat: Add VAPID keys to the production sample environment
* fix: Strip HTML tags from status
* refactor: Better error messages
* refactor: Handle browser not implementing the VAPID protocol (Samsung Internet)
* fix: Error when target_status is nil
* fix: Handle lack of image
* fix: Delete reference to invalid subscriptions
* feat: Better error handling
* fix: Unescape HTML characters after tags are striped
* refactor: Simpify code
* fix: Modify to work with #4091
* Sort strings alphabetically
* i18n: Updated Polish translation
it annoys me that it's not fully localized :P
* refactor: Use current_session in PushSubscriptionController
* fix: Rebase mistake
* fix: Set cacheName to mastodon
* refactor: Pull request feedback
* refactor: Remove logging statements
* chore(yarn): Fix conflicts with master
* chore(yarn): Copy latest from master
* chore(yarn): Readd offline-plugin
* refactor: Use save! and update!
* refactor: Send notifications async
* fix: Allow retry when push fails
* fix: Save track for failed pushes
* fix: Minify sw.js
* fix: Remove account_id from fabricator
8 years ago
unarist
5abb3d8150
Rerender modal on property changes ( #4175 )
...
Render function for BundleContainer must not be methods.
React doesn't know dependency of the method, so they won't rerender on property updates.
In this case, when you close modal and open another modal immediately,
old modal will be open instead of new one.
8 years ago
Naoki Kosaka
b21ab498f8
Fix media modal prev button behavior. ( #4158 )
8 years ago
Eugen Rochko
e19eefe219
Redesign the landing page, mount public timeline on it ( #4122 )
...
* Redesign the landing page, mount public timeline on it
* Adjust the standalone mounted component to the lacking of router
* Adjust auth layout pages to new design
* Fix tests
* Standalone public timeline polling every 5 seconds
* Remove now obsolete translations
* Add responsive design for new landing page
* Address reviews
* Add floating clouds behind frontpage form
* Use access token from public page when available
* Fix mentions and hashtags links, cursor on status content in standalone mode
* Add footer link to source code
* Fix errors on pages that don't embed the component, use classnames
* Fix tests
* Change anonymous autoPlayGif default to false
* When gif autoplay is disabled, hover to play
* Add option to hide the timeline preview
* Slightly improve alt layout
* Add elephant friend to new frontpage
* Display "back to mastodon" in place of "login" when logged in on frontpage
* Change polling time to 3s
8 years ago
Yamagishi Kazutoshi
31366334cb
Drawer tab according to column ( #4135 )
...
* Add notifications link to drawer
* Remove local and public timeline tab in drawer
* Add home
8 years ago
Sorin Davidoi
cc68d1945b
refactor: Rewrite immutablejs import statements using destructuring ( #4147 )
8 years ago
Lynx Kotoura
1c6cbdd4e4
Fix duplication of tag in columns_area.js ( #4131 )
...
Deleted ">" just a typo.
8 years ago
Sorin Davidoi
4122a837fa
fix(components/media_modal): Aspect ratio ( #4128 )
...
* fix(components/media_modal): Aspect ratio
* fix: Remove useless style
8 years ago
Sorin Davidoi
fc4c74660b
Swipeable views ( #4105 )
...
* feat: Replace react-swipeable with react-swipeable-views
* fix: iOS 9
8 years ago
unarist
caf938562e
Avoid async import if the component is previously loaded ( #4127 )
8 years ago
unarist
ce3a371eee
Fix initial loading of pinned Notifications column ( #4126 )
8 years ago
Sorin Davidoi
37c832cdf7
refactor: Make all reducers sync ( #4125 )
8 years ago
Sorin Davidoi
91cacb1e8f
fix: Rerender Bundle on route change ( #4120 )
8 years ago
unarist
46f5d3a2e9
Fix first loading of notifications when the column is pinned ( #4114 )
8 years ago
Yamagishi Kazutoshi
76318f8830
Don't use preview when image size is unknown ( #4113 )
8 years ago
Nolan Lawson
63b77f2320
Avoid using getBoundingClientRect to calculate height ( #4001 )
8 years ago
Sorin Davidoi
348d6f5e75
Lazy load components ( #3879 )
...
* feat: Lazy-load routes
* feat: Lazy-load modals
* feat: Lazy-load columns
* refactor: Simplify Bundle API
* feat: Optimize bundles
* feat: Prevent flashing the waiting state
* feat: Preload commonly used bundles
* feat: Lazy load Compose reducers
* feat: Lazy load Notifications reducer
* refactor: Move all dynamic imports into one file
* fix: Minor bugs
* fix: Manually hydrate the lazy-loaded reducers
* refactor: Move all dynamic imports to async-components
* fix: Loading modal style
* refactor: Avoid converting the raw state for each lazy hydration
* refactor: Remove unused component
* refactor: Maintain modal name
* fix: Add as=script to preload link
* chore: Fix lint error
* fix(components/bundle): Check if timestamp is set when computing elapsed
* fix: Load compose reducers for the onboarding modal
8 years ago
Damien Erambert
18d3fa953b
Add a setting allowing the use of system's default font in Web UI ( #4033 )
...
* add a system_font_ui setting on the server
* Plug the system_font_ui on the front-end
* add EN/FR locales for the new setting
* put Roboto after all other fonts
* remove trailing whitespace so CodeClimate is happy
* fix user_spec.rb
* correctly write user_spect this time
* slightly better way of adding the classes
* add comments to the system-font stack for clarification
* use .system-font for the class instead
* don't use multiple lines for comments
* remove trailing whitespace
* use the classnames module for consistency
* use `mastodon-font-sans-serif` instead of Roboto directly
8 years ago
unarist
9c03fd9cae
Unobserve status on unmount ( #4013 )
...
This fixes a warning on status unmounting (e.g. deletion).
This also resets IntersectionObserverWrapper on disconnect to avoid `unobserve()` calls
which has bug in Edge.
8 years ago
unarist
b52a5e6bd6
Show LoadMore button on Notifications even if all items are filtered ( #4077 )
8 years ago
Sorin Davidoi
60da49f856
fix(components/columns_area): Increase delta for swipe detection ( #4037 )
8 years ago
Eugen Rochko
12e7c81dd8
Turn report screen into a modal ( #3965 )
8 years ago
Yamagishi Kazutoshi
8f2c91568c
Maintain aspect ratio for preview image ( #3966 )
8 years ago
Sorin Davidoi
4ce1540094
fix(features/compose): Handle external changes to the textarea ( #3632 )
8 years ago
Sorin Davidoi
d23293c762
feat(components/onboarding_modal): Swipe between pages ( #3934 )
8 years ago
Yamagishi Kazutoshi
79dacea962
Fix #3924 (regression from #3906 ) ( #3925 )
8 years ago
unarist
4e6b5e7879
Use debounce for dispatch scrollTopNotification and expandNotifications ( #3700 )
8 years ago
Yamagishi Kazutoshi
c1a8e3d1eb
Use Class and Property Decorators ( #3730 )
...
ref https://tc39.github.io/proposal-decorators/
8 years ago
Yamagishi Kazutoshi
eff9416469
Remove unused variables ( #3906 )
8 years ago
Yamagishi Kazutoshi
6fbb3841a6
Add prefix to setting toggle ID ( #3907 )
8 years ago
Sorin Davidoi
bc6e958229
feat: Swipeable media
8 years ago
Sorin Davidoi
a6d8d1036a
feat: Swipeable columns
8 years ago
Eugen Rochko
946a166791
Revert #3851 ( #3878 )
8 years ago
Sorin Davidoi
8f03fdce7f
Upgrade React Router ( #3677 )
...
* chore(yarn): Remove react-router
* chore(yarn): Remove react-router-scroll
* chore(yarn): Remove history
* chore(yarn): Add react-router-dom
* chore: Remove usages of react-router-scroll
* refactor: Upgrade to react-router-web
* refactor: Use fork of react-router-scroll
This reverts commit 2ddea9a6c8d39fc64b7d0b587f3fbda7a45a7fa2.
* fix: Issues mentions in the PR feedback
8 years ago
Yamagishi Kazutoshi
eb832e88f4
Replace TextIconButton for SensitiveButton to IconButton ( #3759 )
...
* Replace TextIconButton for SensitiveButton to IconButton
* line-height
8 years ago
Gô Shoemake
29a22691d2
Fix character/grapheme count stuff ( #3839 )
...
* Bring Toot button in line with counter
Both should use stringz I guess
* Use grapheme_length for character count
8 years ago
alpaca-tc
cf6fe4f8cb
Unobserve status on unmount ( #3851 )
8 years ago
alpaca-tc
8d2b3ada80
Fixes streaming callbacks of HashtagTimeline ( #3849 )
8 years ago
Eugen Rochko
aebebdc5d1
Debounce autosuggestions ( #3836 )
...
* Debounce autosuggestions
* Remove duplicate import
8 years ago
Nolan Lawson
1d9f9352a6
handle resize in a debounce() ( #3834 )
8 years ago
Yamagishi Kazutoshi
df4f4e94b3
Add alt attribute to ImageLoader ( #3765 )
8 years ago
Eugen Rochko
47ace633dc
Simplify getting started links localization. Link "powered by Mastodon" to joinmastodon.org ( #3725 )
8 years ago
Eugen Rochko
37dbfa4cd7
Unread indicator was invisible behind column header, adjusted ( #3720 )
...
* Unread indicator was invisible behind column header, adjusted
* Unread indicator now a CSS pseudo-element
* Adjust flex
8 years ago
Yamagishi Kazutoshi
72133fbed6
Re-add clear notifications button ( #3708 )
...
* Re-add clear notifications button
* remove connect() in column_settings
* one line
* remove unused props
8 years ago
Eugen Rochko
47bf7a8047
Fix #3665 - Refactor timelines reducer ( #3686 )
...
* Move ancestors/descendants out of timelines reducer
* Refactor timelines reducer
All types of timelines now have a flat structure and use the same
reducer functions and actions
* Reintroduce some missing behaviours
* Fix wrong import in reports
* Fix includes typo
* Fix issue related to "next" pagination in timelines and notifications
* Fix bug with timeline's initial state, expandNotifications
8 years ago
Yamagishi Kazutoshi
3690f04e4a
Remove comments for eslint-disable ( #3691 )
8 years ago
Eugen Rochko
b623dd12c1
Use preview image in <ImageLoader /> to provide immediate visual feedback ( #3595 )
...
before the full-size image is loaded
8 years ago
ふぁぼ原
7623766241
Add regex filters on the community timeline and the public timeline. ( #3564 )
...
* Add regex filter on the community timeline and the public timeline
* correcting
* Adjust the height of header buttons
* Remove trailing spaces
* Remove trailing spaces
* Solve some code duplication
* reset the state of the locale files in app/javascript/mastodon/locales
* adjust to upstream
* adjust to upstream
* change keys of locale settings
8 years ago
Yamagishi Kazutoshi
d8ae3efec3
Improve ESLint rules for JSX ( #3608 )
...
* Add react/no-string-refs ESLint rule
* Add react/jsx-boolean-value ESLint rule
* Add react/jsx-closing-bracket-location ESLint rule
* Add react/jsx-indent ESLint rule
* Add react/jsx-curly-spacing ESLint rule
* Add react/jsx-equals-spacing ESLint rule
* Add react/jsx-first-prop-new-line ESLint rule
* Add react/jsx-no-duplicate-props ESLint rule
* Add react/jsx-tag-spacing ESLint rule
8 years ago