Eugen Rochko
5138dde794
Fix #4149 , fix #1199 - Store emojis as unicode ( #4189 )
...
- Use unicode when selecting emoji through picker
- Convert shortcodes to unicode when storing text input server-side
- Do not convert shortcodes in JS anymore
2017-07-14 19:47:53 +02:00
Sorin Davidoi
912ca0fa57
Improve swiping ( #4188 )
...
* feat(components/columns_area): Toggle animation settings
* fix(components/media_modal): Center non-visible views
* fix(components/media_modal): Check for null
* refactor(columns_area): Better logic
2017-07-14 00:49:01 +02:00
Sorin Davidoi
b047d5c747
fix(components/media_modal): Style issues ( #4187 )
2017-07-13 22:18:18 +02:00
Sorin Davidoi
ecab38fd66
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
2017-07-13 22:15:32 +02:00
unarist
c3ec4f2dac
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.
2017-07-12 20:51:44 +02:00
Naoki Kosaka
6e511ee673
Fix media modal prev button behavior. ( #4158 )
2017-07-11 19:56:45 +02:00
Eugen Rochko
49026e27e8
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
2017-07-11 15:27:59 +02:00
Yamagishi Kazutoshi
bf012605a3
Drawer tab according to column ( #4135 )
...
* Add notifications link to drawer
* Remove local and public timeline tab in drawer
* Add home
2017-07-11 14:36:27 +02:00
Sorin Davidoi
1a5ae3019d
refactor: Rewrite immutablejs import statements using destructuring ( #4147 )
2017-07-11 01:00:14 +02:00
Lynx Kotoura
5703923989
Fix duplication of tag in columns_area.js ( #4131 )
...
Deleted ">" just a typo.
2017-07-10 04:37:10 +02:00
Sorin Davidoi
f19f18f47e
fix(components/media_modal): Aspect ratio ( #4128 )
...
* fix(components/media_modal): Aspect ratio
* fix: Remove useless style
2017-07-09 18:49:07 +02:00
Sorin Davidoi
420c4d8dc8
Swipeable views ( #4105 )
...
* feat: Replace react-swipeable with react-swipeable-views
* fix: iOS 9
2017-07-09 15:02:26 +02:00
unarist
05833fc24a
Avoid async import if the component is previously loaded ( #4127 )
2017-07-09 14:52:03 +02:00
unarist
f66270fb73
Fix initial loading of pinned Notifications column ( #4126 )
2017-07-09 13:04:30 +02:00
Sorin Davidoi
4264c62111
refactor: Make all reducers sync ( #4125 )
2017-07-09 12:16:08 +02:00
Sorin Davidoi
c202889d8d
fix: Rerender Bundle on route change ( #4120 )
2017-07-08 18:34:55 +02:00
unarist
f1827d5070
Fix first loading of notifications when the column is pinned ( #4114 )
2017-07-08 17:22:24 +02:00
Yamagishi Kazutoshi
a45154d725
Don't use preview when image size is unknown ( #4113 )
2017-07-08 17:21:59 +02:00
Nolan Lawson
01ee91b725
Avoid using getBoundingClientRect to calculate height ( #4001 )
2017-07-08 01:57:22 +02:00
Sorin Davidoi
40b32ffb12
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
2017-07-08 00:06:02 +02:00
Damien Erambert
387de88e2f
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
2017-07-06 22:39:56 +02:00
unarist
1e71b683bc
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.
2017-07-06 21:26:21 +02:00
unarist
90865f242a
Show LoadMore button on Notifications even if all items are filtered ( #4077 )
2017-07-05 14:51:53 +02:00
Sorin Davidoi
214090aa4d
fix(components/columns_area): Increase delta for swipe detection ( #4037 )
2017-07-02 15:55:50 +02:00
Eugen Rochko
0d316bcfd2
Turn report screen into a modal ( #3965 )
2017-06-27 18:07:21 +02:00
Yamagishi Kazutoshi
8a9408b7c3
Maintain aspect ratio for preview image ( #3966 )
2017-06-27 13:43:53 +02:00
Sorin Davidoi
2b1ab274fe
fix(features/compose): Handle external changes to the textarea ( #3632 )
2017-06-25 21:43:27 +02:00
Sorin Davidoi
8180d8bc35
feat(components/onboarding_modal): Swipe between pages ( #3934 )
2017-06-24 23:17:39 +02:00
Yamagishi Kazutoshi
6779ba5f18
Fix #3924 (regression from #3906 ) ( #3925 )
2017-06-24 12:24:02 +02:00
unarist
45058b5fde
Use debounce for dispatch scrollTopNotification and expandNotifications ( #3700 )
2017-06-24 02:43:26 +02:00
Yamagishi Kazutoshi
e2027fbe42
Use Class and Property Decorators ( #3730 )
...
ref https://tc39.github.io/proposal-decorators/
2017-06-23 19:36:54 +02:00
Eugen Rochko
88458a1638
Merge branch 'swipe-gestures' of git://github.com/sorin-davidoi/mastodon into sorin-davidoi-swipe-gestures
2017-06-23 17:52:39 +02:00
Yamagishi Kazutoshi
539dbaa049
Remove unused variables ( #3906 )
2017-06-23 16:05:04 +02:00
Yamagishi Kazutoshi
bc21ffd237
Add prefix to setting toggle ID ( #3907 )
2017-06-23 13:55:05 +02:00
Sorin Davidoi
501a3cf944
feat: Swipeable media
2017-06-23 13:48:46 +02:00
Sorin Davidoi
598bb06687
feat: Swipeable columns
2017-06-23 13:48:46 +02:00
Eugen Rochko
65b46159ec
Revert #3851 ( #3878 )
2017-06-21 01:37:15 +02:00
Sorin Davidoi
9bc32eb267
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
2017-06-20 20:40:03 +02:00
Yamagishi Kazutoshi
47dceaded6
Replace TextIconButton for SensitiveButton to IconButton ( #3759 )
...
* Replace TextIconButton for SensitiveButton to IconButton
* line-height
2017-06-20 19:43:09 +02:00
Gô Shoemake
2d31077bdf
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
2017-06-19 11:31:14 +02:00
alpaca-tc
36049c0096
Unobserve status on unmount ( #3851 )
2017-06-19 11:29:57 +02:00
alpaca-tc
fa14f245f8
Fixes streaming callbacks of HashtagTimeline ( #3849 )
2017-06-19 10:28:35 +02:00
Eugen Rochko
4845069692
Debounce autosuggestions ( #3836 )
...
* Debounce autosuggestions
* Remove duplicate import
2017-06-19 01:50:56 +02:00
Nolan Lawson
f973d620ca
handle resize in a debounce() ( #3834 )
2017-06-18 02:57:41 +02:00
Yamagishi Kazutoshi
dd7fb41dbb
Add alt attribute to ImageLoader ( #3765 )
2017-06-15 14:10:41 +02:00
Eugen Rochko
9ba171309b
Simplify getting started links localization. Link "powered by Mastodon" to joinmastodon.org ( #3725 )
2017-06-13 03:55:28 +02:00
Eugen Rochko
2deea77f2e
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
2017-06-12 20:02:17 +02:00
Yamagishi Kazutoshi
5f19b8e900
Re-add clear notifications button ( #3708 )
...
* Re-add clear notifications button
* remove connect() in column_settings
* one line
* remove unused props
2017-06-12 12:26:23 +02:00
Eugen Rochko
1348d63517
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
2017-06-11 17:07:35 +02:00
Yamagishi Kazutoshi
eb34081815
Remove comments for eslint-disable ( #3691 )
2017-06-11 10:42:42 +02:00