Greyson Parrelli
e4b56d4e40
Show foreground notification for jobs when network is restricted.
...
Occasionally a job may be run when the app is in a network-restricted
mode, like a form of doze. When this happens, jobs can timeout due to
lack of network access, causing a cascade of job delays. This is
particularly bad in the case of message retrieval.
To prevent this, if a job that normally requires network detects that no
network is available when running, then we start a foreground
notification.
2018-10-03 10:00:42 -07:00
Greyson Parrelli
12d9d7741b
Clean up batch saving.
...
- Post a better string for when batch saving completes successfully
- Exit multi-select after saving
2018-09-27 10:35:56 -07:00
FeuRenard
91a119393c
Allow batch saving in media overview
2018-09-27 10:35:56 -07:00
FeuRenard
c82afd8944
Allow selecting all media in overview
2018-09-27 10:35:56 -07:00
Greyson Parrelli
08ace15f95
Implemented new camera capture flow.
...
A new, fullscreen camera capture flow that easily allows you to capture
and edit a photo before sending it. Replaces the current half-screen
camera button.
2018-09-27 10:35:56 -07:00
Greyson Parrelli
45c4eafbd7
Add the ability to block groups.
...
This also fixes the situation where we block group-leave messages,
preventing blocked contacts from leaving groups.
Fixes #7970
Also, this forced us to upgrade libsignal-service, which fixes the
websocket timeout issues. Thanks to @dpapavas!
Fixes #6644
2018-09-18 15:26:50 -07:00
Greyson Parrelli
ad7dd7584e
Fixed document display in media overview in dark theme.
...
Shoutout to @aleb2000 for working on this as well!
Fixes #8151
2018-09-08 08:23:33 -07:00
Greyson Parrelli
440ad70d79
Allow submitting a debug log during registration.
2018-09-08 07:48:20 -07:00
Greyson Parrelli
15b4517e35
Prevent restoring newer backups into older versions of Signal.
...
Relates to #8184
2018-09-07 15:54:38 -07:00
Greyson Parrelli
ca2efcac8a
Added safeguards during NotificationChannel creation.
...
We were getting an IllegalArgumentException during channel creation on
some Samsung phones. Stack trace didn't give me much more than that, so
just adding in some additional safeguards that make sense based on
reading AOSP.
2018-08-22 13:19:59 -07:00
Greyson Parrelli
e9b85a10a6
Add per-contact notification channels.
...
Fixes #8119
Fixes #8121
Fixes #8122
2018-08-17 15:51:01 -07:00
Greyson Parrelli
c49b0348bd
Add failsafe for invalid shortcuts.
...
Some launchers may create broken shortcuts, so we just want to have
a smooth fallback in that scenario.
Fixes #8109
2018-08-15 12:48:04 -07:00
Greyson Parrelli
b79748bbb1
Change lock status channel name to 'lock status'.
2018-08-14 16:59:21 -07:00
Greyson Parrelli
eabaead700
Revert "Fingerprint unlock UX improvements"
...
This reverts commit 8441ac4091
.
Fixes #8106
2018-08-14 13:04:33 -07:00
art1fa
8441ac4091
Fingerprint unlock UX improvements
2018-08-13 18:38:59 -04:00
Greyson Parrelli
13c72779af
Visually note quotes for messages you don't have.
...
We will now show a small footer under quotes for messages that you
don't have locally.
Also fixes #7850
2018-08-13 18:38:59 -04:00
Greyson Parrelli
4d565990c9
Add drop shadow under attachment drawer.
2018-08-13 18:38:59 -04:00
Greyson Parrelli
5cdf5499d0
Clean up shortcut code.
2018-08-13 18:38:59 -04:00
Leonard Ehrenfried
c3c44e324b
Allow users to add conversation shortcuts to the home screen.
2018-08-13 18:38:59 -04:00
Greyson Parrelli
c7da83a702
Show attachment button while composing text.
...
Previously, we'd only show the attachment button when the user had
yet to enter any text. To add an attachment after text was entered,
you'd have to go to the three-dot menu. Now we just show a little
attach button in the text area.
I also took the opportunity to clean up other button paddings and
stuff in the compose area so things look better and react to text
sizes more predictably.
2018-08-13 18:38:59 -04:00
Greyson Parrelli
dbd42c4af2
Add notification channel support.
...
Bucket our notifications into channels. Required to target API 26.
2018-08-13 18:38:53 -04:00
Greyson Parrelli
b7d83c7a1f
Make libpaste a source dependency.
2018-08-06 10:50:06 -04:00
art1fa
faea8fd2ec
Apply message bubble paddings to both top and bottom
...
Batch selecting messages now feels better. Fixes #8035 .
2018-07-27 16:15:37 -04:00
Greyson Parrelli
d5a9efa96a
Reduce letter spacing on Preview text.
2018-07-25 09:58:43 -04:00
Christian Ascheberg
0bb44f2034
Improve disappearing message time strings
...
Fixes #7501
2018-07-24 20:35:51 -04:00
Greyson Parrelli
6a1fd8b1c6
Increase difference between read/unread conversations in list.
...
Updating to match the design.
2018-07-24 12:34:21 -04:00
Greyson Parrelli
aa25f39fe9
Fix footer icon tints.
2018-07-20 15:40:13 -07:00
Greyson Parrelli
860047c2d3
Remove CornerMaskingView.
2018-07-20 14:24:04 -07:00
Greyson Parrelli
8f551c8b32
Fix various redesign issues with Android 4.x.
...
In particular, there were many issues with drawing corners.
Unfortunately, there's no pretty way to get masking working on every
Android version, so we have to switch back to using custom backgrounds
and then using multiple masking methods depending on Android version.
Also, I had to remove attr references in drawables. They crash on 4.x.
2018-07-18 16:53:36 -07:00
Jonathan Fung
85d963047e
Adding a long press icon description for the Search icon
...
Fixes #7836
2018-07-18 09:04:42 -07:00
Greyson Parrelli
1c023b5218
Remove unused resources.
2018-07-17 12:06:50 -07:00
RiseT
7960a5785d
Export some strings from shared contact details activity
2018-07-17 12:06:50 -07:00
Greyson Parrelli
8579c30909
Styling improvements and code cleanup.
2018-07-17 12:06:42 -07:00
Greyson Parrelli
24b062d8dd
Improve the look of message bubbles.
2018-07-17 09:53:52 -07:00
Greyson Parrelli
7cfcb62c25
Added colors and styles.
2018-07-12 10:59:29 -07:00
RiseT
e75822c6fd
Remove unused strings
...
- Removed unused strings
- Removed some obsolete header comments
- Removed some whitespace
2018-07-02 17:56:07 -07:00
RiseT
6a465e6589
Update locales per 2018-06-23
...
Translation completion >= 90%, with the exception of Irish (80%), but they've been waiting for a rather long time.
Added:
- Irish
- Kurdish
- Telugu
- Ukrainian
2018-07-02 17:49:29 -07:00
Greyson Parrelli
3134837d56
Remove plaintext backup import option.
...
We have our own secure backup solution built into the app now.
No need to support plaintext backups.
2018-07-02 17:11:13 -07:00
Greyson Parrelli
f72f75ee61
Show a link for privacy policy.
2018-06-22 13:09:43 -07:00
Greyson Parrelli
20cc6f4d0e
Return registration permission string to previous value.
2018-06-22 10:59:53 -07:00
riyapenn-signal
b9c337d0b7
Updated for small copy change
2018-06-22 10:59:53 -07:00
riyapenn-signal
3654856be5
Updated strings.xml to include minor copy changes
...
- Permission prompt to include text about backups
- Updated support email
- Updated domain to signal.org in a link
2018-06-22 10:59:53 -07:00
Greyson Parrelli
4f72f4c649
Remove unused string.
2018-06-22 10:59:53 -07:00
Greyson Parrelli
542e962be9
Fixed crash when ScribbleView failed to save.
...
Previously, if an operation failed, we set the result to "null".
However, this was a mistake. Setting the result at all assumes success.
Instead, we need to set an exception so the ListenableFuture knows that
the operation failed.
2018-06-18 14:33:44 -07:00
Greyson Parrelli
2c17b54ef9
Show a banner in the event of a service outage.
...
We will now determine if there has been a service outage and render a
banner at the top of the conversation list if we detect that there has
been one.
2018-06-18 14:32:45 -07:00
Greyson Parrelli
0999359454
Improve the image editor.
...
A variety of improvements to the image editor, such as:
- New, fullscreen styling
- Smoother lines
- Better text and sticker handling
- Improved color picker with a history pallette
- New highlighter tool
2018-06-18 14:32:45 -07:00
Greyson Parrelli
3a827d1c48
Fix dark theme in search.
...
Fixed #7821
2018-05-22 12:37:00 -04:00
Greyson Parrelli
0449647cf9
Implemented full-text search.
...
You can now use the search bar on the conversation list to find
conversations, messages, and contacts.
2018-05-21 16:36:59 -04:00
Greyson Parrelli
e6c16cf28d
Allow editing of contact names.
...
Took care to properly format CJK names.
2018-05-21 15:45:22 -04:00
Greyson Parrelli
54dbffaf30
Added ability to share contacts.
...
The "contact" option in the attachments tray now brings you through an
optimized contact sharing flow, allowing you to select specific fields
to share. The contact is then presented as a special message type,
allowing you to interact with the card to add the contact to your system
contacts, invite them to signal, initiate a signal message, etc.
2018-05-21 15:45:22 -04:00
Greyson Parrelli
ca8fecea9c
Clean up camera flipping, handle having missing cameras.
...
Did a refactor to better organize the camera flipping code. Also, I
wanted to make sure we handle the cases where the user doesn't have two
cameras (or no cameras, for that matter). In these cases, we just don't
show the appropriate buttons.
2018-05-21 15:45:22 -04:00
Niklas Hambüchen
f1c79eaebf
Add button to flip camera (front vs rear). Fixes #6279
2018-05-21 15:45:22 -04:00
Greyson Parrelli
43622e603d
Save replies in drafts.
...
Previously, quotes were not saved to drafts, meaning they would be lost
when leaving the conversation or app. Now, a QuoteId (which represents
the necessary data to restore the QuoteModel) is serialized and stored
in the DraftDatabase.
Fixes #7716
Closes #7729
2018-04-26 09:19:22 -07:00
RiseT
7100030c22
Export string conversation_context__menu_reply_to_message
...
Additionally changed from "Reply" to "Reply to message" as other
related strings are more comprehensive as well.
Closes #7732
2018-04-25 10:41:26 -07:00
Greyson Parrelli
cbe394025d
Fix reply-to colors in dark mode to increase contrast.
...
Fixes #7705
2018-04-20 17:35:48 -07:00
RiseT
29af1669e1
Export strings from registration_call_me_view
...
Export strings from webrtc_call_screen
Closes #7543
2018-04-19 18:03:45 -07:00
Nicholas Rizzio
e6f76159b0
Export "creating backup" string
...
Closes #7656
2018-04-19 17:59:31 -07:00
Greyson Parrelli
fa99e8f0d0
Updated reply-to UI.
...
All UI components are now properly styled and functioning according to
spec.
2018-04-16 17:33:26 -07:00
Moxie Marlinspike
d567534609
replies
2018-04-16 17:33:26 -07:00
Moxie Marlinspike
4669c45ff7
Perpetuate the original sin of dark theme
...
Fixes #7614
2018-04-16 17:33:26 -07:00
Moxie Marlinspike
e86a9ce7eb
Add phone number and direct dial to recipient preferences
2018-04-16 17:33:26 -07:00
Greyson Parrelli
18039bc3f4
Show groups when searching for contacts.
...
Currently, if you're searching for a contact to start a conversation
with or send a share to (via the Android sharing system), groups do not
appear. With this change, groups will now appear when searching, located
under their own heading.
Fixes #7202 .
Closes #7577
2018-03-31 02:14:02 -07:00
Greyson Parrelli
ea374735e1
Render images in a conversation true-to-size.
...
Previously, we were always rendering images as squares. Instead of doing
that, we now render them as close to true-to-size as possible (within
reasonable min/max width/height boundaries).
2018-03-31 02:14:02 -07:00
Greyson Parrelli
10e5b24cfd
Allow batch deletion of media.
...
It is now possible to batch-delete media in the "media overview" screen.
You can long press to enter multi-select mode. Then a delete button
appears on the menu bar. After pressing delete, you will get a
confirmation, and if the user confirms, the items will delete while a
progres dialog shows.
2018-03-31 02:14:02 -07:00
Greyson Parrelli
0c768a24e4
Allow deletion of media through preview.
...
When viewing a media in the media preview, you can delete it by pressing
a delete button on the action bar. It will then ask you to confirm your
choice. If you confirm, it will delete the attachment from the database
and from disk. If it was the only attachment for that message, the
message itself will also be deleted.
2018-03-31 02:14:02 -07:00
平民·寻梦(Pingmin Fenlly Liu)
cc288d1e43
Just update to the new repo path "github.com/signalapp"
...
Closes #7469
2018-03-11 17:06:22 -07:00
FeuRenard
150601c51e
Replace '1' with '%d' in plural strings
...
Fixes #7470
Closes #7471
2018-03-11 17:05:01 -07:00
RiseT
375ebeb661
Update Transifex locales as per 2018-03-01
...
Remove:
- Kannada
Add (>= 90% of strings translated):
- Burmese
- Galician
- Khmer
- Lithuanian
- Thai
Closes #7490
2018-03-11 17:03:31 -07:00
Moxie Marlinspike
c8dd62cecf
Make it possible to set a zero value for screen lock timeout
...
Fixes #7485
2018-03-09 15:27:20 -08:00
Moxie Marlinspike
b39820dcb6
Clarify Registration Lock reminder
...
Fixes #7484
2018-03-09 10:40:29 -08:00
Moxie Marlinspike
1a24885110
Fix issue "home button" issue with screen lock
...
Fixes #7475
2018-03-09 10:25:29 -08:00
Moxie Marlinspike
9c63c6045d
Export string
2018-03-07 12:13:58 -08:00
Moxie Marlinspike
3c0bbfe6f0
s/External Storage/Storage
2018-03-07 12:10:38 -08:00
FeuRenard
0efda2df91
Make toast after saving attachment translatable
...
Closes #7374
2018-03-07 09:41:33 -08:00
art1fa
4bdb2acd29
Batch selection mode improvements
...
Simplified and now the same for conversation and conversation list.
Added also some styling.
Closes #7410
2018-03-07 09:38:51 -08:00
Moxie Marlinspike
56c95d1d1b
Extract string resource
2018-03-07 09:36:15 -08:00
Moxie Marlinspike
d44bfc3ce3
s/password/passphrase
2018-03-07 09:34:41 -08:00
Moxie Marlinspike
2beb1dd8d9
Layout adjustments
2018-03-07 09:08:13 -08:00
art1fa
feee09cd28
Fix color in toolbars
2018-03-06 10:14:23 -08:00
art1fa
6dd8300c73
Add standard elevation to Toolbars
2018-03-06 10:14:23 -08:00
Moxie Marlinspike
110d33ddf8
Support for Registration Lock PINs
2018-03-05 16:13:56 -08:00
Moxie Marlinspike
d28dc670ea
Migrate to Android fingerprints and auth for Signal screen lock
2018-03-05 16:11:49 -08:00
Moxie Marlinspike
24e573e537
Support for full backup/restore to sdcard
2018-03-05 16:11:49 -08:00
Moxie Marlinspike
71c7ef5b5e
Support for custom call ringtone selection and per-chat ringtones
2018-03-05 16:11:49 -08:00
Moxie Marlinspike
7318236286
Delay processing SMS messages until after sqlcipher migration
...
When screen lock passphrase is enabled
Fixes #7390
2018-02-21 18:49:52 -08:00
Moxie Marlinspike
9d5d43cf3a
Wait to process messages until after migration when screenlocked
...
Fixes #7390
2018-02-04 11:26:02 -08:00
Moxie Marlinspike
e6a069af6d
Remove unnecessary body model
2018-02-01 18:29:09 -08:00
Moxie Marlinspike
23aee53c7d
Add determinte progress and foreground service for sqlcipher migration
2018-02-01 16:01:24 -08:00
Moxie Marlinspike
34424a9b3e
Fix crash when signal messages disabled in group conversation
...
Fixes #6419
Closes #6803
2017-12-25 15:57:33 -08:00
Moxie Marlinspike
0ec1ae4ed3
Request needed permissions for thread search
2017-12-19 10:54:06 -08:00
Moxie Marlinspike
37092eee01
Externalize strings
2017-12-08 14:36:56 -08:00
Moxie Marlinspike
27d3dc918e
s/External Storage/Storage
2017-12-06 11:59:29 -08:00
Moxie Marlinspike
27e11e9627
Make sure we have SEND_SMS permission before sending an SMS
...
Fixes #7246
2017-12-05 11:35:15 -08:00
Moxie Marlinspike
6f10de5e30
Fix trying to launch a dialog from an application context
2017-11-30 13:05:16 -08:00
Moxie Marlinspike
e7a9893e94
Fix string typo
2017-11-30 10:26:41 -08:00
Moxie Marlinspike
acfc9d75e0
Use startForegroundService instead of startService on Android 8
2017-11-30 10:26:41 -08:00
Moxie Marlinspike
c2dbb34b25
Extract string resource
2017-11-30 10:26:41 -08:00
Moxie Marlinspike
64c8b4b2ef
Support for selective permissions
2017-11-30 10:26:41 -08:00
Moxie Marlinspike
886298674e
Adjust inbox zero empty state
2017-11-30 10:26:41 -08:00
Moxie Marlinspike
80042ae3aa
Display action mode over toolbar
...
Fixes #7198
2017-11-19 18:19:01 -08:00
Moxie Marlinspike
86bd2351bc
Replace answer/decline button and action for incoming calls
...
Fixes #7199
2017-11-19 16:32:22 -08:00
Moxie Marlinspike
cf81815bf6
Add recent chats to top of share list
2017-11-16 15:21:46 -08:00
Moxie Marlinspike
c5a9f27c31
Catch some activity not found exceptions for expired builds
2017-11-16 12:31:42 -08:00
Moxie Marlinspike
de812d3f0f
Extract string resources
2017-11-16 12:28:29 -08:00
Moxie Marlinspike
2da47c3bb3
Fix share list crash and update look/feel
...
Fixes #7195
2017-11-16 12:22:09 -08:00
Moxie Marlinspike
1986e58c5f
Remove unused resources
...
According to Android Studio
2017-11-14 11:43:25 -08:00
Moxie Marlinspike
b88069f396
Revert "Remove unused resources"
...
AS seems to have miscalculated
This reverts commit 344af622b7
.
2017-11-14 11:29:20 -08:00
Moxie Marlinspike
344af622b7
Remove unused resources
...
Or so says Android Studio
2017-11-14 11:15:03 -08:00
Moxie Marlinspike
534dec282f
Brighten light theme
...
1) Brighten background color
2) Add unread indicator in conversation list
3) Eliminate some conversation list overdraw
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
03573df00f
Add inset dividers in conversation list
...
Closes #7074
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
6b94d0679c
Remove unused resource
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
405ee3b741
Improve search bar visibility
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
9a75f49aa1
Add an empty state for search
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
9c50057909
Add an empty state for archived
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
bb878f8a67
Adjust Conversation List toolbar to match RecyclerView alignment
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
3097c2855e
Add empty state for conversation list
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
90ff0e58b0
Update registration flow
2017-11-14 10:50:17 -08:00
Moxie Marlinspike
5711adb2c9
Fix profile out of memory errors on low mem devices
...
Fixes #7094
// FREEBIE
2017-10-15 10:00:03 -07:00
Moxie Marlinspike
77c232760c
No documents found -> No documents
...
// FREEBIE
2017-10-09 10:38:36 -07:00
Moxie Marlinspike
cee3858e2e
Fix mysteriously missing string content
...
// FREEBIE
2017-10-04 12:27:45 -07:00
FeuRenard
d71fb4c958
Adjust dark themed NoActionBar activities
...
// FREEBIE
2017-10-04 11:50:55 -07:00
Moxie Marlinspike
677c7732cf
Update incognito keyboard string
...
Fixes #7037
// FREEBIE
2017-10-04 11:21:03 -07:00
Moxie Marlinspike
ba849bce2c
Add support for incognito keyboard preference
...
Closes #6985
// FREEBIE
2017-10-03 18:57:23 -07:00
Moxie Marlinspike
b3147aad55
Make "Shared media" string translatable
...
// FREEBIE
2017-10-03 16:29:11 -07:00
Moxie Marlinspike
2e56a0aa70
Fix typo
...
// FREEBIE
2017-10-02 09:58:08 -07:00
Moxie Marlinspike
2b4064f3b7
Add splash screen for read receipts
...
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
8ce914a344
Refactor media overview activity to display documents
...
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
c6b2e785a5
Reorganize conversation media activity to have sticky headers
...
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
4828a8a274
Add conversation media photo rail to recipient preferences
...
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
a1c276f70b
Update to V7 PreferencesCompat library
...
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
cb9bc9659b
Support for read receipts
...
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
65124fd1f2
Redesign conversation and conversation preferences layouts
...
Remove avatars from conversation items unless in a group chat.
// FREEBIE
2017-10-01 22:36:52 -07:00
Moxie Marlinspike
967c374213
Display error when camera doesn't return image
...
Partial #6926
// FREEBIE
2017-09-06 16:03:08 -07:00
Moxie Marlinspike
19be527370
Fix recursive experience upgrade activity problem
...
// FREEBIE
2017-09-06 00:29:49 -07:00
Moxie Marlinspike
2add02c62f
Add splash screen for setting profiles
...
// FREEBIE
2017-09-03 19:45:43 -07:00
Moxie Marlinspike
beed9d8034
Add length limit feedback when setting profile name
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
64ad9ec9dd
Add group profile sharing logic
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
1b2f52209d
Display unknown sender footer for unknown senders
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
c11f2eddf5
Display user profile information in settings activity
...
Allow for editing
// FREEBIE
2017-08-28 10:30:50 -07:00
Moxie Marlinspike
df99deb480
Insert profile creation into registration flow, fix capture
...
// FREEBIE
2017-08-28 10:30:50 -07:00
Christian Ascheberg
95d48bd3e9
Improve wording of joined contact notification
...
Fixes #6757
Closes #6764
// FREEBIE
2017-07-05 14:18:07 -07:00
RiseT
52311eb881
"Message notifications" >> "Messages"
...
Closes #6700
// FREEBIE
2017-06-12 09:52:46 -07:00
Moxie Marlinspike
414a885b54
Make string plural
...
// FREEBIE
2017-06-12 09:49:04 -07:00
Moxie Marlinspike
59d3e666fe
Rename 'verify safety number' to 'view safety number'
...
// FREEBIE
2017-06-09 19:58:05 -07:00
Moxie Marlinspike
76c28cfa7a
Add support for SN verification
...
// FREEBIE
2017-06-09 19:58:01 -07:00
Moxie Marlinspike
73410f64b5
Display a notification when unable retrieve messages for push
...
Fixes #6684
// FREEBIE
2017-05-31 14:51:48 -07:00
Christian Ascheberg
662fe826cb
Fix conversation list safety number change snippet for groups
...
Fixes #5985
Closes #6655
// FREEBIE
2017-05-31 14:51:48 -07:00
Joan Montané
6ede47d4f7
FREEBIE: Add Catalan to language selector
...
Closes #6612
2017-05-06 14:08:43 -07:00
Mateo Hernandez
b17cba621e
Show emoji-only messages larger
...
Closes #6531
// FREEBIE
2017-04-26 17:52:16 -07:00
Mateo Hernandez
869630b7f4
Tint and resize import/export icons
...
Closes #6567
// FREEBIE
2017-04-26 10:27:30 -07:00