* Fix some doodle bugs and added Background color functionality
* added protections against accidental doodle erase, screen size changing
* resolve react warning about 'selected' on <option>
The padding trick was hard-coded to a 16:9 ratio, but we can use
width and height provided from OEmbed information and width
of the card itself to calculate a new height
* Fix#2102 - Implement hotkeys
Hotkeys on status list:
- r to reply
- m to mention author
- f to favourite
- b to boost
- enter to open status
- p to open author's profile
- up or k to move up in the list
- down or j to move down in the list
- 1-9 to focus a status in one of the columns
- n to focus the compose textarea
- alt+n to start a brand new toot
- backspace to navigate back
* Add navigational hotkeys
The key g followed by:
- s: start
- h: home
- n: notifications
- l: local timeline
- t: federated timeline
- f: favourites
- u: own profile
- p: pinned toots
- b: blocked users
- m: muted users
* Add hotkey for focusing search, make escape un-focus compose/search
* Fix focusing notifications column, fix hotkeys in compose textarea
* Add pagination in media modal
* Change array name
* Add an element class
* Avoid nested class
* Pull out the active class
* Use map instead of forEach
* Remove parentheses
* Fix#117 - Add ability to specify alternative text for media attachments
- POST /api/v1/media accepts `description` straight away
- PUT /api/v1/media/:id to update `description` (only for unattached ones)
- Serialized as `name` of Document object in ActivityPub
- Uploads form adjusted for better performance and description input
* Add tests
* Change undo button blend mode to difference
- 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
* 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
* 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
* 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
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
* 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
* 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>
* 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
- 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
* 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
* 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;
* 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.
* 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
`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.
* 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
* 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
* 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
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".
This PR adds a new notification cleaning mode, super perfectly tuned for accessibility, and removes the previous notification cleaning functionality as it's now redundant.
* w.i.p. notif clearing mode
* Better CSS for selected notification and shorter text if Stretch is off
* wip for rebase ~
* all working in notif clearing mode, except the actual removal
* bulk delete route for piggo
* cleaning + refactor. endpoint gives 422 for some reason
* formatting
* use the right route
* fix broken destroy_multiple
* load more notifs after succ cleaning
* satisfy eslint
* Removed CSS for the old notif delete button
* Tabindex=0 is mandatory
In order to make it possible to tab to this element you must have tab index = 0. Removing this violates WCAG and makes it impossible to use the interface without good eyesight and a mouse. So nobody with certain mobility impairments, vision impairments, or brain injuries would be able to use this feature if you don't have tabindex=0
* Corrected aria-label
Previous label implied a different behavior from what actually happens
* aria role localization & made the overlay behave like a checkbox
* checkboxes css and better contrast
* color tuning for the notif overlay
* fanceh checkboxes etc and nice backgrounds
* SHUT UP TRAVIS
* 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
* 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.
- Use unicode when selecting emoji through picker
- Convert shortcodes to unicode when storing text input server-side
- Do not convert shortcodes in JS anymore
* 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
* 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)
* 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
* 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
- Media toots are no longer auto-collapsed if the media is behind a CW
- Display names no longer appear clickable when a toot is collapsed
- Fixed#36 by adding reduplicating the media icon inside the SHOW
MORE/LESS
* 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
* Add overview of active sessions
* Better display of browser/platform name
* Improve how browser information is stored and displayed for sessions overview
* Fix test
* 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
* 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
* 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
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%
* 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