Sorin Davidoi
c58bcdeb5d
feat: Web Share for detailed status and account ( #4402 )
...
* feat: Web Share for detailed status and account
* fix(account/action_bar): Move share under mention
2017-07-28 00:55:15 +02:00
Sorin Davidoi
8a9d376d6a
Improve accessibility (part 3) ( #4405 )
...
* fix(compose): Add aria-label for the navigation links
* fix(search): Add input label
* fix(navigation_bar): Link description
* fix(autosuggest_textarea): Add input label
* fix(compose_form): Add input label
* fix(upload_button): Add input label
* fix(account/header): Add link content
* fix(column_header): Use h1 tag
* fix(column_header): Labels move buttons moving column
* fix(settings_text): Add label to input
* fix(column_header): Remove role from h1
* fix(modal_root): Use role=dialog
* fix(modal_root): Focus restauration
* fix(modal_root): Apply inert to sibligs
* fix(column_header): Add role=button
* chore(eslint): Disable jsx-a11y/label-has-for
2017-07-28 00:54:48 +02:00
Sorin Davidoi
270039d6df
fix(actions_modal): Warning about missing prop ( #4406 )
2017-07-27 23:01:50 +02:00
Sorin Davidoi
9cb72c6600
fix(dropdown_menu): Open as modal on mobile ( #4295 )
...
* fix(dropdown_menu): Open as modal on mobile
* fix(dropdown_menu): Open modal on touch
* fix(dropdown_menu): Show status
* fix(dropdown_menu): Max dimensions and reduce padding
* chore(dropdown_menu): Test new functionality
* refactor: Use DropdownMenuContainer instead of DropdownMenu
* feat(privacy_dropdown): Open as modal on touch devices
* feat(modal_root): Do not load actions-modal async
2017-07-27 22:31:59 +02:00
Sorin Davidoi
7ae272fbb6
fix(columns_area): Manually set tabs style when swiping ( #4320 )
2017-07-26 19:03:56 +02:00
Sorin Davidoi
d63950f5b0
fix(column): Crash when heading is undefined ( #4378 )
2017-07-26 15:03:23 +02:00
Sorin Davidoi
8345b4d79a
Improve accessibility (part 2) ( #4377 )
...
* fix(column_header): Invalid ARIA role
* fix(column): Remove hidden nodes from the DOM
* refactor(column_link): Remove unused property hideOnMobile
* fix(column_header): Use aria-pressed
* fix(column_header): Make collapsed content not focusable, add focusable property
* fix(column_loading): Make header non-focusable
* fix(column_settings): Use role to group the toggles
2017-07-26 13:46:53 +02:00
Sorin Davidoi
9582932d0a
Improve accessibility ( #4369 )
...
* fix(compose): Use nav and remove redundant aria-label
* fix(tabs_tab): Use nav and add aria-label
* fix(app): Add aria-label for settings toggle button
* chore: Run yarn manage:translations
2017-07-26 02:01:27 +02:00
Sorin Davidoi
94ac88ec7f
fix(components/bundle): Exit early in load function ( #4349 )
2017-07-25 01:05:44 +02:00
Eugen Rochko
5a7d5c0fd8
Improve remote profile disclaimer ( #4342 )
...
* Improve remote profile disclaimer
* yarn run manage:translations
2017-07-24 20:05:29 +02:00
Sorin Davidoi
c0925a2cdd
fix(compose_from): Do not autofocus on mobile ( #4344 )
2017-07-24 19:54:39 +02:00
Yamagishi Kazutoshi
6a0cf5945c
Change defaultMessage for spoiler placeholder ( #4329 )
2017-07-24 14:49:06 +02:00
Sorin Davidoi
ad33c1e6bc
fix(columns_area): Show correct title for preview columns ( #4310 )
2017-07-23 14:03:35 +02:00
Sorin Davidoi
324d98b5a8
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
87bb16a236
Add unfollow modal (optional) ( #4246 )
...
* Add unfollow modal
* unfollowing someone
* remove unnecessary prop
2017-07-18 17:14:43 +02:00
Yamagishi Kazutoshi
af027b6b30
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
36d42f83f3
fix(emojis): Handle multipoint emojis (e.g. country flags) ( #4221 )
2017-07-17 10:57:45 +02:00
unarist
55313a0102
Fix column swiping ( #4211 )
...
This fixes broken behavior and enable animation only on swiping.
2017-07-15 17:25:04 +02:00
Eugen Rochko
c0e596062b
Fix #3773 - Pin favourites column ( #4201 )
2017-07-15 00:49:34 +02:00
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