Sorin Davidoi
3757546f1b
fix(columns_area): Show correct title for preview columns ( #4310 )
2017-07-23 14:03:35 +02:00
Sorin Davidoi
c1bc5e14eb
feat(compose): More space on mobile devices ( #4282 )
...
* feat(compose): More space on mobile devices
* feat(compose): Hide navigation when typing on mobile devices
* fix(compose): Make animation faster
* fix(navigation_bar): Remove hardcoded title
* fix(compose): Prevent accidental bluring
* fix(compose): Increase max-height to 600px
2017-07-21 01:38:24 +02:00
Yamagishi Kazutoshi
3267e4a785
Add unfollow modal (optional) ( #4246 )
...
* Add unfollow modal
* unfollowing someone
* remove unnecessary prop
2017-07-18 17:14:43 +02:00
Yamagishi Kazutoshi
f5382ec085
Exclude self toots from regular expression filter ( #4245 )
...
* Exclude self toots from regular expression filter
* refactor
2017-07-18 15:20:38 +02:00
Sorin Davidoi
1d2616b79b
fix(emojis): Handle multipoint emojis (e.g. country flags) ( #4221 )
2017-07-17 10:57:45 +02:00
unarist
695439775e
Fix column swiping ( #4211 )
...
This fixes broken behavior and enable animation only on swiping.
2017-07-15 17:25:04 +02:00
Eugen Rochko
3fbf1bf35a
Fix #3773 - Pin favourites column ( #4201 )
2017-07-15 00:49:34 +02:00
Eugen Rochko
e2685ccc81
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
a9067167bb
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
a9a0c854e1
fix(components/media_modal): Style issues ( #4187 )
2017-07-13 22:18:18 +02:00
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
2017-07-13 22:15:32 +02:00
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.
2017-07-12 20:51:44 +02:00
Naoki Kosaka
b21ab498f8
Fix media modal prev button behavior. ( #4158 )
2017-07-11 19:56:45 +02:00
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
2017-07-11 15:27:59 +02:00
Yamagishi Kazutoshi
31366334cb
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
cc68d1945b
refactor: Rewrite immutablejs import statements using destructuring ( #4147 )
2017-07-11 01:00:14 +02:00
Lynx Kotoura
1c6cbdd4e4
Fix duplication of tag in columns_area.js ( #4131 )
...
Deleted ">" just a typo.
2017-07-10 04:37:10 +02:00
Sorin Davidoi
4122a837fa
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
fc4c74660b
Swipeable views ( #4105 )
...
* feat: Replace react-swipeable with react-swipeable-views
* fix: iOS 9
2017-07-09 15:02:26 +02:00
unarist
caf938562e
Avoid async import if the component is previously loaded ( #4127 )
2017-07-09 14:52:03 +02:00
unarist
ce3a371eee
Fix initial loading of pinned Notifications column ( #4126 )
2017-07-09 13:04:30 +02:00
Sorin Davidoi
37c832cdf7
refactor: Make all reducers sync ( #4125 )
2017-07-09 12:16:08 +02:00
Sorin Davidoi
91cacb1e8f
fix: Rerender Bundle on route change ( #4120 )
2017-07-08 18:34:55 +02:00
unarist
46f5d3a2e9
Fix first loading of notifications when the column is pinned ( #4114 )
2017-07-08 17:22:24 +02:00
Yamagishi Kazutoshi
76318f8830
Don't use preview when image size is unknown ( #4113 )
2017-07-08 17:21:59 +02:00
Nolan Lawson
63b77f2320
Avoid using getBoundingClientRect to calculate height ( #4001 )
2017-07-08 01:57:22 +02:00
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
2017-07-08 00:06:02 +02:00
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
2017-07-06 22:39:56 +02:00
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.
2017-07-06 21:26:21 +02:00
unarist
b52a5e6bd6
Show LoadMore button on Notifications even if all items are filtered ( #4077 )
2017-07-05 14:51:53 +02:00
Sorin Davidoi
60da49f856
fix(components/columns_area): Increase delta for swipe detection ( #4037 )
2017-07-02 15:55:50 +02:00
Eugen Rochko
12e7c81dd8
Turn report screen into a modal ( #3965 )
2017-06-27 18:07:21 +02:00
Yamagishi Kazutoshi
8f2c91568c
Maintain aspect ratio for preview image ( #3966 )
2017-06-27 13:43:53 +02:00
Sorin Davidoi
4ce1540094
fix(features/compose): Handle external changes to the textarea ( #3632 )
2017-06-25 21:43:27 +02:00
Sorin Davidoi
d23293c762
feat(components/onboarding_modal): Swipe between pages ( #3934 )
2017-06-24 23:17:39 +02:00
Yamagishi Kazutoshi
79dacea962
Fix #3924 (regression from #3906 ) ( #3925 )
2017-06-24 12:24:02 +02:00
unarist
4e6b5e7879
Use debounce for dispatch scrollTopNotification and expandNotifications ( #3700 )
2017-06-24 02:43:26 +02:00
Yamagishi Kazutoshi
c1a8e3d1eb
Use Class and Property Decorators ( #3730 )
...
ref https://tc39.github.io/proposal-decorators/
2017-06-23 19:36:54 +02:00
Eugen Rochko
281f07244b
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
eff9416469
Remove unused variables ( #3906 )
2017-06-23 16:05:04 +02:00
Yamagishi Kazutoshi
6fbb3841a6
Add prefix to setting toggle ID ( #3907 )
2017-06-23 13:55:05 +02:00
Sorin Davidoi
bc6e958229
feat: Swipeable media
2017-06-23 13:48:46 +02:00
Sorin Davidoi
a6d8d1036a
feat: Swipeable columns
2017-06-23 13:48:46 +02:00
Eugen Rochko
946a166791
Revert #3851 ( #3878 )
2017-06-21 01:37:15 +02:00
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
2017-06-20 20:40:03 +02:00
Yamagishi Kazutoshi
eb832e88f4
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
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
2017-06-19 11:31:14 +02:00
alpaca-tc
cf6fe4f8cb
Unobserve status on unmount ( #3851 )
2017-06-19 11:29:57 +02:00
alpaca-tc
8d2b3ada80
Fixes streaming callbacks of HashtagTimeline ( #3849 )
2017-06-19 10:28:35 +02:00
Eugen Rochko
aebebdc5d1
Debounce autosuggestions ( #3836 )
...
* Debounce autosuggestions
* Remove duplicate import
2017-06-19 01:50:56 +02:00