Commit Graph

20211 Commits

Author SHA1 Message Date
Robin Ward
8c4e16eafd FIX: In reply to would sometimes have a broken link 2019-06-10 11:33:10 -04:00
Joffrey JAFFEUX
af08ab5b7b Revert "DEV: prevents csrf-token initializer to leak session object (#7730)"
This reverts commit da5255e560.
2019-06-07 18:31:16 +02:00
Joffrey JAFFEUX
ebecd0b7d1 Revert "fix tests, crsf token meta is not present on tests (#7733)"
This reverts commit 240b61e844.
2019-06-07 18:31:13 +02:00
Gerhard Schlager
bae7b75e23 FIX: Updating a user profile as admin shouldn't change the user's locale 2019-06-07 17:53:46 +02:00
Joffrey JAFFEUX
2dce650b72
FIX: prevents screen-track from leaking object (#7734) 2019-06-07 17:18:27 +02:00
Joffrey JAFFEUX
240b61e844
fix tests, crsf token meta is not present on tests (#7733) 2019-06-07 17:11:16 +02:00
Joffrey JAFFEUX
dfb66334c1
DEV: prevents global-notice events to leak (#7732) 2019-06-07 16:49:59 +02:00
Joffrey JAFFEUX
55325679ac
DEV: prevents share-popup to leak events (#7731) 2019-06-07 16:48:45 +02:00
Joffrey JAFFEUX
da5255e560
DEV: prevents csrf-token initializer to leak session object (#7730) 2019-06-07 16:46:55 +02:00
Joffrey JAFFEUX
df01249db4
FIX: removes leaking handler in select-kit (#7729) 2019-06-07 16:12:22 +02:00
Joffrey JAFFEUX
fca90106b9
FIX: select-kit events were sometimes not cleaned up (#7728) 2019-06-07 15:20:01 +02:00
David Taylor
54afa314fb FIX: Do not download emojis in pull_hotlinked_images 2019-06-07 13:00:52 +01:00
Gerhard Schlager
d1228f47bb FIX: Handle missing plural keys on client 2019-06-07 10:24:17 +02:00
Sam Saffron
cbd4d06da0 PERF: only check for totp record on current user at when needed
Previously the check was done a bit too early causing one extra query
per page unconditionally for logged on users
2019-06-07 16:25:04 +10:00
Joffrey JAFFEUX
a652d620f6 FIX: safari desktop doesnt support input[time] (#7719)
This commit attempts to improve the experience by:
- showing time input as disabled on any platform if date hasn't been set
- showing a placeholder --:-- to emphasize the expected format
2019-06-07 15:50:43 +10:00
Sam Saffron
a0474a0774 FIX: always take the first post in the RSS fee
`.posts.first` may be the first post and may not, depending on luck

Also add protection for corrupt topics
2019-06-07 14:57:56 +10:00
Sam Saffron
ff3a1eae3a FIX: ensure consistency should handle cases where a topic trashed
Followup to c05b6170
2019-06-07 14:57:56 +10:00
Guo Xiang Tan
ee142c2173 DEV: More improvements to InlineUploads.
* Convert inline links to short path

```
<link> <link>
<link>
```

to

```
<short_path> <short_path>
<short_path>
```
2019-06-07 11:49:30 +08:00
Sam Saffron
c05b617067 FIX: ensure_consistency was able to create corrupt category topics
- Correct create_category_definition to skip validations and use a
transaction, no longer able to create corrupt topics

- ensure_consistency now clears topic_id if pointing at deleted or missing
topic_id

- Stop creating category definition topics for uncategorized
2019-06-07 11:20:13 +10:00
Maja Komel
9db1fef4e3 FIX: add support for custom/plugin notification title attribute 2019-06-07 09:09:16 +08:00
Neil Lalonde
1f73a3ba6d FIX: round the calculated heat values
Views heats like 12135 will become 12000, like ratios like
1.666666666667 will become 1.67.
2019-06-06 15:44:55 -04:00
Bianca Nenciu
35da531f1d FIX: Do not resize images in Onebox while lazy loading.
Follow-up to 35d0fd0.
2019-06-06 18:36:18 +03:00
Arpit Jalan
9acd851b9a FIX: correct link to list of watched words 2019-06-06 20:21:54 +05:30
Joffrey JAFFEUX
48b6391777
FIX: s/thumb-tack/thumbtack (#7718) 2019-06-06 14:43:16 +02:00
Joffrey JAFFEUX
c462c2f271
FIX: prevents appEvents to leak (#7714) 2019-06-06 12:33:52 +02:00
Bianca Nenciu
5377d1672f DEV: Fix linting issue. 2019-06-06 13:20:16 +03:00
Bianca Nenciu
f63b8bb79d FIX: Periodically ensure consistency of categories. (#7663) 2019-06-06 11:30:52 +02:00
Guo Xiang Tan
782da448a2 FIX: Missing title attribute when quoting an image. 2019-06-06 16:45:12 +08:00
Guo Xiang Tan
2265c5102f DEV: Remove unnecessary condition.
Follow up to 21876d46d6.
2019-06-06 15:55:49 +08:00
Guo Xiang Tan
95db609586 DEV: Support more formats of inline images. 2019-06-06 15:50:56 +08:00
Guo Xiang Tan
21876d46d6 DEV: Missing loading spinner for staff action logs.
Follow up to e0c821ebb0.
2019-06-06 15:41:55 +08:00
Penar Musaraj
f00275ded3 FEATURE: Support private attachments when using S3 storage (#7677)
* Support private uploads in S3
* Use localStore for local avatars
* Add job to update private upload ACL on S3
* Test multisite paths
* update ACL for private uploads in migrate_to_s3 task
2019-06-06 13:27:24 +10:00
Bianca Nenciu
e0c821ebb0 FEATURE: Make staff action logs page support infinite loading 2019-06-06 13:02:53 +10:00
Saurabh Patel
b510006ca8 FEATURE: show tags in crawler view of tags page for static site
Previously tags page would have an empty page in crawler view
2019-06-06 12:55:37 +10:00
Roman Rizzi
c3a38d2304 DEV: Make groups/new extensible by plugins (#7642)
* Expose a new plugin outlet. Pass group model to the group-member-dropdown so it can be accessed by plugins

* Added controller tests for group custom fields. update custom fields when updating a group
2019-06-06 12:05:33 +10:00
Guo Xiang Tan
7bd8f715bc DEV: Prefer this.site.notification_types. 2019-06-06 09:39:59 +08:00
Guo Xiang Tan
d9d36f241d DEV: Use this.site.get("notification_types") instead.
Follow up to fcb7422213.
2019-06-06 08:18:25 +08:00
Kris
54db23e4ff UX: Make input caret color match text color 2019-06-05 14:27:27 -04:00
Robin Ward
58ff7216ca UX: Display "Queued Topic" if a Queued Post will create a topic 2019-06-05 14:11:28 -04:00
Robin Ward
d902c4eb9f FEATURE: Can sort reviewable queue
Choices are Priority / Created At (and desc versions.)
2019-06-05 13:21:05 -04:00
Bianca Nenciu
35d0fd038e FIX: Add unit to width and height CSS properties. 2019-06-05 19:51:31 +03:00
Kris
c0e8950fdb UX: Shrink oneboxes and other wide content in custom post messages 2019-06-05 12:48:06 -04:00
Robin Ward
ea5767e935 FIX: Broken serializer spec with no payload 2019-06-05 12:44:56 -04:00
Robin Ward
f1d547c301 FEATURE: Show "in reply to" on the review queue
We now show if a queued or flagged post is a reply to another when in
the review queue. It's especially helpful for queued posts where
normally they are linked to the topic where they are created, and you
have no context about the reply.

Note that this will only apply to new queued posts going forward.
Previously queued posts will not show the "in reply to"
2019-06-05 12:34:41 -04:00
Kris
be464f753c UX: Lighten OS icons in recently used devices 2019-06-05 10:56:25 -04:00
Robin Ward
ad876880e1 FIX: Ember was raising an error without a .set here 2019-06-05 10:23:39 -04:00
Joffrey JAFFEUX
0082a57718
REFACTOR: computed lib (#7702) 2019-06-05 15:50:22 +02:00
Joffrey JAFFEUX
f506843074
REFACTOR: user route (#7704) 2019-06-05 13:05:27 +02:00
Joffrey JAFFEUX
1178f4865b
REFACTOR: login-method model (#7703) 2019-06-05 12:35:41 +02:00
Joffrey JAFFEUX
80459d83a4
REFACTOR: discourse-location lib (#7700) 2019-06-05 11:46:36 +02:00
Joffrey JAFFEUX
faef660631
REFACTOR: invite model (#7699) 2019-06-05 11:24:06 +02:00
Joffrey JAFFEUX
df6d46b235
FIX: regression and attempts to have clearer naming (#7701) 2019-06-05 11:23:30 +02:00
Joffrey JAFFEUX
0fd7f74664
REFACTOR: post model (#7659) 2019-06-05 11:04:35 +02:00
Joffrey JAFFEUX
69f75b2a81
REFACTOR: preferences/account controller (#7698) 2019-06-05 10:37:51 +02:00
Sam Saffron
19e3b3b1bc PERF: speed up topic poster lookups
During profiling looking up topic users popped up as a hot path, this
change more than halved the amount of work it does

It reduces object allocations and method calls and avoids repeate translation
of common terms
2019-06-05 18:28:36 +10:00
Joffrey JAFFEUX
ce79a71c5d
typo s/faivcon/favicon (#7697) 2019-06-05 09:46:07 +02:00
Sam Saffron
b9df7a2257 FIX: if favicon is missing due to bad url we would return a 500 on favicons
This ensures that the error logging does not corrupt the cache
2019-06-05 16:43:40 +10:00
Bianca Nenciu
b2b66d645b UX: Move archive button in topic controls dropdown (mobile view). (#7681) 2019-06-05 11:30:06 +10:00
Neil Lalonde
1cf0b549ab FIX: don't send post edit notification when hidden tags are changed
Create a hidden revision so staff can see the changed, but don't send
notifications to non-staff.
2019-06-04 15:48:15 -04:00
Joffrey JAFFEUX
f03a547a89
REFACTOR: topic-entrance component (#7694) 2019-06-04 17:50:02 +02:00
Joffrey JAFFEUX
6de3824b46
REFACTOR: group model (#7692) 2019-06-04 17:41:46 +02:00
Joffrey JAFFEUX
68147cedd1
REFACTOR: username-validation mixin (#7693) 2019-06-04 17:41:33 +02:00
Joffrey JAFFEUX
7b19e63ce7
REFACTOR: badge model (#7690) 2019-06-04 17:12:02 +02:00
Kris
1bca6fdf51 UX: Z-index fix for preview on iOS 2019-06-04 11:08:49 -04:00
Arpit Jalan
e7fe7010b8
FIX: use hijack for processing bulk invites (#7679)
FIX: do not store bulk invite CSV file on server
2019-06-04 20:19:46 +05:30
Neil Lalonde
ecc9c76692
FEATURE: dynamically update the topic heat settings monthly (#7670)
The site settings beginning with "topic views heat" and "topic post like
heat" are set to defaults when installing Discourse, but there has not
been a process or guidance for updating these values based on
community activity.

This feature will update them once a month. The low, medium, and
high settings will be based on the minimums of the 45th, 25th, and
10th percentile topics respectively, so that 45% of topics will have
some "heat".

Disable automatic changes with the automatic_topic_heat_values setting.
2019-06-04 10:34:07 -04:00
Penar Musaraj
e66024bd3b Update theme component URL 2019-06-04 10:04:27 -04:00
Joffrey JAFFEUX
4201329f1e
REFACTOR: topic-from-params route (#7689) 2019-06-04 15:51:22 +02:00
Maja Komel
87bf0ec7ae
FIX: fix locale key 2019-06-04 13:35:17 +02:00
Guo Xiang Tan
fcb7422213 DEV: Avoid hard-coding notification types integer in client side code.
Co-authored-by: Bianca Nenciu <nenciu.bianca@gmail.com>
2019-06-04 17:30:46 +08:00
Joffrey JAFFEUX
9585a16264
FIX: ensures correct i18n key is used (#7686) 2019-06-04 11:22:44 +02:00
Joffrey JAFFEUX
4283281397
FIX: ensures we have data to compute average (#7685) 2019-06-04 11:21:55 +02:00
Joffrey JAFFEUX
b79d02ff48
FEATURE: displays average for 2 columns tables which support average 2019-06-04 11:08:26 +02:00
Maja Komel
c9a34aa10c FIX: add title attribute for notifications 2019-06-04 17:02:12 +08:00
Régis Hanol
33bc8c276d FIX: default top timeframe was overriding best_periods_for 2019-06-04 10:57:50 +02:00
Maja Komel
7da875f52a FIX: trigger user_updated webhook when avatar changes 2019-06-04 16:46:46 +08:00
Joffrey JAFFEUX
497a1d2d9f
FEATURE: uses native date picker on mobile (#7541) 2019-06-04 10:44:55 +02:00
Joffrey JAFFEUX
c4419b7369
REFACTOR: badge-selector component (#7683) 2019-06-04 10:30:56 +02:00
Maja Komel
2863e7c181 FIX: fix select badge as user title on badge page (#7682) 2019-06-04 18:19:30 +10:00
Guo Xiang Tan
1991af2abb DEV: Switch InlineUploads to a regexp based implementation. 2019-06-04 15:54:25 +08:00
Guo Xiang Tan
d93e5fb00d DEV: Class that converts MD with old attachment links to new MD. 2019-06-04 15:54:25 +08:00
Sam Saffron
22abad4151 PERF: stop reindexing and skipping deleted posts 2019-06-04 17:53:35 +10:00
Sam Saffron
74c4f926fc FIX: drop deleted posts from search index
This does two things

1. Our "index grace period" has been wound down to 1 day, there is no point
keeping a bloated index for a week, usually when people delete stuff they
mean for it to be removed

2. We were never dropping deleted posts from the index, only posts from
deleted topics

These changes speed up search a tiny bit and reduce background work.
2019-06-04 17:19:59 +10:00
Sam Saffron
6428aa5b1f FIX: search indexer had various cases where it could fail
Previous to this fix is a post had the test www.test.com/abc it would fail
to index.

This also simplifies the rules to avoid full url parsing which can be
expensive
2019-06-04 16:21:03 +10:00
Guo Xiang Tan
bb98785569 DEV: Fix broken Upload#base62_sha1. 2019-06-04 14:10:46 +08:00
Vinoth Kannan
871fcf1117 PERF: omit user profile and private message stats in web hook serializer. 2019-06-04 08:44:10 +05:30
Sam Saffron
77300c1d8d DEV: reindex old data in a more consistent way
Previously we were grabbing arbitrary rows in many cases which makes
diagnosing issues in the indexer more complex
2019-06-04 11:47:24 +10:00
Guo Xiang Tan
55fd3acea0 Revert "FIX: Undefined method when serializing a user"
This reverts commit 1fbe078ae0.

`UserProfile` is created in a callback after the user has been created.
As such, it should be impossible for a user to not have a blank
`UserProfile`. This was also improved in
4f5c9bb8d3.
2019-06-04 09:30:30 +08:00
Joffrey JAFFEUX
0c5498c9a4
REFACTOR: exception controller (#7675) 2019-06-03 23:34:23 +02:00
Régis Hanol
d7ff640778 fix the build 2019-06-03 20:42:46 +02:00
Régis Hanol
b792db9d92 FIX: redirect to top was always redirecting to 'All' 2019-06-03 20:18:14 +02:00
Kris
9a3dd6b59a UX: Add missing classes to user preferences 2019-06-03 13:35:40 -04:00
Vinoth Kannan
f9f12ed221 PERF: fix N+1 queries for non-JS topic view. 2019-06-03 21:47:33 +05:30
Kris
d4f6b9e827 FIX: Crawler footer style needed to be more specific 2019-06-03 11:52:20 -04:00
David Taylor
81dcadf788
DEV: Stop compiling themes during DB migration. Recompile on cdn change. (#7676)
This is an improved implementation for bc8b7b13
2019-06-03 16:38:02 +01:00
Penar Musaraj
6834b0a4ba Fix Prettier 2019-06-03 10:54:24 -04:00
Penar Musaraj
16982d2a69
Update UI for wizard themes further reading step (#7669) 2019-06-03 10:47:17 -04:00
Régis Hanol
f6ced0a78a Remove unused & empty author meta tag 2019-06-03 12:00:14 +02:00
David Taylor
7500eed4c0
FEATURE: Multi-file javascript support for themes (#7526)
You can now add javascript files under `/javascripts/*` in a theme, and they will be loaded as if they were included in core, or a plugin. If you give something the same name as a core/plugin file, it will be overridden. Support file extensions are `.js.es6`, `.hbs` and `.raw.hbs`.
2019-06-03 10:41:00 +01:00
Dan Ungureanu
c1e7a1b292 UX: Merge settings related to muted tags. (#7656) 2019-06-03 12:23:23 +10:00
Maja Komel
42809f4d69 FIX: use crawler layout when saving url in Wayback Machine (#7667) 2019-06-03 12:13:32 +10:00
Dan Ungureanu
28dcf445b7 DEV: Pass editor to plugin hook handling composer uploads. (#7673) 2019-06-03 12:07:25 +10:00
Kris
98336de266 UX: Cleanup crawler styles, improve schema.org markup (#7668)
* Cleaning up crawler styles, improving some schema.org markup

* Cleaning up crawler styles, improving some schema.org markup

* additional styling

* add space for pagination
2019-06-03 12:03:16 +10:00
Sam Saffron
e302c0af8b DEV: by default disable anon impersonation in dev environments
The impersonate any user by anonymous feature in dev should require a
deliberate opt-in. This way developers are better aware of the security
implications of this development only feature.
2019-06-03 10:02:27 +10:00
Robin Ward
a2598632aa FIX: Histories should be reverse chronological 2019-05-31 14:59:26 -04:00
Robin Ward
74eaa5e7ec FIX: For API consumption it's easier if the lings are the full URL 2019-05-31 14:04:54 -04:00
David Taylor
75fc126224
DEV: Change path for extra scss files in themes (#7664)
The preferred path is `/stylesheets/...`, to match core and plugins. The old `/scss/...` path will continue to function
2019-05-31 15:40:41 +01:00
David Taylor
03363d03e8 FEATURE: Load theme setting descriptions from theme locale files
Previously theme setting descriptions were defined in the `settings.yml` file like this:
```
setting_name:
  default: "My Default Value"
  description:
    en: "English description"
    fr: "French description"
```

This commit allows developers to store the localised descriptions in the theme locale files instead:
```
en:
  theme_metadata:
    description: Theme Description
    settings:
      setting_name: "The localised description for setting_name"
```
2019-05-31 14:49:59 +01:00
romanrizzi
a0a2823536 DEV: Fix indentation 2019-05-31 10:19:19 -03:00
Joffrey JAFFEUX
1db7fd6f9b
REFACTOR: topic-list model (#7658) 2019-05-31 13:15:45 +02:00
Joffrey JAFFEUX
63264158cf
REFACTOR: user-posts-stream model (#7657) 2019-05-31 13:02:15 +02:00
Sam Saffron
3b8819f0ab FEATURE: add support for defer topic functionality
This feature allows end users to "defer" topics by marking them unread

The functionality is default disabled. This also introduces the new site
setting default_other_enable_defer: to enable this by default on new user
accounts.
2019-05-31 15:44:35 +10:00
Sam Saffron
077dcc0642 FEATURE: add autocomplete discourse on full page search
This teaches chrome not to try autocompleting it.
2019-05-31 10:27:44 +10:00
Robin Ward
2e0a40007b FIX: Category topics should not be deletable via review queue 2019-05-30 16:43:23 -04:00
Roman Rizzi
c169456ee5
DEV: Create new component to reify the user fields (#7655) 2019-05-30 16:17:16 -03:00
Robin Ward
c4fa20d644 FIX: Broken test, also typoed property 2019-05-30 14:27:28 -04:00
Robin Ward
5e89714f77 FIX: Linting via prettier 2019-05-30 13:58:06 -04:00
Robin Ward
7a9e85b1d7 FIX: Don't show the "Flag to delete" message to staff
If they can't delete, flagging should not either.
2019-05-30 13:31:40 -04:00
Joffrey JAFFEUX
7a21f78f8c
prettier (#7653) 2019-05-30 17:28:07 +02:00
Joffrey JAFFEUX
0fbbff86ab
REFACTOR: rest model (#7652) 2019-05-30 17:11:17 +02:00
Bianca Nenciu
8196af165d FIX: Add Chromebook detection. 2019-05-30 16:29:51 +03:00
Arpit Jalan
f54a865846 DEV: refactor cleaning up of user export topics 2019-05-30 10:24:45 +05:30
Daniel Waterworth
bfb26b720b FIX: the en_US locale depends on en 2019-05-30 08:46:43 +08:00
romanrizzi
2fa8df7cd2 New: can_see_groups? method for better perf 2019-05-30 08:45:20 +08:00
romanrizzi
e7ee556e87 Support multi-group user search 2019-05-30 08:45:20 +08:00
Kris
b24938b5ff UX: Minor composer button alignment adjustments, simplification 2019-05-29 14:37:32 -04:00
Bianca Nenciu
227c45107d FEATURE: Implement Onebox for posts including polls. (#7539) 2019-05-29 17:05:52 +02:00
Joffrey JAFFEUX
c77bc525cb
REFACTOR: new-topic route (#7639) 2019-05-29 16:46:58 +02:00
Joffrey JAFFEUX
ba66d6fd82
FIX: icon deprecation s/group/users (#7638) 2019-05-29 16:29:01 +02:00
Joffrey JAFFEUX
034502af21
FIX: incorrectly removed moveTypes array (#7637) 2019-05-29 16:23:32 +02:00
Joffrey JAFFEUX
bb6337d6c6
REFACTOR: choose-topic component (#7636) 2019-05-29 16:21:13 +02:00
Joffrey JAFFEUX
b2fc80e4b7
REFACTOR: build-topic-selection mixin (#7635) 2019-05-29 16:09:19 +02:00
Joffrey JAFFEUX
468cfa39f7
REFACTOR: rename-tag controller (#7634) 2019-05-29 15:58:12 +02:00
Joffrey JAFFEUX
f2858e03c8
REFACTOR: preferences/email controller (#7633) 2019-05-29 15:53:42 +02:00
Joffrey JAFFEUX
5e7e32510a
FIX: lookup should be done against locale of reference (#7632) 2019-05-29 15:45:44 +02:00
Joffrey JAFFEUX
05206a61ab
FIX: displays text of asset-version changed modal (#7631) 2019-05-29 15:38:14 +02:00
Guo Xiang Tan
a3938f98f8 Revert changes to FileStore::S3Store#path_for in f0620e7118.
There are some places in the code base that assumes the method should
return nil.
2019-05-29 18:39:07 +08:00
Sam Saffron
04fdada96a annotate models 2019-05-29 14:26:24 +10:00
Sam Saffron
5c524ea8a4 FEATURE: introduce dedicated storage and DB constraints for anon users
Previously we used custom fields to denote a user was anonymous, this was
risky in that custom fields are prone to race conditions and are not
properly dedicated, missing constraints and so on.

The new table `anonymous_users` is properly protected. There is only one
possible shadow account per user, which is enforced using a constraint.

Every anonymous user will have a unique row in the new table.
2019-05-29 14:26:24 +10:00
Guo Xiang Tan
f0620e7118 FEATURE: Support [description|attachment](upload://<short-sha>) in MD take 2.
Previous attempt was missing `post_uploads` records.
2019-05-29 09:26:32 +08:00
Guo Xiang Tan
63292cecd9 PERF: Prefer joins over IN () queries. 2019-05-29 09:00:15 +08:00
Joffrey JAFFEUX
76569b2018 FIX: ensures post-small-action is using timezone to display dates 2019-05-29 08:45:28 +08:00
Penar Musaraj
a93aa5bbce Add "further reading for themes" step to wizard 2019-05-29 08:28:03 +08:00
Bianca Nenciu
43e33302e1 FIX: Position emoji-picker around d-editor. 2019-05-29 08:27:14 +08:00
Dan Ungureanu
7a08e23b4b FIX: Bump search index version. 2019-05-29 08:20:59 +08:00
Penar Musaraj
7c9fb95c15 Temporarily revert "FEATURE: Support [description|attachment](upload://<short-sha>) in MD. (#7603)"
This reverts commit b1d3c678ca.

We need to make sure post_upload records are correctly stored.
2019-05-28 16:37:01 -04:00
Osama Sayegh
f3c07e27d9
FIX: correct translations for logs error rate notice (#7622)
The problem here is that hour and minute were passed to the %{duration} variable which made them impossible to translate in other languages.

I wonder if it's worth having 2 almost identical translations just for "reached" and "exceeded"? Perhaps we could combine them in one copy?
2019-05-28 22:10:51 +03:00
Bianca Nenciu
91ff8684fd FIX: Use the right property for post ID. 2019-05-28 22:00:58 +03:00
Kris
67d8ceedf1 Remove unused variable 2019-05-28 14:31:52 -04:00
Kris
c57ab12238 UX: Move preview button to bottom right of mobile composer 2019-05-28 14:19:33 -04:00