Commit Graph

1167 Commits

Author SHA1 Message Date
Thibaut Girka 6b6e633c09 Update MediaGallery and Video props when folding/unfolding CWs in detailed statuses 2018-11-25 11:29:56 +01:00
Thibaut Girka b41d60f2d8 Render placeholder when inline video container width isn't known 2018-11-25 11:29:56 +01:00
Thibaut Girka b3ff35a75c Move URLs to backend in their own file 2018-11-19 15:56:38 +01:00
Thibaut Girka c78c80f807 [Glitch] Fix loading indicator inconsistency
Port 3cecf3e5b9 to glitch-soc
2018-11-13 15:54:04 +01:00
Thibaut Girka 5ebbaffaa3 [Glitch] Use local instead of global loading indicator for timelines, account timelines
Port dd00cd19d2 to glitch-soc
2018-11-13 15:54:04 +01:00
Thibaut Girka bf92e7aaa6 [Glitch] Implement adding a user to a list from their profile
Port bb5558de62 to glitch-soc
2018-11-09 14:50:08 +01:00
Thibaut Girka 2b2facbbdf [Glitch] Port some of upstream's getting started footer links 2018-10-31 10:07:41 +01:00
Thibaut Girka 7e18e95716 Add a local setting for inline preview cards 2018-10-30 17:51:06 +01:00
Thibaut Girka b21615e957 [Glitch] Fix dimensions of preview cards, fix crash in web UI, fix warning
Port 9c38c5daa3 to glitch-soc
2018-10-30 17:51:06 +01:00
Thibaut Girka ac9780b844 [Glitch] Include preview cards in status entity in REST API
Port 795f0107d2 to glitch-soc
2018-10-30 17:51:06 +01:00
Thibaut Girka 8f4fab65a1 Do not rely on hover for upload form options if touch is used 2018-10-27 19:06:49 +02:00
Thibaut Girka 0c7f710be1 [Glitch] Surround mid-text display names with bdi tags
Port 7861c5f108 to glitch-soc
2018-10-22 18:57:20 +02:00
Thibaut Girka 323ae1403a [Glitch] fix: initial state of PrivacyDropdown is should not be null
Port bebe8ec887 to glitch-soc
2018-10-22 18:41:34 +02:00
Thibaut Girka 04bedd237b Attempt at fixing inline video player 2018-10-21 16:09:07 +02:00
Thibaut Girka 13c3fa8d36 Focus the UI when pressing Escape in the CW field 2018-10-20 15:00:39 +02:00
Thibaut Girka b13c34de3a Fix fav/boosts hotkeys not working on detailed statuses 2018-10-18 19:00:59 +02:00
Thibaut Girka b0527a4ce7 Handle alt+enter in the spoiler input as shortcut for secondary post
Fixes #780
2018-10-14 12:00:21 +02:00
Thibaut Girka bb1103d974 Really fix HotKeys 2018-10-10 17:40:06 +02:00
Thibaut Girka 721aec40cd Define some local-settings hints 2018-10-09 18:10:54 +02:00
Thibaut Girka 26409f3e8e Add support for hints (or extended descriptions) in local-settings pages 2018-10-09 18:10:54 +02:00
Thibaut Girka 6cd793f0ac Change “preferences” icon to match settings page icon 2018-10-09 18:10:54 +02:00
Thibaut Girka edb9ec8543 Add icons for each of the local-setting pages 2018-10-09 18:10:54 +02:00
Thibaut Girka d0b1369a85 Fix app-wide hotkeys randomly failing to work 2018-10-09 12:10:51 +02:00
Thibaut Girka 96c3d26870 Move “Show action buttons in collapsed toots” option 2018-10-08 13:49:25 +02:00
Thibaut Girka faecb35fe0 Switch from selects to radio buttons for local settings, improve styling 2018-10-08 13:49:25 +02:00
Thibaut Girka a3677a828d [Glitch] Change documentation URL
Port 28401962ca to glitch-soc
2018-10-07 22:56:24 +02:00
Thibaut Girka 7cc7843109 Do not scroll timelines when *closing* media modals
Media modals push an history state so that pressing back on mobile closes them.
We made sure to not scroll when opening them, but not when *closing* them,
which caused some issues in rare cases.
2018-10-07 12:08:32 +02:00
Thibaut Girka c6e4c48942 [Glitch] Add a confirmation dialog when hitting reply and the compose box isn't empty 2018-10-05 19:08:52 +02:00
Thibaut Girka a9e8f98a9d Make hidden media clickable in account media gallery 2018-10-02 22:00:57 +02:00
Thibaut Girka d82c495c0f Add media description (or status spoiler) in account media gallery 2018-10-02 22:00:57 +02:00
Thibaut Girka eb85427576 [Glitch] Honour displayMedia setting in accountMedia gallery
Inspired by b79ab15859
2018-10-02 22:00:57 +02:00
Thibaut Girka 6ad7606909 [Glitch] Add support for new display_media setting
Port f7a6f9489d to glitch-soc

