Commit graph

286 commits

Author SHA1 Message Date
Eugen Rochko 3b60832214 New error page graphic. Other error page improvements (#5099)
- 500.html generated with admin-set default locale if set
- Error page `<title>` includes Mastodon site title
- 500 title changed to "This page is not
  correct" (ref: <https://www.youtube.com/watch?v=2VCAP_seh1A>)
- 500 content appended with "on our end" to make clear it's
  not user's fault
2017-09-25 23:05:54 +02:00
Eugen Rochko 2c8e3fbbfb Generate 500.html with assets:precompile, remove loading from Google Fonts (#5067) 2017-09-25 04:04:04 +02:00
Eugen Rochko 2f079573ed In detail status view, display attachment uncropped if there's only one (#5054)
* In detail status view, display attachment uncropped if there's only one

* Make media spoiler the size of the media it hides, enable on static
2017-09-24 05:58:30 +02:00
Eugen Rochko dae0af1fd2 Change mobile layout breakpoint from 1024px to 630px (#5063)
630px = Drawer + 1 Column
2017-09-24 01:25:07 +02:00
Eugen Rochko 5b8d0ad71b Dropdown triangles a bit nicer, smoother scrolling on touch (#5062) 2017-09-24 00:40:10 +02:00
Eugen Rochko 233258c61b Fix media gallery CSS (#5064) 2017-09-24 00:33:26 +02:00
Lynx Kotoura 838f255fc2 Fix overflowing tabs in account__action-bar (#5056)
* Fix numbers in accounts columns

* Support edge compact-header
2017-09-23 21:06:16 +02:00
Eugen Rochko 1e02ba111a Add emoji autosuggest (#5053)
* Add emoji autosuggest

Some credit goes to glitch-soc/mastodon#149

* Remove server-side shortcode->unicode conversion

* Insert shortcode when suggestion is custom emoji

* Remove remnant of server-side emojis

* Update style of autosuggestions

* Fix wrong emoji filenames generated in autosuggest item

* Do not lazy load emoji picker, as that no longer works

* Fix custom emoji autosuggest

* Fix multiple "Custom" categories getting added to emoji index, only add once
2017-09-23 14:47:32 +02:00
Eugen Rochko 66126f3021 Add custom emojis to the emoji picker (#5052) 2017-09-23 05:40:28 +02:00
Eugen Rochko 846cd4e838 Switch from EmojiOne to Twemoji, different emoji picker (#5046)
* Switch from EmojiOne to Twemoji, different emoji picker

* Make emoji-mart use a local spritesheet

* Fix emojify test

* yarn manage:translations
2017-09-23 01:41:00 +02:00
Eugen Rochko 034fab39ab Make dropdowns render into portal, expand animation (#5018)
* Make dropdowns render into portal, expand animation

* Improve actions modal style
2017-09-22 04:59:17 +02:00
syui 63819c848d fix : mobile style of /about/more (#5034) 2017-09-21 14:30:21 +02:00
TomoyaShibata 8cb4561145 Remove unnecessary css property (#5025) 2017-09-20 15:26:22 +02:00
Eugen Rochko b35406b700 Fix custom emojis with non-1:1 aspect ratio being stretched (#5017) 2017-09-20 03:38:38 +02:00
unarist 4aea3f88a6 Hide sensitive image in default on the public pages (#5009)
Additionally, this restores previous background / text color for media spoiler.
2017-09-19 16:03:45 +02:00
Nolan Lawson 3d640dc8ac Add will-change to improve scrolling perf (#5001) 2017-09-18 23:29:15 +02:00
Lynx Kotoura 4c14ff659b Oauth code in input form and add description message (#4986)
* Oauth code in a input form and add description

* New authcode description
2017-09-17 15:23:44 +02:00
Lynx Kotoura 1e3b1d7211 Adjust landing pages 2 (#4967)
* Adjust landing pages 2

Fix styles of terms page
Remove action buttons from timeline in about page
Adjust styles of short description
Adjust form inputs
Set autocomplete off for username and email box in registration form. Remove line breakings.

* Revert removing action buttons
2017-09-16 18:39:11 +02:00
Eugen Rochko 4f0597d579 Give video player fluid max-width (#4935) 2017-09-14 04:03:00 +02:00
Eugen Rochko 2bbf987a0a Redesign video player (#4911)
* Redesign video player

* Use new video player on static public pages too

* Use media gallery component on static public pages too

* Pause video when hiding it

* Full-screen sizing on WebKit

* Add aria labels to video player buttons

* Display link card on public status page

* Fix fullscreen from modal sizing issue

* Remove contain: strict property to fix fullscreen from columns
2017-09-14 03:39:10 +02:00
unarist af10c9fbff Add section for protocol specific information on the admin page (#4910)
This PR adds section for protocol specific information, then always show
both of OStatus and ActivityPub. Specifically, this will help admins to
check PuSH subscription status and unsubscribe manually, even `protocol`
has been changed.

This also includes below changes:

* Add `overflow: hidden` to prevent float leaking
* Add missing fields for ActivityPub
2017-09-12 23:06:10 +02:00
Eugen Rochko 6867681c7c Add script to make embedded iframes autosize (#4853) 2017-09-09 16:23:44 +02:00
Lynx Kotoura 3c45d3963a Scrollable tables in settings pages (#4857)
* Scrollable tables in settings pages

* Add space before curly brace
2017-09-09 02:26:58 +02:00
PFM 7d853b514a Use <button> instead of <div role="button"> (#4835) 2017-09-07 16:18:41 +02:00
voidSatisfaction 13ffa3c59e Add Smartphone screen favourite back button and adjust styles (#4813)
* Feat add get-back button on favourite columnHeader

* Style adjust nice looking get-back button

* Fix delete media query and add padding right

* fix: restore padding and add lastchild style for back-button
2017-09-06 17:32:15 +02:00
PFM d8d2a54741 fix text position of NSFW for video file (#4819) 2017-09-06 13:55:47 +02:00
Lynx Kotoura 4c3dd0b254 Adjust status embeds (#4808)
* Adjust status embeds

Adjust styles of embed code. Adjust styles of embed pages. Fix overflow of embed-modal.

* Remove trailing whitespace

* Using width from the variable
2017-09-05 12:31:24 +02:00
PFM 2a5d1d5a1b fix text position of NSFW in Safari (Mac/iPhone) (#4570) 2017-09-02 18:52:56 +02:00
Lynx Kotoura cfe39fb58d Adjust settings pages (#4765)
* views: Adjust heading positions

* Adjust settings pages

Adjust label. Adjust tables. Adjust admin/reports/* pages. Fix 2FA QR code style for narrow devices. Widen several pages. Increase contrast.

* Remove trailing whitespace
2017-09-02 15:49:28 +02:00
Yamagishi Kazutoshi ba8fb2fd0f Add text color style for noscript link (#4772) 2017-09-02 14:02:15 +02:00
Cygnan a75aa62f5b Adjust padding on the public profile page (#4757)
* Fix a style issue on the public profile page for some mobile browsers

Signed-off-by: Cygnan <email@cygnan.com>

* Set padding-bottom to 20px

Signed-off-by: Cygnan <email@cygnan.com>
2017-09-01 21:01:23 +02:00
Eugen Rochko 7dc5035031 Make PreviewCard records reuseable between statuses (#4642)
* Make PreviewCard records reuseable between statuses

**Warning!** Migration truncates preview_cards tablec

* Allow a wider thumbnail for link preview, display it in horizontal layout (#4648)

* Delete preview cards files before truncating

* Rename old table instead of truncating it

* Add mastodon:maintenance:remove_deprecated_preview_cards

* Ignore deprecated_preview_cards in schema definition

* Fix null behaviour
2017-09-01 16:20:16 +02:00
Yamagishi Kazutoshi 2305f7c391 Use system's default font on non web UI pages (#4553)
* Use system's default font on non web UI pages

* Remove import for Redirect
2017-09-01 16:13:31 +02:00
Eugen Rochko d1a78eba15 Embed modal (#4748)
* Embed modal

* Proxy OEmbed requests from web UI
2017-08-31 03:38:35 +02:00
Eugen Rochko e95bdec7c5 Update status embeds (#4742)
- Use statuses controller for embeds instead of stream entries controller
- Prefer /@:username/:id/embed URL for embeds
- Use /@:username as author_url in OEmbed
- Add follow link to embeds which opens web intent in new window
- Use redis cache in development
- Cache entire embed
2017-08-30 10:23:43 +02:00
Lynx Kotoura 07994eed00 Adjust "signed in as" pages (#4720)
* Adjust "signed in as" pages


Fix min-width


Set width of .account-header .name

To apply text-overflow and overflow settings
Set overflow for detailed-status__display-name

* Remove trailing whitespace
2017-08-28 00:01:07 +02:00
Lynx Kotoura bab9afaa09 Adjust public profile pages (#4713)
* Adjust account-grid in public profiles

Full-width card on mobile UI. Set break-word for long name and ID. Fix margin.

* Reduce padding-bottom of public profiles

* Revive next prev buttons in mobile public profiles

In followers followees pages.

* Revert break-word for username

* Fix overflow of display_name

Need re-setting text-overflow and overflow in display: block;
2017-08-27 23:59:51 +02:00
Eugen Rochko 26402ee2cb Adjust RTL styles (#4712) 2017-08-27 13:35:18 +02:00
Lynx Kotoura 8ecfdd8795 Set margin between character-counter and compose-form__buttons (#4698)
For some languages publish translation is long.
2017-08-26 14:23:20 +02:00
Lynx Kotoura 18f69fb964 Adjust styles of landing pages. (#4682)
* Adjust about.scss

* Delete trailing whitespace.
2017-08-25 17:19:35 +02:00
Damien Erambert f72ed21cd6 Don't load Roboto webfont when system font is used in the app (#4591)
* Don't load Roboto webfont when system font is used in the app

* remove trailing whitespace
2017-08-24 19:28:49 +02:00
Lynx Kotoura 143b77e10d Increase contrast in landing pages (#4567)
* Increase contrast in about and about/more page

* Lighten em color in landing pages

* Increase contrast in landing pages


Fix about.scss
2017-08-21 21:59:03 +02:00
Eugen Rochko 4cbb638604 Fix visual line-break glitch with .invisible parts of links (#4655) 2017-08-21 17:59:34 +02:00
unarist f26758dc01 Fix .information-board style for Safari (#4602)
flex-basis: 0 allows make flexbox smaller than its contents on Safari <10.

https://github.com/philipwalton/flexbugs#1-minimum-content-sizing-of-flex-items-not-honored
2017-08-20 20:45:44 +02:00
Eugen Rochko ca7ea1aba9 Redesign public profiles (#4608)
* Redesign public profiles

* Responsive design

* Change public profile status filtering defaults and add options

- No longer displays private/direct toots even if you are permitted access
- By default omits replies
- "With replies" option
- "Media only" option

* Redesign account grid cards

* Fix style issues
2017-08-16 17:12:58 +02:00
Clworld f814661fca Make share intent modal to make "signed in as" shown. (#4611)
* Make share intent modal to make "signed in as" shown.

* fix glitch on mobile.
2017-08-16 16:48:44 +02:00
Eugen Rochko 3c6503038e Add protocol handler. Handle follow intents (#4511)
* Add protocol handler. Handle follow intents

* Add share intent

* Improve code in intents controller

* Adjust share form CSS
2017-08-14 04:53:31 +02:00
Yamagishi Kazutoshi d9a1fb134a Fix emoji picker scrollbar style (#4572) 2017-08-10 13:41:12 +02:00
TheInventrix c9fd6f386c unify short description styling (#4548)
apply same style class to the About description on both the landing page
and the about/more page
2017-08-08 01:50:15 +02:00
Lynx Kotoura a3e53bd442 Adjust tags and accounts page (#4534)
* Adjust tag and accounts page

* Remove units from 0px paddings
2017-08-07 20:33:06 +02:00
Sorin Davidoi 8eb6d171e6 feat: Cache status height to avoid expensive renders (#4439)
* feat: Cache status height to avoid expensive renders

* feat: Escape content and emojify in reducers

* fix(css): Remove backface-visibility: hidden from .scrollable

* fix(statuses): Avoid creating DOMParses inside a loop
2017-08-07 20:32:03 +02:00
Eugen Rochko df605f0f8b Add "signed in as" header to some pages (#4523) 2017-08-05 04:24:58 +02:00
unarist 94e233e7b2 Fix column-back-button style for some browsers (#4484)
Use `text-align: unset` instead of `text-align: start` which Edge doesn't support for now.

Also remove default margin on Safari.
2017-08-02 13:09:37 +02:00
Yamagishi Kazutoshi 8ccb3b96ab Re-add outline (#4474)
* Re-add outline

* respect default of web browser
2017-08-01 01:40:31 +02:00
unarist 82b4cf4acb Fix button overflow on confirmation modal for mobile (#4465) 2017-07-31 15:19:30 +02:00
Yamagishi Kazutoshi bb85043f46 Disable sensitive button when with content warnings (#4460) 2017-07-31 05:06:56 +02:00
Sorin Davidoi e44f03bc71 Improve accessibility (part 7) (#4457)
* fix(media_modal): Keyboard navigation

* fix(column_back_button): Use native button

* fix(media_gallery): Keyboard navigation

* fix(status_content): Make CW content focusable
2017-07-31 00:18:15 +02:00
Yamagishi Kazutoshi 29abc9438c Remove outline from focused toot (#4448)
* Remove outline from focused toot

* change style
2017-07-30 16:27:51 +02:00
Yamagishi Kazutoshi f91284d230 Do not create empty a element when there is no e-mail (#4455)
Empty a element is created when there is no business e-mail input.
2017-07-30 16:24:18 +02:00
Lynx Kotoura ea33cdc30b Set contact address in about/more as mailto link (#4450)
* Set contact address as mailto link

To be able to copy long email address

* Set style for mailto link
2017-07-30 12:56:04 +02:00
Damien Erambert ea144ba302 Use a fainted text color for <hr> elements in the landing page (#4443)
* Use a fainted text color for <hr> elements in the landing page

* remove trailing whitespace
2017-07-29 21:20:52 +02:00
Eugen Rochko b3c44e95a9 Improve actions modal style (#4423) 2017-07-28 15:30:53 +02:00
Lynx Kotoura afb593b44e Fix protruded infomation board section in about/more page (#4415)
* Fix protruded infomation board section

Set "flexwrap: wrap" for sections. Set upper and lower padding for each section, and adjust clearances around sections accordingly. Settings for viewport threshold 500px is no more needed.

* Fix mistake of reducing information-board padding

In according with this fix, additional padding setting  for maximum 840px width is no more needed.
2017-07-28 13:34:44 +02:00
Sorin Davidoi 296bfa23aa fix(actions-modal): Inconsistent margins (#4418) 2017-07-28 13:34:06 +02:00
Yamagishi Kazutoshi 62a9da62a6 Fix column header in landing page (regression from #4405) (#4416) 2017-07-28 13:32:41 +02:00
Sorin Davidoi 50d38d7605 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
unarist 73890c3cac Fix timeline height on landing page for Safari (#4392)
`height: 100%` in `align-self: stretch` flexboxes doesn't work on Safari < 11.

https://bugs.webkit.org/show_bug.cgi?id=137730

This workaround uses flexbox instead of `height: 100%` to stretch height.
2017-07-27 15:49:56 +02:00
Sorin Davidoi 6a6a62f13f 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
Lynx Kotoura aa8fa71df6 Fix padding in hero container of landing page (#4373)
* Fix padding in hero container, landing page

Erase hero container padding to fit registration form to full width. By this setting, heading padding disappears, so I adjust heading padding.

* Specify attribute strictly for heading padding

To overwrite padding-bottom in superior settings.

* Make padding shorthand more concise
2017-07-26 13:45:49 +02:00
Lynx Kotoura 9891ff80f9 Adjust mobile landing page (#4366)
* Adjust mobile landing page

Change mobile viewport threshold to 840px in consideration of padding. Fix loss of "container hero" padding in about/more under 675px.

* Fix indent
2017-07-25 21:31:56 +02:00
Lynx Kotoura 9f97c8c750 Fix multiple-gif display in user page (#4364)
Divide media-items to equal width, and hide overlaps.
2017-07-25 19:12:57 +02:00
Clworld edadc93757 Allow longer link text on landing page (reduce padding for Mobile) (#4363)
* Allow longer link text on landing page (reduce padding for Mobile)

* remove empty line
2017-07-25 16:20:26 +02:00
Sorin Davidoi de105d64d5 fix(getting_started): No scrollbar if not needed (#4350) 2017-07-25 01:05:35 +02:00
Eugen Rochko 07d93716aa Improve remote profile disclaimer (#4342)
* Improve remote profile disclaimer

* yarn run manage:translations
2017-07-24 20:05:29 +02:00
Eugen Rochko 1306d637a2 Fix oddities with public profile CSS (#4341)
* Fix oddities with public profile CSS

* Remove trailing whitespace
2017-07-24 17:56:50 +02:00
Lynx Kotoura b3e7beb7c5 Perfectly center mastodon logo on mobile landing page (#4339)
Setting only padding-left made the logo left-shifted on mobile page. Margin-right was old setting for adjusting clearance between old logo and letter "Mastodon".
2017-07-24 16:52:47 +02:00
Eugen Rochko 2374d63536 Redesign extended information page (#4322)
* Redesign extended information page

* Remove unused keys

* Add $ui-base-lighter-color variable to SCSS
2017-07-24 15:09:08 +02:00
Yamagishi Kazutoshi 1e665a0bf4 Add space to toot paragraph in landing page (#4331) 2017-07-24 10:43:59 +02:00
Eugen Rochko ed4c754fff Add background to media modal (#4317) 2017-07-23 20:28:31 +02:00
Eugen Rochko 1e0c7a0afc Add loading indicator animation (#4316) 2017-07-23 20:28:18 +02:00
Eugen Rochko 3a3b556065 Improve noscript message and style (#4315) 2017-07-23 20:28:06 +02:00
Sorin Davidoi ff26b72333 fix(getting_started): Scroll on mobile (#4312) 2017-07-23 14:50:26 +02:00
Eugen Rochko 0e0f18ce7c New logo (#4306)
* Add new logo

* Remove unused images
2017-07-23 02:40:39 +02:00
Ondřej Hruška db73ac92d7 Changed landing page cloud animation to be more relaxed and smoother (#4304) 2017-07-22 22:27:06 +02:00
Eugen Rochko 311871eefc Turn clouds on landing page into SVGs, use SCSS variables to color them (#4299) 2017-07-22 16:36:54 +02:00
Sorin Davidoi 3817704806 feat(compose): Change media query for compact mode to max-height: 400px (#4291) 2017-07-21 14:22:29 +02:00
Yamagishi Kazutoshi f2390e2803 Dynamicaly change avatar and header bg from account setting (#4289) 2017-07-21 12:47:16 +02:00
Eugen Rochko 7bf7ed6123 Fix #3220 - Show avatar/header on edit profile page (#4288) 2017-07-21 05:28:51 +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
Sorin Davidoi f24b81e27f feat(css): Remove border radius from WebKit's scrollbars (#4278) 2017-07-20 00:20:54 +02:00
abcang 4d42a38954 Improve admin page (#4121)
* Improve admin page

* Fix test

* Add spec

* Improve select style
2017-07-18 16:38:22 +02:00
Lynx Kotoura d1c3e35d3f Fix style settings for images in media modal (#4220)
* Shrink too wide single image modal

Fix too wide react-swipeable-view-container

Fix 0067f80 shrinking all react-swipeable-view-container

Change to apply max-width of react-swipeable-view-container only under media-modal.

Fix b30b03b just a typo

* Centering contents in image-loader

Centering small img, canvas, and video in image-loader.
2017-07-16 11:52:11 +02:00
Sorin Davidoi 72bd73f605 Small style fixes (#4206)
* fix(components/media_modal): Center horizontally in Firefox

* fix(components/status_list): Do not remove load more button
2017-07-14 22:31:25 +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 c29c20ab3c Add background color for spoiler input, like toot textarea (#4181) 2017-07-13 14:49:57 +02:00
Eugen Rochko 056b5ed72f Improve UI of admin site settings (#4163) 2017-07-12 03:24:04 +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
STJrInuyasha 7a889a8e12 Remote following success page (#4129)
* Added a success page to remote following
Includes follow-through links to web (the old redirect target) and back to the remote user's profile

* Use Account.new in spec instead of a fake with only id
(fixes spec)

* Fabricate(:account) over Account.new

* Remove self from the success text
(and all HTML with it)
2017-07-10 18:05:06 +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
Yamagishi Kazutoshi 76318f8830 Don't use preview when image size is unknown (#4113) 2017-07-08 17:21:59 +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
abcang f76e71825d Improve Activity stream spoiler (#4088) 2017-07-06 21:31:03 +02:00
Mantas 34c8a46d7d Remove ugly blue highlight on Android browsers (#4031) 2017-07-06 21:26:07 +02:00
Shin Kojima e7c0d87d98 Fix embedded SVG fill attribute (#4086)
* Fix embedded SVG fill attribute

SCSS darken/lighten functions may not return a color value, but a color
name like "white".  See following example:

https://www.sassmeister.com/gist/c41da93b87d536890ddf30a1f42e7816

This patch will normalize $color argument to FFFFFF style.

I also changed the function name from "url-friendly-colour" to
"hex-color", Because...

1. The name "url-friendly" is not meaningful enough to describe what it
   does.

2. It is familier to me using "color" rather than "colour"

    kojima:kojiMac mastodon[master]$ git grep -l colour
    app/javascript/styles/boost.scss
    spec/fixtures/files/attachment.jpg

    kojima:kojiMac mastodon[master]$ git grep -l color
    .rspec
    .scss-lint.yml
    Gemfile.lock
    app/javascript/mastodon/features/status/components/action_bar.js
    app/javascript/styles/about.scss
    app/javascript/styles/accounts.scss
    app/javascript/styles/admin.scss
    app/javascript/styles/basics.scss
    app/javascript/styles/boost.scss
    app/javascript/styles/compact_header.scss
    app/javascript/styles/components.scss
    app/javascript/styles/containers.scss
    app/javascript/styles/footer.scss
    app/javascript/styles/forms.scss
    app/javascript/styles/landing_strip.scss
    app/javascript/styles/reset.scss
    app/javascript/styles/stream_entries.scss
    app/javascript/styles/tables.scss
    app/javascript/styles/variables.scss
    app/views/admin/subscriptions/_subscription.html.haml
    app/views/layouts/application.html.haml
    app/views/layouts/error.html.haml
    app/views/manifests/show.json.rabl
    bin/webpack-dev-server
    config/initializers/httplog.rb
    public/500.html
    public/emoji/1f1e6-1f1e8.svg
    public/emoji/1f1ec-1f1f8.svg
    public/emoji/1f1f3-1f1ee.svg
    public/emoji/1f1fb-1f1ec.svg
    spec/fixtures/requests/idn.txt
    yarn.lock

* Add semicolon
2017-07-06 15:27:02 +02:00
Eugen Rochko bf50e3e5ae Fix height issue in report modal 2017-07-01 14:50:10 +02:00
Yamagishi Kazutoshi 0e09048537 Fix broken style in media gallery (regression from #3963) (#4014) 2017-06-30 13:40:00 +02:00
Naoki Kosaka 049cea30b0 Fix media-gallery, overflow is hidden. (#4008) 2017-06-30 05:37:17 +02:00
Eugen Rochko 12e7c81dd8 Turn report screen into a modal (#3965) 2017-06-27 18:07:21 +02:00
Sorin Davidoi be92babd00 Responsive images in media gallery (#3963)
* feat(components/media_gallery): Responsive images

* fix(components/media_gallery): Link to image URL
2017-06-27 13:46:37 +02:00
Yamagishi Kazutoshi 8f2c91568c Maintain aspect ratio for preview image (#3966) 2017-06-27 13:43:53 +02:00
Eugen Rochko 5e8d037e27 Fix #3910 - Require OTP authentication to disable 2FA (#3935)
* Fix #3910 - Require OTP authentication to disable 2FA. Also, remove ability
to generate new OTP backup codes *after* initial backup codes were handed
out during activation

* Restore recovery code re-generation

* Improve display of some 2FA elements
2017-06-25 23:51:46 +02:00
Eugen Rochko f7301bd5b9 Add overview of active sessions (#3929)
* Add overview of active sessions

* Better display of browser/platform name

* Improve how browser information is stored and displayed for sessions overview

* Fix test
2017-06-25 16:54:30 +02:00
unarist 1fc096ec75 Fix elephant in onboarding modal being very small sized on small devices (#3932) 2017-06-24 23:18:32 +02:00
unarist 21c2bc119c Clean column collapsible (#3931)
* Remove unused column_collapsable.js
* Remove old styles
* Extract `> div`  style to independent class
2017-06-24 23:18:11 +02:00
Sorin Davidoi d8c4781377 fix: Apply :hover, :focus and :active only when multiple columns 2017-06-23 13:48:46 +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
unarist aa58cca040 Set cursor:pointer only when necessary (#3857) 2017-06-19 18:27:07 +02:00
Eugen Rochko 4a618908e8 Account deletion (#3728)
* Add form for account deletion

* If avatar or header are gone from source, remove them

* Add option to have SuspendAccountService remove user record, add tests

* Exclude suspended accounts from search
2017-06-14 18:01:27 +02:00
Eugen Rochko 5104bd7988 Fix unclickable onboardin modal regression (#3724) 2017-06-13 00:39:31 +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
Yamagishi Kazutoshi 72133fbed6 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 9b03cf0ddd Fix #3658 - Update RTL styles (#3669) 2017-06-09 19:46:25 +02:00
Clworld a3715598cc adjust the size of 'column-header__back-button' (retry) (#3662) 2017-06-09 16:22:28 +02:00
ふぁぼ原 e3fae6f52c adjust the size of column-header__back-button (#3654) 2017-06-09 15:05:26 +02:00
Eugen Rochko 8902e265b4 Add explit admin actions to (re)subscribe/unsubscribe remote accounts (#3640)
* Add explit admin actions to (re)subscribe/unsubscribe remote accounts
and re-download avatar/header

* Improve how admin NSFW toggle looks
2017-06-08 14:58:22 +02:00
Sorin Davidoi 8acadeea76 fix: Warn if JavaScript is disabled (#3634) 2017-06-08 00:52:56 +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
ふぁぼ原 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
2017-06-06 16:56:10 +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
Yamagishi Kazutoshi f6e2309e70 Fix column buttons overflow in Japanese (#3552) 2017-06-04 14:52:02 +02:00
unarist 1dfd27a028 Fix all icons in the column header being hilighted (#3554) 2017-06-04 14:51:06 +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 3ea3f24a02 Change toggle state when click label (#3530) 2017-06-03 14:40:24 +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
Eugen Rochko 3fa8512474 Fix video having black border on top due to regression from #2608 (#3392)
The combination of object-fit, relative position 50% from top and translating it
back upwards 50% is what allows us to crop the video properly, so it needs to
be +50%-50%
2017-05-28 19:11:47 +02:00
Eugen Rochko 3836d293a1 Add missing background center on public profile headers (#3340) 2017-05-27 00:54:00 +02:00
Eugen Rochko bd21afb5ed Replace onboarding elephant with friendlier graphic, shorter animation (#3337)
on status fade-in, fix buttons not having pointer cursor
2017-05-27 00:53:25 +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
Eugen Rochko a098d08d12 Fix style regression of buttons not inheriting document font by default (#3310) 2017-05-25 21:15:41 +02:00
Nolan Lawson bc39ad37c4 Fix "contains" CSS for Chromium <57 (#3317)
Fixes #3277. I've tested in QupZilla on Mac and can confirm it fixes the issue, and that Chrome 58 is not affected (because it has Grid).
2017-05-25 21:14:56 +02:00
unarist b89ab7e69d Add flex: 0 0 auto to some components to avoid bugs on iOS9 (#3313) 2017-05-25 18:59:55 +02:00
Nolan Lawson 71b266377c Remove unnecessary action bar wrapper divs (#3299) 2017-05-25 14:15:12 +02:00
unarist 807c192fcf Fix load more feature on the Account media gallery (#3293)
* Add load more button for large screens
* Fix `next` state value on the first loading
* Don't load if `isLoading || !hasMore`
* Start load on near the bottom
2017-05-25 05:22:46 +02:00
Sorin Davidoi 8e4d1cba00 Lazy load toots using IntersectionObserver (#3191)
* refactor(components/status_list): Lazy load using IntersectionObserver

* refactor(components/status_list): Avoid setState bottleneck

* refactor(components/status_list): Update state correctly

* fix(components/status): Render if isIntersecting is undefined

* refactor(components/status): Recycle timeout

* refactor(components/status): Reduce animation duration

* refactor(components/status): Use requestIdleCallback

* chore: Split polyfill bundles

* refactor(components/status_list): Increase rootMargin to 300%

* fix(components/status): Check if onRef is not defined

* chore: Add note about polyfill bundle splitting

* fix(components/status): Reduce animation duration to 0.3 seconds
2017-05-24 17:55:00 +02:00