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
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
kibigo!
5770d461b2
Moved glitch containers and commented unused files
2017-07-13 02:40:16 -07: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
Surinna Curtis
e53fbb4a09
local-only/compose advanced options tweaks.
...
Squashed commit of the following:
commit b9877e37f72fdd8134936e1014033b07cb6c3671
Author: Surinna Curtis <ekiru.0@gmail.com>
Date: Wed Jul 12 00:50:10 2017 -0500
account for the eye in the chars left count for local-only toots
commit 56ebfa96542e16daa1986cc45e07974801ee12dc
Author: Surinna Curtis <ekiru.0@gmail.com>
Date: Wed Jul 12 00:21:02 2017 -0500
factor out an AdvancedOptionsToggle to avoid unnecessary re-renders
commit 04cec44ab8744e4e0f52da488c9ec24b1b1422ef
Author: Surinna Curtis <ekiru.0@gmail.com>
Date: Wed Jul 12 00:20:24 2017 -0500
s/changeComposeAdvancedOption/toggleComposeAdvancedOption/g
commit af5815dee750d1aa8b797a9305e5ab3ce6774e3f
Author: Surinna Curtis <ekiru.0@gmail.com>
Date: Tue Jul 11 23:55:19 2017 -0500
clicking anywhere on the whole advanced option toggles
2017-07-12 02:14:17 -07:00
kibigo!
79d898ae0a
Merge upstream!! #64 <3 <3
2017-07-12 02:03:17 -07:00
kibigo!
297921fce5
Moved glitch files to their own location ;)
2017-07-12 01:02:51 -07:00
Naoki Kosaka
b21ab498f8
Fix media modal prev button behavior. ( #4158 )
2017-07-11 19:56:45 +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
Ondřej Hruška
dc2b8bdecd
Added a toggle for full-width media previews
2017-07-08 06:46:12 -04: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
Surinna Curtis
ff9f2088f7
Move layout override into app settings modal
...
Squashed commit of the following:
commit 3842f879865818a3299f8283f8ed1b43c5566500
Author: Surinna Curtis <ekiru.0@gmail.com>
Date: Mon Jul 3 19:57:39 2017 -0500
Fix some style issues
commit 08628a0234392ecac90e869a1272f429de0b6db2
Author: Surinna Curtis <ekiru.0@gmail.com>
Date: Mon Jul 3 19:35:22 2017 -0500
Improved styling and layout of select app settings
commit 1787a7c20f2bf7101c6d6830450564178314a737
Author: Surinna Curtis <ekiru.0@gmail.com>
Date: Mon Jul 3 17:13:53 2017 -0500
remove the layout selector ui from the drawer
commit 7d93b180b1e615e2c36210ad6f119fe80a2778d8
Author: Surinna Curtis <ekiru.0@gmail.com>
Date: Mon Jul 3 17:01:51 2017 -0500
Add layout setting to app settings modal
2017-07-03 21:51:00 -05:00
Sorin Davidoi
60da49f856
fix(components/columns_area): Increase delta for swipe detection ( #4037 )
2017-07-02 15:55:50 +02:00
kibigo!
ec2daae71c
Media display improvements
...
- built in fullwidth styling
- letterbox settings toggle
- media no longer counts towards height when making toot-collapsing
measurements
2017-06-30 02:18:25 -07:00
kibigo!
595c6de32c
Added App Setttings Modal
2017-06-28 22:00:54 -07:00
beatrix-bitrot
ddafde942c
Merge remote-tracking branch 'upstream/master'
2017-06-27 20:46:13 +00: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
kibigo!
8ea779e59a
Patching rebase errors
2017-06-25 12:51:31 -07:00
Shel Raphen
7eda83a36a
Glitchsocification
2017-06-25 19:21:51 +00:00
kibigo!
da05cde721
Better settings handling with localSettings (new!)
2017-06-24 19:56:37 -07:00
kibigo!
ddba5d3b8c
Use Redux store to keep track of layout
2017-06-24 18:30:30 -07:00
Sorin Davidoi
d23293c762
feat(components/onboarding_modal): Swipe between pages ( #3934 )
2017-06-24 23:17:39 +02:00
Surinna Curtis
ceb545c080
Pass in correct "singleColumn" prop value when auto-columns is not used.
2017-06-24 15:29:46 -05:00
Surinna Curtis
a70468aa56
Support overriding media queries for deciding between single-column/multi-column layouts with a class
2017-06-24 15:29:46 -05: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
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
alpaca-tc
cf6fe4f8cb
Unobserve status on unmount ( #3851 )
2017-06-19 11:29:57 +02:00
Nolan Lawson
1d9f9352a6
handle resize in a debounce() ( #3834 )
2017-06-18 02:57:41 +02:00
Yamagishi Kazutoshi
df4f4e94b3
Add alt attribute to ImageLoader ( #3765 )
2017-06-15 14:10:41 +02:00
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
2017-06-12 20:02:17 +02:00
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
2017-06-11 17:07:35 +02:00
Eugen Rochko
b623dd12c1
Use preview image in <ImageLoader /> to provide immediate visual feedback ( #3595 )
...
before the full-size image is loaded
2017-06-06 19:30:17 +02:00
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
2017-06-06 13:20:07 +02:00
Yamagishi Kazutoshi
7a7bfa5170
Add quotes ESLint rules ( #3602 )
...
* Add quotes ESLint rule
* Add jsx-quotes ESlint rule
* Sort ESLint rules
2017-06-06 03:56:36 +02:00
Yamagishi Kazutoshi
66ca7157db
Add support key shortcut to Onboarding Modal ( #3517 )
...
* Add support key shortcut to Onboarding Modal
* this.state.pages -> this.pages
2017-06-05 10:09:14 +02:00
Eugen Rochko
8ee2eb5d2e
Allow mounting arbitrary columns ( #3207 )
...
* Allow mounting arbitrary columns
* Refactor column headers, allow pinning/unpinning and moving columns around
* Collapse animation
* Re-introduce scroll to top
* Save column settings properly, do not display pin options in
single-column view, do not display collapse icon if there is
nothing to collapse
* Fix one instance of public timeline being closed closing the stream
Fix back buttons inconsistently sending you back to / even if history exists
* Getting started displays links to columns that are not mounted
2017-06-04 01:39:38 +02:00
Yamagishi Kazutoshi
fda5c699c2
Add ESLint rule (object-curly-spacing) ( #3498 )
2017-06-01 17:25:10 +02:00
unarist
dbccdcc1b1
Focus the submit button on the boost modal ( #3494 )
...
Focus the submit button when boost modal is opened.
2017-06-01 04:20:10 +02:00
Nolan Lawson
c00ead8a72
Remove react-imageloader ( #3423 )
...
* Remove react-imageloader
* add eslint-disable-line
* improve image loading experience
* remove unneeded import
* use PureComponent
* Use componentWillMount instead of constructor
2017-05-31 17:07:25 +02:00
Nolan Lawson
0e12a8dab9
Improve scheduling of requestIdleCallback tasks ( #3477 )
2017-05-31 15:11:33 +02:00
Nolan Lawson
34a93ccf57
Add IntersectionObserverWrapper to cut down on re-renders ( #3406 )
2017-05-29 18:17:51 +02:00
Yamagishi Kazutoshi
4b11675bdc
Change anchor to button element ( #3321 )
...
Fix warning for ESLint (jsx-a11y/href-no-hash).
2017-05-26 14:10:37 +02:00
Nolan Lawson
2531c5953b
Replace onWheel listener with onScroll ( #3324 )
...
* Replace onWheel listener with onScroll
* Update column.js
2017-05-26 14:09:13 +02:00
Yamagishi Kazutoshi
1ec7c87001
Remove unnecessary constructors ( #3280 )
2017-05-24 17:55:16 +02:00
Yamagishi Kazutoshi
860ffc0560
Focus the submit button ( #3253 )
...
Focus the submit button when confirmation modal is opened.
Also, changed cancellation link to button.
This makes the meaning clearer.
2017-05-23 13:10:41 +02:00
Yamagishi Kazutoshi
2e112e2406
Improve eslint rules ( #3147 )
...
* Add semi to ESLint rules
* Add padded-blocks to ESLint rules
* Add comma-dangle to ESLint rules
* add config/webpack and storyboard
* add streaming/
* yarn test:lint -- --fix
2017-05-20 17:31:47 +02:00
Sorin Davidoi
2c405aed55
Performance improvements ( #3168 )
...
* refactor(components/status_list): Avoid quering scrollTop if not necessary
* refactor(components/dropdown_menu): Do not render items if not expanded
* refactor: Cherry-pick react-motion imports
* refactor(compose/privacy_dropdown): Do not render options if not open
* refactor(components/column_collapsable): Do not render children if collapsed
2017-05-20 14:58:13 +02:00
Sorin Davidoi
1548695c83
Avoid useless renders ( #3141 )
...
* feat(eslint): Set react/jsx-no-bind: error
* refactor(notifications/setting_toggle): Do not use bind
* refactor(components/dropdown_menu): Do not use bind
* refactor(components/autosuggest_textarea): Do not use bind
* refactor(compose/privacy_dropdown): Do not use bind
* refactor(compose/upload_form): Do not use bind
* refactor(components/status): Do not use bind
* refactor(components/onboarding_modal): Do not use bind
* refactor: PR feedback
* chore(notifications/setting_toggle): Lint
* refactor: PR feedback
2017-05-19 20:58:12 +02:00
Yamagishi Kazutoshi
dc559d6b7a
Downgrade eslint-plugin-jsx-a11y to v4.0.0 ( #3131 )
...
In Code Climate, eslint-plugin-jsx-a11y v4.0.0 is used.
Therefore, it seems that a warning is displayed.
ref https://github.com/codeclimate/codeclimate-eslint/pull/273
2017-05-19 11:44:28 +02:00
Yamagishi Kazutoshi
b8b7b506a2
Replace inline styles with stylesheet ( #3115 )
2017-05-19 11:42:54 +02:00
Sorin Davidoi
07e875972a
refactor: Import from react-router/lib ( #3117 )
2017-05-18 19:14:03 +02:00
geta6
bbaac89eb0
Enable to handle app immediately after closing modal ( #3082 )
2017-05-16 12:12:38 +02:00
Yamagishi Kazutoshi
2991a7cfe6
Use ES Class Fields & Static Properties ( #3008 )
...
Use ES Class Fields & Static Properties (currently stage 2) for improve class outlook.
Added babel-plugin-transform-class-properties as a Babel plugin.
2017-05-12 14:44:10 +02:00
Nolan Lawson
553e13144f
remove legacy decorators, use lodash.debounce ( #2830 )
2017-05-06 11:05:32 +02:00
R Tucker
61c33652ad
ui: check spoiler_text against regex filter ( #1635 ) ( #2665 )
...
* ui: check spoiler_text against regex filter (#1635 )
When filtering by regex, also check the spoiler_text if
present.
* ui: concatenate spoiler and content in reducer
Simplifies aa5b03c, clarifies intent of the field
2017-05-04 23:48:48 +02:00
Eugen Rochko
f5bf5ebb82
Replace sprockets/browserify with Webpack ( #2617 )
...
* Replace browserify with webpack
* Add react-intl-translations-manager
* Do not minify in development, add offline-plugin for ServiceWorker background cache updates
* Adjust tests and dependencies
* Fix production deployments
* Fix tests
* More optimizations
* Improve travis cache for npm stuff
* Re-run travis
* Add back support for custom.scss as before
* Remove offline-plugin and babili
* Fix issue with Immutable.List().unshift(...values) not working as expected
* Make travis load schema instead of running all migrations in sequence
* Fix missing React import in WarningContainer. Optimize rendering performance by using ImmutablePureComponent instead of
React.PureComponent. ImmutablePureComponent uses Immutable.is() to compare props. Replace dynamic callback bindings in
<UI />
* Add react definitions to places that use JSX
* Add Procfile.dev for running rails, webpack and streaming API at the same time
2017-05-03 02:04:16 +02:00