[API] [vanilla required] [glitch-soc optional] initial_state show_sensitive_media boolean changed to show_media string with options "default", "hide_all", "show_all"
2018-10-01 16:48:55 +02:00
Spencer Alves 4e60a0d543 Add option to hide action bar in collapsed toots 2018-09-30 08:31:50 +02:00
David Yip c065717b67
Merge pull request #681 from ThibG/glitch-soc/fixes/accessibility
Port various accessibility improvements from upstream
2018-09-29 19:01:19 -05:00
David Yip 2bb3c8c944
Merge pull request #755 from ThibG/glitch-soc/features/optional-reply-selection
Make pre-selection of usernames optional when replying to a toot
2018-09-29 19:01:05 -05:00
David Yip 19968912fa
Merge pull request #754 from ThibG/glitch-soc/fixes/scroll-compose-into-view
Scroll to textarea when composing a toot
2018-09-29 19:00:31 -05:00
David Yip 5b43d7bcbf
Merge pull request #745 from ThibG/glitch-soc/fixes/grey-out-button
Disable the “TOOT” button (and secondary toot button) if the toot text is empty
2018-09-29 19:00:06 -05:00
Thibaut Girka 86b2b009dd Make pre-selection of usernames optional when replying to a toot
Fixes #751
2018-09-28 21:01:09 +02:00
Thibaut Girka 15134beb1e Fix styling issue in “Compose box options” local settings page 2018-09-28 18:55:44 +02:00
Thibaut Girka 9594c68532 Scroll to textarea when composing a toot 2018-09-28 18:44:55 +02:00
Thibaut Girka fa18859b20 [Glitch] Adjust beforeUnload conditions
Port 05f90e3695 to glitch-soc
2018-09-28 17:09:25 +02:00
Thibaut Girka d3426ed87a Disable the “TOOT” button (and secondary toot button) if the toot text is empty 2018-09-21 23:20:06 +02:00
Thibaut Girka 9e8d776a77 [Glitch] Display verified links in glitch flavor
Port front-end changes from f4d549d300 to glitch-soc
2018-09-21 12:56:42 +02:00
Thibaut Girka 5833cc41c2 [Glitch] Add edit profile action button to profile
Port some parts from 1a7a74ff76
2018-09-21 12:56:42 +02:00
Thibaut Girka c1701ae2a8 [Glitch] Fix “Toots” tab highlighting for replies and media timelines
Port front-end changes from f8b54d229f
2018-09-21 12:56:29 +02:00
Thibaut Girka 925c185ef9 Prevent clicks on video from initiating selections 2018-09-21 12:56:13 +02:00
Thibaut Girka 657805f444 Fix thread CW expansion not being reset when changing threads 2018-09-16 12:41:20 +02:00
Thibaut Girka cf142e8556 [Glitch] Highlight active tab in action bar
Port 7b7c26063e to glitch-soc
2018-09-13 17:13:29 +02:00
Thibaut Girka 1cb3af21c5 Autofocus comment textarea in report modal 2018-09-13 17:03:48 +02:00
Thibaut Girka b3c698d6f4 Auto-focus emoji picker's search field 2018-09-13 15:32:23 +02:00
Thibaut Girka 307fb338ee Fix composer actions modal 2018-09-11 22:04:06 +02:00
Thibaut Girka 59de2868c1 Fix media description in various media modals 2018-09-11 18:29:19 +02:00
Thibaut Girka 65f625cf23 [Glitch] Hide floating action button on thread views
Port f66a786029 to glitch-soc
2018-09-11 16:29:46 +02:00
Thibaut Girka d9a92d5040 [Glitch] After click to embed video, autoplay it
Port 478ca39e5e to glitch-soc
2018-09-10 19:53:55 +02:00
Thibaut Girka bc5009cd45 [Glitch] Click card to embed external content
Port front-end changes from f7765acf9d to glitch-soc
2018-09-10 19:53:55 +02:00
Thibaut Girka dfa6fb4927 [Glitch] Fix oEmbed image_modal src.
Port 25b0d7538e to glitch-soc
2018-09-10 19:53:55 +02:00
Thibaut Girka cc58265216 [Glitch] Ensure link thumbnails are not stretched to super low quality
Port front-end changes from c36b9cc5a6 to glitch-soc
2018-09-10 19:53:55 +02:00
Thibaut Girka 49eaf72faf [Glitch] Add embed_url to preview cards
Port front-end changes from c083816c24 to glitch-soc
2018-09-10 19:53:55 +02:00
Thibaut Girka 324ce93368 Add preferences for notification badges 2018-09-07 20:37:17 +02:00
Thibaut Girka ba4521b175 Move compose box options to their own page 2018-09-07 20:37:17 +02:00
Thibaut Girka b28cbb8b25 Add unread notifications badge to the mobile navbar 2018-09-07 20:37:17 +02:00
Thibaut Girka 2cdc00bc8b Add unread notifications badge to the navigation bar 2018-09-07 20:37:17 +02:00
Thibaut Girka 0f155af32a Add notification badge to favicon 2018-09-07 20:37:17 +02:00
Thibaut Girka d315f1dc02 Count unread notifications when window loses focus 2018-09-07 20:37:17 +02:00
Thibaut Girka c8875b4d8a Keep track of unread notifications when the notification column isn't mounted 2018-09-07 20:37:17 +02:00
Thibaut Girka d8b2f15b23 Pause video playback if toot is collapsed or CWs folded (fixes #146) 2018-09-05 11:58:56 +02:00
Thibaut Girka c0275cdcb2 Fix interactions between CW and sensitive flag when spoilersAlwaysOn is set 2018-09-04 19:40:57 +02:00
Thibaut Girka b6ce5fa3fb Fix emoji autosuggest when using a CDN for assets 2018-09-04 15:05:31 +02:00
Thibaut Girka be644e3b7c Media gallery styling closer to upstream's 2018-09-04 13:31:55 +02:00
Thibaut Girka bd437f8077 Add admin links to status and account menus (fixes #673)
If the current logged-in user is an admin, add quick links to the admin
interface in account and toot dropdown menu. Suggestion by @ashkitten
2018-09-03 18:19:11 +02:00
Thibaut Girka 8e862ecf8d [Glitch] Add aria-label to floatingActionButton
Port 7c12c7b124 to glitch-soc
2018-09-03 18:18:39 +02:00
Thibaut Girka e915bc3e9e Fixes columns scrolling to top when opening media modal
Fixes #700
2018-09-03 14:24:10 +02:00
Thibaut Girka 530da545a5 [Glitch] Give focused status a sensible aria-label for screen readers
Port 248df68c36 to glitch-soc
2018-08-31 19:49:51 +02:00
Thibaut Girka d8fbd74c47 [Glitch] Add aria-label to column regions
Port 66dbb59aa1 to glitch-soc
2018-08-31 19:49:29 +02:00
Thibaut Girka c6942a5283 Add option to not automatically unfold content warnings matching a regexp
Fixes #678
2018-08-31 18:35:03 +02:00
Thibaut Girka 5c400a2842 Allow text inputs in local settings dialog 2018-08-31 18:35:03 +02:00
Thibaut Girka 9d2739d74d Add a setting to automatically unfold all content warnings 2018-08-31 18:35:03 +02:00
Thibaut Girka 130bdb5ee8 [Glitch] Show compose form on delete & redraft when in mobile layout
Port 025fbb8285 to glitch-soc
2018-08-31 18:33:46 +02:00
Thibaut Girka 0f1db47a7e Fix search results on compose box 2018-08-31 18:33:46 +02:00
Thibaut Girka b4f548fa18 Fix account header showing on search page 2018-08-31 18:33:46 +02:00
Thibaut Girka 4a686ddf8a [Glitch] On the mobile UI, move the search column to the right
Port 20bb90ced6 to glitch-soc
2018-08-31 18:33:46 +02:00
Thibaut Girka 4686b3fa76 [Glitch] Hide search from Compose on mobile devices
Port 0893b16695 to glitch-soc
2018-08-31 18:33:46 +02:00
Thibaut Girka 37a00d4c1d [Glitch] Add search item to tab bar for mobile devices
Port c9cbb8de70 to glitch-soc
2018-08-31 18:33:46 +02:00
Thibaut Girka 76a3f373e3 [Glitch] Use withRouter for TabsBar
Port 61e6275781 to glitch-soc
2018-08-31 18:33:46 +02:00
Thibaut Girka 5f035a2a1a [Glitch] Move "compose" on mobile to floating action button
Port e72db6d9dd to glitch-soc
2018-08-31 18:33:46 +02:00
Thibaut Girka 70c308c4aa [Glitch] When search enabled, display hint in search popout
Port 7901f9f63e to glitch-soc
2018-08-31 18:33:46 +02:00
Thibaut Girka c20b27a9f4 Restrict querySelectorAll to the upload form component 2018-08-30 13:20:37 +02:00
Thibaut Girka 1544ac4e27 Add confirmation dialog when posting media without description
Fixes #211
2018-08-30 13:20:37 +02:00
Thibaut Girka 171e54eb46 Add opt-in feature to have the spoilers field always on (fixes #634) 2018-08-29 14:29:36 +02:00
Thibaut Girka 24b6811a6e [Glitch] Implement tag auto-completion by history
Port 460e380d38 to glitch-soc
2018-08-28 19:52:28 +02:00
Thibaut Girka 937cd03a9a [Glitch] Add missing video descriptions
Port ac092d03e7 to glitch-soc
2018-08-27 20:21:23 +02:00
Thibaut Girka 3106c81b1e [Glitch] Wait until relationship is loaded before showing follow button
Port cd049454be to glitch-soc
2018-08-27 20:21:12 +02:00
Thibaut Girka 3c49daeb8d Add glitch-soc local setting to display reply counters
Defaults to false.
2018-08-22 20:29:55 +02:00
Thibaut Girka d62ea55d51 Move layout options to their own section 2018-08-22 20:29:55 +02:00
Thibaut Girka 801919fc9b Add hashtag trendline support to glitch-soc flavour
Port Mastodon's hashtag stats thing to glitch-soc.
This doesn't change how hashtags are ordered, and doesn't add a trending
hashtags section, but it does change how hashtag searches are rendered,
displaying a trend line alongside each hashtag.
2018-08-22 19:27:06 +02:00
Thibaut Girka 360fbf1bd4 Add pinned accounts editor 2018-08-22 16:18:23 +02:00
Thibaut Girka 9fbaaefe59 Split list editor into components and containers 2018-08-22 16:18:23 +02:00
Thibaut Girka d69f045681 Fix ColumnLink keys in getting_started_misc 2018-08-22 16:18:23 +02:00
Thibaut Girka c789181626 [Glitch] Add hotkey for follow requests
Port 25f6f41052 to glitch-soc
2018-08-20 21:25:02 +02:00
Thibaut Girka b230c04e00 Make the privacy dropdown button not look strange when using top placement
Inspired by 8fe1f8d4ce
2018-08-20 20:10:53 +02:00
Thibaut Girka 0c091475df Make non-link ColumnLinks behave as links 2018-08-20 20:08:13 +02:00
Thibaut Girka 432f6b88b0 Focus CW field when enabling it, focus compose textarea when disabling it
Port a99179d31f and 09147186b7
to glitch-soc
2018-08-19 16:56:31 +02:00
Thibaut Girka 7423c0c130 Various minor upload description fixes 2018-08-18 17:53:20 +02:00
Thibaut Girka 534439e73b Add focal points support in the composer 2018-08-18 17:53:20 +02:00
Thibaut Girka 9782ac017b Refactor in preparation for focal points modal 2018-08-18 17:53:20 +02:00
Thibaut Girka 4a6bc2482a [Glitch] Defer scrollIntoView after DOM is drawn 2018-08-17 14:46:37 +02:00
Thibaut Girka 50cd70b3e9 Fix incorrect prop type for ComposerReply.status 2018-08-16 21:19:20 +02:00
Thibaut Girka 7595ae4090 Fix one GettingStarted ColumnLink not having a key 2018-08-16 20:59:12 +02:00
Thibaut Girka 494eaab5b1 Slightly more aggressive video preloading
- Preload video metadata if the video is loaded in detailed view, as it is
  likely to get played, and metadata is useful for seeking in the video.
- Preload video data if it's fullscreen as it is extremely likely to get
  played right after being put in fullscreen (although those are two steps).
- Preload video data if the user has clicked the position slider, as the video
  will play as soon as the mouse button is released, and video metadata is
  needed to properly seek into the video.
2018-08-14 21:56:23 +02:00
Thibaut Girka c4e8402ef9 Fix bug when clicking on video position slider before starting the video 2018-08-14 21:56:23 +02:00
Thibaut Girka f0fa6e3a7c Prevent default event handling when clicking on the video position slider
This prevents accidental text selection and avoids opening the toot containing
the video in the dynamic column when clicking on the position slider.
2018-08-14 21:56:23 +02:00
Thibaut Girka 7067b64de3 Implement public profile endorsements in glitch-soc
Port WebUI changes from f2404de871 to glitch-soc
2018-08-10 16:25:46 +02:00
Thibaut Girka 175c2155a9 [Glitch] Compensate for scrollbar disappearing when media modal
Port 60df87f6f0 to glitch-soc
2018-08-01 00:18:42 +02:00
Thibaut Girka d2b3eebe00 [Glitch] Show media modal on public timeline
Port e0b1e17bd0 to glitch-soc
2018-08-01 00:18:42 +02:00
Thibaut Girka 88b593a63f Drop glitch-style account bio fields
Upstream's implementation has been merged a while ago and is the preferred
way to set fields, as it is the only one compatible with upstream and is
more user-friendly.

This commit deletes the legacy glitch-soc FrontMatter functionality in order
to clean up the code and make it easier to maintain.
2018-07-31 16:26:36 +02:00
Thibaut Girka b02bfe86ce Don't reset scroll position when opening a modal 2018-07-30 14:32:02 +02:00
Thibaut Girka 3eb3c21327 Treat the App Setting link as a proper link (fixes #375) 2018-07-30 14:31:45 +02:00
Thibaut Girka 88b7ccc2ca [Glitch] Improve WebUI account action bar
Mostly a port of 2ccef52a4f to glitch-soc
2018-07-30 14:24:35 +02:00
Thibaut Girka 28a59e4e80 Move CW field just above main textarea 2018-07-28 23:25:42 +02:00
Thibaut Girka 358e3a4c32 Get rid of Collapsable, use CSS instead
Change inspired by 691107263c
2018-07-28 23:25:42 +02:00
Thibaut Girka d3783b864c Refactor reply indicator and show compact list of attachments 2018-07-28 23:24:15 +02:00
Thibaut Girka e3bf8c8aa1 Show reply indicator for empty toots, not undefined toots (fixes #610)
Fix a regression introduced by 612b00d1bb
2018-07-28 23:24:15 +02:00
Thibaut Girka c057aeb76b [Glitch] Add documentation for “p” hotkey
Port ed50c2393a0f12f88f1102f8cf8beca3bf711158 to glitch-soc
2018-07-26 22:19:01 +02:00
Thibaut Girka a8911616b6 Add hotkey variants to keyboard shortcuts description
Port 89c6d2bd6bc014ca6487c8f2569f8252fb3ef5dc to glitch-soc
2018-07-26 22:19:01 +02:00
Thibaut Girka 82ab5aacb2 Prevent scrolling main frame when navigating in image gallery with arrow keys 2018-07-26 08:42:25 +02:00
Thibaut Girka 02326a4322 [Glitch] Use LoadingBar instead of blur to indicate that an image is loading
Port 955d5d36e8 to the glitch-soc flavour
2018-07-24 21:20:18 +02:00
Thibaut Girka 1769a7e9aa Use the same description string as upstream for the “x” hotkey 2018-07-24 21:15:21 +02:00
Thibaut Girka b1ed2b1d03 Fix focusing search bar with hotkeys 2018-07-24 21:15:21 +02:00
Thibaut Girka c600bcfe1d Fix focusing composer textarea on “new toot” hotkey 2018-07-24 21:15:21 +02:00
Thibaut Girka 037228cf03 Fix routing issues, especially keyboards shortcuts changing location 2018-07-24 21:14:50 +02:00
Thibaut Girka 1aa253c41d Display custom emoji in account notes in WebUI (fixes #595) 2018-07-21 21:44:49 +02:00
Thibaut Girka 57f31b361f Add an option restricting secondary toot privacy to that of the toot being replied to 2018-07-12 19:15:44 +02:00
Thibaut Girka d67cb13d84 Use options rather than a boolean
This prepares for a third option that would restrict privacy to
privacyPreference(replyPrivacy, sideArmBasePrivacy)
2018-07-12 11:22:34 +02:00
Thibaut Girka 8c8707771d Do not store duplicate reply_privacy 2018-07-12 11:22:34 +02:00
Ash Levy 6f06d16b1e add option to enable auto visibility on secondary toot button 2018-07-12 11:22:34 +02:00
Thibaut Girka 612b00d1bb Display reply indicator even when replying to contentless toot (fixes #564) 2018-07-10 22:53:04 +02:00
Thibaut Girka 00c1386b9d [Glitch] Fix filters not affecting notifications in web UI
Port cfeb3beb4e to glitch-soc
2018-07-10 14:06:04 +02:00
Thibaut Girka 0bb1720495 Add client-side custom filter support to glitch-soc
Port cdb101340a to glitch-soc,
but without dropping support for regexp filters yet.
2018-07-10 14:06:04 +02:00
Ash Levy e96a4434c7 add keybind in composer textarea for secondary submit 2018-07-10 10:53:22 +02:00
Thibaut Girka f0161702d8 [Glitch] Submit report using meta key
Port 64d7a63f18 to glitch-soc
2018-06-21 22:28:50 +02:00
Thibaut Girka a01faecfcb [Glitch] Add redraft function
Port bd0791d800 to glitch-soc
2018-06-16 15:09:28 +02:00
David Yip fac6e392e9
Port emojimart 2.6.1 changes to glitch flavour
See also the following commits:

- 0c3ce41031
- 268d90e810
2018-06-12 17:43:50 -05:00
David Yip f8d50a4070
Merge pull request #509 from ThibG/glitch-soc/fixes/router-history-navigation
Use history.state to decide whether we should goBack() or go to / (fixes #247)
2018-06-06 23:56:48 -05:00
Thibaut Girka b9fdeceb3c Make active bookmarks red (fixes #493) 2018-05-31 14:39:48 +02:00
Thibaut Girka cc396f085d Use history.state to decide whether we should goBack() or go to / (fixes #247)
So far, glitch-soc used history.length to decide whether to call `goBack()` or
go to / in order to not leave the webUI. This made clicking the “Back” button
go to the “Getting started” column instead of going back in the browser's
history when such an action would leave the web UI, but also when:
- The WebUI is refreshed (F5)
- A tab is restored
- The history length reaches its maximum (e.g., 50 in Firefox)

This commit fixes these shortcomings by checking `window.history.state`.
Indeed, we only want to go back in the browser's history when the current
location has been reached from within the WebUI, which only happens via
`pushState` as far as I know. Since browser store the serialized state in
the browser history, this also survives page reload and session restoration.
2018-05-31 14:39:02 +02:00
Thibaut Girka f86d280fd6 Use props.router instead of context.router, as we are using withRouter 2018-05-31 14:39:02 +02:00
Thibaut Girka e396fbfe3b Fix direct timeline 2018-05-31 14:37:13 +02:00
Thibaut Girka e7b3a4263e [Glitch] Fix low-contrasted cancel button of reply indicator
Port 86efccce2a to glitch-soc
2018-05-29 21:25:47 +02:00
Thibaut Girka 08dbe29e29 [Glitch] Improve load gap styling in web UI
Port 45c9f16f71 to glitch-soc
2018-05-29 21:25:28 +02:00
Thibaut Girka fbc25bdd2d [Glitch] Do not crash in getStatusIds when there is a gap in the timeline
Port b1938d7853 to glitch-soc
2018-05-29 21:25:28 +02:00
Thibaut Girka 6020a21130 [Glitch] Fix LoadMore on account media gallery
Port 3523aa440b to glitch-soc
2018-05-29 21:25:28 +02:00
Thibaut Girka 4eba8c50c3 [Glitch] Allow clients to fetch notifications made while they were offline
Port cbf97c03bb to glitch-soc
2018-05-29 21:25:28 +02:00
Thibaut Girka 0ad3eedd4c [Glitch] Allow clients to fetch statuses made while they were offline
Port 9a1a55ce52 to glitch-soc
2018-05-29 21:25:28 +02:00
Thibaut Girka 8b98afa781 [Glitch] Replace onScrollToBottom with onLoadMore
Port b0664a5e6c to glitch-soc
2018-05-27 20:40:58 +02:00
Thibaut Girka a81ed7b205 Do not needlessly refresh pinned toots
Port missing part of 6ae70a92c9 to glitch-soc
2018-05-27 20:40:58 +02:00
Thibaut Girka 60addb14ce [Glitch] Change icon for domain blocks
Port fa04945365 to glitch-soc
2018-05-27 20:40:58 +02:00
Thibaut Girka b7508940b7 [Glitch] Add option to show only local toots in timeline preview
Port missing changes from 4e4f1b0dcb to glitch-soc
2018-05-27 20:39:25 +02:00
Thibaut Girka 1fa3586db5 [Glitch] Use streaming API for standalone timelines on /about and /tag pages
Port 0128b86d30 to glitch-soc
2018-05-27 20:39:25 +02:00
Thibaut Girka d959d04133 Change direct message warning to match upstream 2018-05-27 15:46:00 +02:00
Thibaut Girka d253449ff0 Port upstream's result section headers (fixes #366) 2018-05-27 11:02:44 +02:00
Thibaut Girka 18d9a7fd71 Fix caret position after inserting suggestions (fixes #281) 2018-05-26 12:17:03 +02:00
Thibaut Girka d8793e1bee Remove unneeded code now that attachment URL isn't appended to toots 2018-05-26 12:17:03 +02:00
Thibaut Girka 4c91215e1f [Glitch] Use .star-icon instead of hardcoding color in detailed statuses
Port 2587fcdd27 to glitch-soc
2018-05-25 11:16:11 +02:00
Thibaut Girka 07baa1ddb5 [Glitch] Open video modal on public UI
Port d9b2f84c92 to glitch-soc
2018-05-17 18:37:00 +02:00
ThibG 80aad16e10
Merge pull request #405 from ThibG/glitch-soc/features/dm-from-menu
[Glitch] Feature: Direct message from menu
2018-05-16 20:17:08 +02:00
Thibaut Girka 784712791d [Glitch] Reword the direct message warning
Port 53c2164e9c to glitch-soc
2018-05-16 19:45:30 +02:00
Thibaut Girka 97c69de416 [Glitch] Feature: Direct message from Statuses
Port 904a2479dd to glitch-soc
2018-05-16 19:45:30 +02:00
Thibaut Girka a5fac975f3 [Glitch] Feature: Direct message from menu
Port d1f34151ae to glitch-soc
2018-05-16 19:45:30 +02:00
Thibaut Girka dfa60cb0a8 Fix modals testing for props.noEsc (fixes #482) 2018-05-15 10:39:12 +02:00
ThibG bd4decb7db
Merge pull request #479 from ThibG/glitch-soc/fixes/modal-root-keyup
Fix root modal's keyup handling (Fixes #478)
2018-05-11 23:04:12 +02:00
Thibaut Girka 769a48495c Fix root modal's keyup handling (Fixes #478) 2018-05-11 22:42:32 +02:00
Thibaut Girka f6ec8c4821 [Glitch] Use plaintext value for field value tooltips in web UI
Port d185f3ddaf to glitch-soc

This doesn't change anything for glitch-style fields, but those will go
away eventually
2018-05-10 14:11:23 +02:00
Thibaut Girka 5d8052e715 Add bot badge to account headers in the WebUI 2018-05-10 00:05:08 +02:00
Thibaut Girka 2f01935cba Adapt account fields rendering code in the WebUI to match upstream 2018-05-10 00:03:34 +02:00
Thibaut Girka 658ac4396c Hide media in report modal regardless of whether they are marked sensitive
The rationale behind this is that if the user wants to report violent media,
they might not want to see it repeatedly. The “sensitive” property is still
kept, displaying different messages for hidden media depending on whether
they are marked as sensitive.
2018-05-07 15:00:55 +02:00
Thibaut Girka 7972464e71 [Glitch] Also display replies in report modal
Port c88e12fca622c46a361a5c751a529e77aa5bf2ba to glitch-soc
2018-05-07 14:55:16 +02:00
beatrix 92f192e9b1
Merge pull request #461 from ThibG/glitch-soc/fixes/emoji-picker-placement
[Glitch] Place emoji picker top if it is closer to the bottom of the viewport
2018-05-06 11:33:09 -04:00
Thibaut Girka bfa5bdde2c [Glitch] Place emoji picker top if it is closer to the bottom of the viewport
Port ad5d3134e4 to glitch-soc
2018-05-05 16:58:20 +02:00
Thibaut Girka 356d0214c9 Implement tootsuite-style account fields
glitch-soc-style still in backup, both sharing the same SCSS style
2018-04-29 18:48:45 +02:00
beatrix f4ed38272b
Merge pull request #401 from ThibG/glitch-soc/features/unfold-thread
Port the “unfold thread” feature from Mastodon's UI to glitch-soc flavour
2018-04-26 11:34:14 -04:00
Thibaut Girka 240833c023 Fix actions modal on mobile (fixes #441) 2018-04-23 23:18:36 +02:00
Thibaut Girka 64d8d0464d Add show more/less toggle for entire threads in web UI
Inspired from b6003afcdb but using component
properties instead of redux store for hidden/revealed state.
2018-04-22 19:19:01 +02:00
Thibaut Girka 2888f74c12 Refactor the infamous three-valued boolean into two booleans, trying to simplify the logic 2018-04-22 19:18:15 +02:00
Thibaut Girka 259bc9840b [Glitch] Fix style of legacy column headers
Backports daefbd66a6
2018-04-22 19:17:10 +02:00
beatrix 06fc278e4c
Merge pull request #432 from ThibG/glitch-soc/features/reblog-private
Glitchsoc-specific changes to allow boosting own private toots
2018-04-22 12:32:58 -04:00
beatrix 125e8c7f5a
Merge pull request #427 from ThibG/glitch-soc/fixes/scroll-behavior
Improve ScrollableList behavior
2018-04-22 12:09:52 -04:00
beatrix cd5728b176
Merge pull request #434 from ThibG/glitch-soc/fixes/public-inline-video
Fix video player on toot public views
2018-04-22 12:09:11 -04:00
beatrix e88ce27855
Merge pull request #435 from ThibG/glitch-soc/features/public-modals
[Glitch] Show media modal on public pages
2018-04-22 12:07:29 -04:00
Thibaut Girka e4dff10934 Fix video player on toot public views 2018-04-20 16:08:46 +02:00
Thibaut Girka 7a68079b3f [Glitch] Show media modal on public pages
Port ff7941e652 to glitch-soc
2018-04-20 15:58:36 +02:00
Thibaut Girka 694337d9bb Fix auto-collapsed toots making the TL jump (fixes #417) 2018-04-19 11:30:42 +02:00
Thibaut Girka 3068384dbc Glitchsoc-specific changes to allow boosting own private toots 2018-04-19 11:24:29 +02:00
Thibaut Girka 52229405ed [Glitch] Make detailed status' media gallery standalone 2018-04-19 11:16:18 +02:00
Thibaut Girka dcc1c10937 [Glitch] Center thumbnails on focus point
Port the display part of the following commits to glitch-soc:
* 90f12f2e5a
* b170627ceb
* 11697d6894
* 56eb5c3f34
2018-04-19 11:16:18 +02:00
ThibG 21837b291e
Merge pull request #430 from ThibG/glitch-soc/features/bookmarks
Fix the bookmark column pinning fix…
2018-04-17 11:46:31 +02:00
Thibaut Girka 1aac83ef47 Fix the bookmark column pinning fix… 2018-04-17 11:24:07 +02:00
ThibG 84d0aa7b26
Merge pull request #429 from ThibG/glitch-soc/features/bookmarks
Fix pinning the bookmarks column (fixes #428)
2018-04-16 23:24:51 +02:00
Thibaut Girka 54f5170f59 Fix pinning the bookmarks column (fixes #428) 2018-04-16 22:52:45 +02:00
Thibaut Girka 5d96c5ac41 [Glitch] Responsively enforce 16:9 ratio on video thumbnails in web UI
Port the video-player part of 036dd98abb to
glitch-soc. MediaGallery part ignored since it has diverged quite a bit.

This fixes #423
2018-04-14 17:35:45 +02:00
Thibaut Girka c5dd4ed1d5 [Glitch] Fix media button type
Port ecdac9017e to glitch-soc
2018-04-14 12:30:55 +02:00
Thibaut Girka dfe8abb8cd [Glitch] Handle preference to always display sensitive media
Port the UI part of 76f3d5d16b to glitch-soc
2018-04-14 12:27:14 +02:00
David Yip b7804028c2
Merge pull request #419 from ThibG/glitch-soc/features/bookmarks
Bookmarks
2018-04-13 16:38:15 -05:00
David Yip eb72c3398c
Merge pull request #418 from ThibG/glitch-soc/fixes/composer-dropdowns
Place composer dropdown menus top if they are closer to the bottom of the viewport
2018-04-12 03:28:22 -05:00
David Yip 0b326950bf
Merge pull request #416 from ThibG/glitch-soc/features/media-modal
Port various media modal improvements to glitch-soc
2018-04-12 00:20:19 -05:00
Thibaut Girka acb434b0c9 Add glitch-soc front-end support for bookmarks
Unlike boosts and like, there is no confirmation dialog as misclicking
can be recovered without another user seeing it.
2018-04-11 21:05:34 +02:00
Thibaut Girka e74e5c7eb9 Place composer dropdown menus top if they are closer to the bottom of the viewport 2018-04-10 20:52:31 +02:00
Thibaut Girka 0fb5ea5d15 Fix video modal 2018-04-09 00:11:10 +02:00
Thibaut Girka a4fa8c9064 [Glitch] Avoid using JS to set height in MediaModal
Port fa5c867e0e to glitch-soc
2018-04-08 23:18:24 +02:00
Thibaut Girka 87071d9e81 [Glitch] Improved media modal
Port 4e929b2d17 to glitch-soc
2018-04-08 23:15:25 +02:00
Thibaut Girka 0b86ec4e7f [Glitch] Allow to open a modal for embedded photo
Port bf7757cbbc to glitch-soc
2018-04-08 23:06:33 +02:00
Thibaut Girka a896f601fa Fix video playback in glitch-soc detailed statuses 2018-04-08 12:22:12 +02:00
Thibaut Girka ca9f022a80 [Glitch] Fix: Prevent submission using same logic as submit button disabling.
Port 6a895e1ab3 to glitch-soc
2018-04-02 20:04:18 +02:00
beatrix 3304cb681d
Merge pull request #380 from ThibG/glitch-soc/features/domain-block-ui
Port #6628 to glitch-soc flavour
2018-03-30 14:50:02 -04:00
Thibaut Girka 48bcf4d6e8 [Glitch] Remove pointer events on the entire UI when a dropdown menu is open
Port 913a38111f to glitch-soc
2018-03-30 12:45:23 +02:00
Thibaut Girka 218cc261d1 Add the domain blocks UI to Getting Started Misc 2018-03-30 10:07:33 +02:00
Thibaut Girka afa813d71f Add basic domain block UI 2018-03-30 10:07:33 +02:00
Thibaut Girka 79da0ad7a2 Update all known users' domain_blocking relationship instead of just one's 2018-03-30 10:07:33 +02:00
Thibaut Girka b5948044b3 [Glitch] Display unfollow button even if account moved
Backport 3987bd18a4 to glitch-soc
2018-03-29 14:59:20 +02:00
Thibaut Girka a59c146bf8 [Glitch] Profile redirect notes
Port WebUI changes from 58cede4808
2018-03-29 14:59:20 +02:00
David Yip a387f99659
Merge pull request #388 from ThibG/glitch-soc/federated-pinned-toots
Port WebUI toots/with reply/media tabs and pinned toots to glitch
2018-03-18 20:17:15 -05:00
Thibaut Girka 6f0e50f9a0 [Glitch] Federate pinned statuses over ActivityPub
Port 9110db41c5 to glitch
2018-03-16 23:16:20 +01:00
Thibaut Girka f00af46d70 [Glitch] Add "Toots/Toots with replies/Media" tab below profile header
Port 5131012505 to glitch
2018-03-16 23:16:20 +01:00
Thibaut Girka 19f7bd1582 Show media on report UI
Ports 219aac7800 to glitch-soc
2018-03-16 15:27:13 +01:00
Thibaut Girka 22870985da Add close modal icon to report dialog (#6591)
Port 379cdfaac5 to glitch-soc flavour
2018-03-16 15:27:13 +01:00
Thibaut Girka 9cf574d0d2 Port federated reports UI to glitchsoc
Port 41a01bec23 to glitch-soc
2018-03-16 15:27:13 +01:00
Gô Shoemake 22f2750578
Merge pull request #384 from ThibG/glitch-soc/features/no-media-url
Remove text requirement when media attached from statuses (fixes #381)
2018-03-12 13:09:42 -07:00
Gô Shoemake 2395a4c313
Merge pull request #344 from chriswmartin/getting-started-badge-merge
merge tootsuite pr #6313 into glitch & move getting_started dispatch stuff to mapDispatchToProps
2018-03-12 13:07:59 -07:00
Thibaut Girka 841ef606a9 Remove text requirement when media attached from statuses (fixes #381)
Ports cfa9b6e13a to glitchsoc
2018-03-12 18:39:07 +01:00
Thibaut Girka 25c5223617 Port #6627 and #6636 to glitch-soc 2018-03-09 12:10:22 +01:00
cwm 0ddeed9377 add 'this.props' to fetchLists 2018-01-23 01:23:56 -06:00
cwm 939075899e remove unused openOnboardingModal from getting_started 2018-01-22 19:38:34 -06:00
cwm 00be9eb3fe merge tootsuite pr #6313 into glitch 2018-01-22 19:05:13 -06:00
David Yip e7a0840f8c
Merge pull request #336 from ThibG/glitch-soc/features/tag-warning
Display a warning when composing unlisted toots with something looking like a hashtag
2018-01-20 16:37:52 -06:00
Thibaut Girka 1287b2782b Display a warning when composing unlisted toots with something looking like a hashtag
This is a backport of b6af88192f to the glitch flavour.
2018-01-19 12:59:33 +01:00
David Yip bcd86404da
Port 7badad7797 to glitch frontend 2018-01-18 10:25:37 -06:00
David Yip 708ec07e27
Style fixes to make eslint happier, hopefully 2018-01-18 09:13:07 -06:00
kibi! b9f4896830 Fixes to drawer and CWs 2018-01-14 15:31:00 -08:00
beatrix cd6674606f
Merge pull request #329 from KnzkDev/scss-refactor
SCSS Refactor
2018-01-14 17:48:02 -05:00
beatrix 39f231f3da
Merge pull request #328 from glitch-soc/feature/glitchy-elephant-friend
Add glitchy elephant friend
2018-01-14 17:40:27 -05:00
kibi! 0fb3bd09e9 Oops this should have been a part of last commit 2018-01-14 14:21:41 -08:00
kibi! 1fa03e026a Fixes onboarding modal (#318) 2018-01-14 14:13:24 -08:00
David Yip c2669f93d0
Fix eslint errors. #294. 2018-01-14 05:56:43 -06:00
David Yip 756a9cd139
Run slightly less afoul of accessibility checks. #294.
This makes the clickable element an interactive element, but doesn't add
alt text and makes it not-obvious that you can click the elefriend.  On
one hand, this goes against good practice; on the other hand, it's not
*supposed* to be obvious that you can click the elefriend.
2018-01-14 05:07:08 -06:00
David Yip e64cc311dd
Introduce a bit of luck into the elefriend selection. #294. 2018-01-14 04:46:21 -06:00
David Yip cd1377de7f
Bind click event to elefriend cycling. #294. 2018-01-14 03:35:25 -06:00
David Yip 1dbb6b5e08
Set glitchy elephant friend variant in initial state. #294.
Also lay some groundwork needed to interactively change the
glitchfriend.

The codebase uses "elefriend" because it's shorter and didn't require me
to realign the actions in actions/compose.js.  Same idea, though.
2018-01-14 03:06:11 -06:00
David Yip 1e0b707018
Add the shrinking glitchy elefriend. #294. 2018-01-13 21:27:39 -06:00
David Yip 835eec8a4c
Prototype out glitchy elephant friend. #294.
Glitched elephant friends kindly provided by @ncls7615.
2018-01-13 21:27:14 -06:00
ncls7615 a9be680807
Fix padded-blocks error 2018-01-14 04:12:41 +09:00
ncls7615 6a73c8c8a2
Initial scss refactor 2018-01-14 03:41:20 +09:00
ncls7615 cf5789146b
Fix dropdown text 2018-01-12 23:18:25 +09:00
cwm aef4b1af66 Refactor /api/web APIs to use the centralized axios instance (tootsuite pr #6223) 2018-01-09 10:51:14 -06:00
cwm b535f24fe5 Use const instead of let for constant (tootsuite pr #6106) 2018-01-09 10:35:36 -06:00
cwm 0d4dcb5fb2 change key to path in timeline settings containers 2018-01-09 09:58:40 -06:00
cwm 6d1c325167 Rename key to path in actions and reducers for settings (tootsuite pr #6105) 2018-01-09 09:48:14 -06:00
cwm 5963630c63 Prevent duplicate load of favourites (tootsuite pr #5931) 2018-01-09 08:46:35 -06:00
kibigo! b5874c1428 Fixes to search dropdown 2018-01-06 15:34:01 -08:00
Ondřej Hruška 9f29fd31ba
fixed ctrl enter 2018-01-06 19:58:04 +01:00
kibigo! c71d848855 my global .gitignore excluded this file ;_; 2018-01-05 21:40:02 -08:00
kibigo! e4bc013d6f Threaded mode~ 2018-01-05 21:16:43 -08:00
kibigo! 6932b464e6 Fixed improper dropdown func binding for #293 + toot button spacing 2018-01-05 21:02:53 -08:00
kibigo! ad10a80a99 Styling and autosuggest fixes for #293 2018-01-05 20:43:16 -08:00
kibigo! 8bf9d9362a Fixes composer mounting issue with #293 2018-01-05 18:30:06 -08:00
beatrix f441770e50
Merge pull request #290 from chriswmartin/web-push-updates
Web push updates
2018-01-05 18:29:57 -05:00
beatrix b4e667f86b
Merge pull request #295 from chriswmartin/getting-started-key-fix
unique ColumnLink keys in getting_started
2018-01-05 18:29:40 -05:00
cwm 9fc08e4861 add key to lists div 2018-01-05 09:00:48 -06:00
cwm 6236577734 change how list ColumnLink keys are determined 2018-01-05 08:12:34 -06:00
kibigo! d7ce339c2e WIP <Compose> Refactor; Fin~ 2018-01-04 21:17:30 -08:00
kibigo! 42f50049ff WIP <Compose> Refactor; 1000 tiny edits 2018-01-04 18:33:13 -08:00
kibigo! b4a3792201 WIP <Compose> Refactor; <ActionsModal>; dropdowns 2018-01-04 18:31:00 -08:00
kibigo! 083170bec7 WIP <Compose> Refactor; SCSS ed. 2018-01-04 18:23:46 -08:00
kibigo! 8713659dff WIP <Compose> Refactor; <OnboardingModal> ed. 2018-01-04 18:21:59 -08:00
kibigo! 3c29f57404 WIP <Compose> Refactor; <Drawer> ed. 2018-01-04 18:21:59 -08:00
kibigo! 924ffe81d4 WIPgit status <Compose> Refactor; <Composer> ed. 2018-01-04 18:21:59 -08:00
cwm 4ce44ba470 remove unused 'saveSettings' from column_settings_container 2017-12-30 16:42:26 -06:00
cwm 0dce26b82b web push updates (tootsuite PRs #5879, #5941, #6047) 2017-12-30 11:45:01 -06:00
beatrix 7347bc7334
Merge pull request #286 from chriswmartin/merge-vanilla-updates-into-glitch
Merge various small vanilla updates into glitch
2017-12-26 17:03:29 -05:00
cwm 20ad071931 Set direction style to reply indicator (tootsuite pr #6006) 2017-12-26 14:20:41 -06:00
cwm 337c2e77ee Fix layout for RTL (tootsuite pr #6014, #6018) 2017-12-26 13:49:53 -06:00
cwm 2bbd22e91c Rename settingKey to settingPath (tootsuite pr #6046 & #6098) 2017-12-26 13:21:20 -06:00
cwm cc6a2ffd0a use 'flavours/glitch/' prefix in new imports 2017-12-26 10:41:44 -06:00
cwm 22818d2a16 Add mute, block, conversation mute actions to detailed status dropdown menu 2017-12-26 10:13:38 -06:00
beatrix 60d415bc5e
Merge pull request #266 from chriswmartin/getting-started-improvements
Getting started column improvements
2017-12-21 18:47:07 -05:00
David Yip 7bb99ca3cf
Add data-status-by back to DetailedStatus component. Fixes #273. 2017-12-21 13:22:33 -06:00
cwm d736739e8f <kbd> instead of <code> in KeyboardShortcuts component (tootsuite pr #6049) 2017-12-21 13:04:40 -06:00
David Yip dbd5f8b9a5
Wrap <Avatar> in account header in a link to that account's page. Fixes #245. 2017-12-21 05:25:16 -06:00
cwm 9042f9a813 add keyboard shortcuts to getting started (fixes #275) 2017-12-20 09:50:29 -06:00
cwm 14aae9c05c missed a semicolon 2017-12-17 22:21:15 -06:00
cwm be50e45a74 use makeMapStateToProps 2017-12-17 22:00:25 -06:00
cwm e4ebbf4f07 use list-ul icon in list header and web/lists 2017-12-17 21:25:18 -06:00
kibigo! e677dda07c Fixes #244 to make search results scrollable 2017-12-15 12:49:23 -08:00
cwm 17e53b931c code style fixes 2017-12-12 23:07:12 -06:00
cwm 9719983f2d move list items into an array, don't unnecessarily concat misc nav item 2017-12-12 22:50:20 -06:00
cwm b6ded7119e travis fixes 2017-12-12 08:50:31 -06:00
cwm 9b7208f4b4 readded connect for onboarding modal 2017-12-12 00:17:07 -06:00
cwm b358483ef2 remove unneeded imports from getting_started_misc 2017-12-12 00:09:18 -06:00
cwm 37ced4c903 add components to getting started column 2017-12-12 00:01:17 -06:00
cwm 072ab191cc pulled master, moved locale entry to new location 2017-12-10 15:22:15 -06:00
cwm eec5d350fd removed unneeded actions_modal div 2017-12-10 15:14:56 -06:00
cwm 066458a659 removed one last app settings addition 2017-12-10 09:25:44 -06:00
cwm 7a8711ccac removed app settings additions 2017-12-10 09:10:47 -06:00
cwm 8606e53384 moved locales to glitch, created add settings entry 2017-12-09 15:15:11 -06:00
cwm c5a688d70e remove trailing spaces 2017-12-09 12:41:24 -06:00
cwm 22cdbca82c fixes, functioning now 2017-12-09 12:06:00 -06:00
cwm a489e5d5cd added a few more things 2017-12-09 11:21:41 -06:00
cwm baf9ea8018 remove keyboard shortcuts from getting started because thats a different thing 2017-12-09 10:32:46 -06:00
cwm abe95b614b add initial components based off of tootsuite pr #1507 2017-12-09 10:26:22 -06:00
cwm b165950ca7 add keyboard shortcut to getting started, add missing list style 2017-12-08 20:30:45 -06:00
cwm 47157e07b2 merged tootsuite pr #5811 into glitch flavour 2017-12-08 20:13:08 -06:00
cwm f44c8fd130 merged tootsuite pr #5750 into glitch flavour 2017-12-08 19:40:49 -06:00
kibigo! 96126a5b01 Packaged local_settings styles in common 2017-12-07 13:36:18 -08:00
David Yip 67d625c42d
Fix hide reblogs in glitch frontend (#5909)
This applies 432761f375 to the glitch copy
of the Mastodon frontend.
2017-12-06 22:35:45 -06:00
David Yip 935c1944e2
Merge pull request #241 from glitch-soc/no-dm-option
Add option to remove DMs from home (#126)
2017-12-06 22:20:55 -06:00
kibigo! 2f2467ce8e Add option to remove DMs from home (#126) 2017-12-06 17:50:27 -08:00
David Yip 133f5b3b53
Apply Javascript changes in tootsuite/mastodon#5887 to glitch flavour (#239) 2017-12-06 18:23:28 -06:00
David Yip d9800a5647
Merge branch 'gs-master' into glitch-theme 2017-12-04 11:07:01 -06:00
kibigo! bc4fa6b198 Rename themes -> flavours ? ? 2017-12-03 23:26:40 -08:00