Commit Graph
89 Commits
Author SHA1 Message Date
Michael W e35d385149 Messaging: Remove unnecessary toString() and String.valueOf() calls
Change-Id: I5d5624386ba72b9e7074a7da909f78baaee73f75
2024-12-26 14:55:12 +01:00
Michael W 21cb2b6289 Messaging: Fix modifiers
We either have too few or too many

Change-Id: I09a9a38b859c68526fcbcdbc7862afe1d693f6c0
2024-12-26 14:55:12 +01:00
Michael W 3b7f05ba67 Messaging: Replace ExifInterface with its androidx counterpart
Change-Id: I35ba14886b9f837d576f1cd385869614454c921f
2024-12-26 14:55:12 +01:00
Michael W d869533f6f Messaging: Use xml drawables
Replace the pngs with xml drawables

Change-Id: I71be32c36194d3b34b54287a09789f73087600ef
2024-12-26 14:55:12 +01:00
Michael W 7c55a6d56a Messaging: Remove compatibility for old android versions
Change-Id: Id9065d60525a509271a0e64c0e349e857cb998e2
2024-12-26 14:55:12 +01:00
Michael W a65de2aee3 Messaging: Rename androidx.appcompat.mms
* Someone apparently decided to "Replace-In-Files" these before, but
  they are not correct according to the folder structure
* Since it is just annoying to read the code in AS when it does not
  match the folder, change the package name back

Change-Id: Iea5c51aeb9e1f5b650a1009348065c7c38cddbeb
2024-12-26 14:55:12 +01:00
Michael W 009df43b06 Messaging: Remove cell broadcasts
* Packagemanager doesn't tell us about its' availability anymore
* It's accessible from notification settings, no need for the app to
  be able to launch them

Change-Id: I10b7742917f8639c94b0187f158cc30156f90e92
2024-12-26 14:55:12 +01:00
Michael W bc93ce392e Messaging: Bump sdk (>=33, <=34)
* Since we already compile with sdk "current", this is just the next
  logical step
* We skip 35 for now since edge-to-edge stuff can be done later
* It also gives AS the possibility to recognize necessary steps
* WRITE_SMS permission removed in API 23

Change-Id: Ia567fa9e42772f0b6d6e6fdc0d21b5635ff9dcc5
2024-12-26 14:55:12 +01:00
Michael W f3863c9a39 Messaging: Remove tests
Nobody runs them anyway

Change-Id: I2b07847509269af31430abc6cb0fb190f08d45f9
2024-12-26 14:55:00 +01:00
minarypenguin 5ce3a1b2db Messaging: Fix activity bar menu icons tint
Change-Id: Ife5af067eb39a3a75e67fd0d7241f4b2e13e23a6
2024-12-22 17:04:27 +01:00
LibXZR e46a7b2475 SimIconView: Don't intercept touch events when there's nothing to do
Fix unable to switch conversation sim card by clicking on the sim icon.

Change-Id: I9359cfc4f730186d8709251856899efa8484f6d9
2024-12-22 17:04:27 +01:00
LibXZR d53a425244 Messaging: Do not check preferred sim if conversation sim exist
Fix unable to send message when preferred sms sim is set to
"Ask every time".

Change-Id: I0406985e29ded8157ae5252db2dd814856a93376
2024-12-22 17:04:27 +01:00
Chris Talbot 87cd6873d7 Add support for text/vCard and text/vCalendar MIME type
A vcf file can alias to both "text/vCard" and "text/x-vCard" MIME
types and an ics file can alias to "text/vCalendar" as well as
"text/x-vCalendar". However, if LineageOS does not get the "x-"
MIME type, it will incorrectly display an empty MMS.

Change-Id: I0b63767092c0e7422ff3592983d94b903d9e8cc5
2024-12-22 17:04:27 +01:00
Ido Ben-Hur 96ef363da8 Messaging: Fix handling of default SMS app
Use RoleManager to Launch the correct activity and check the default app
Get rid of deprecated methods used here to do the same
Also add queries in manifest to allow the former method to work as well

Change-Id: I4702aaa4b35a994e225e63534da8fb4975b9717a
2024-10-20 01:36:57 +03:00
Ido Ben-Hur d8a0bf022d Messaging: FrameSequence -> ImageDecoder
fixes playing / displaying gifs
replaces old deprecated FrameSequence & FrameSequenceDrawable libs

Change-Id: Id65fff90bdd09af86480636a8a0e404aeb39580f
2024-09-16 02:25:12 +03:00
Michael W b11039ed8c Messaging: Allow deletion of messages without a sim inserted
* Currently there is a check in place checking for the presence of a
  preferred sim card
* For deletion of a conversation and message this is unnecessary and
  deleting a conversation from the main view does also not have that check
  already, so replace the check with just checking for being the default
  messaging app

Fixes: https://gitlab.com/LineageOS/issues/android/-/issues/5974
Test: Try deleting a single message or conversation from within
 conversation before and after
Change-Id: Icd47882eb29e16a17ad57a79ea5e0c0f7855ffc6
2024-09-09 05:47:00 +03:00
Michael W 37b7f1a539 Messaging: All contacts: Remove space for sections
* Due to the sections not working anymore since we removed the duplicate
  numbers, we are left with a rather large empty space left of the
  contacts
* Disable sectioning to make it look properly again

Change-Id: Iff1849b80d70269933708e5440809c657f0d70d9
2024-09-09 05:47:00 +03:00
nift4 46ee5ce5e0 Messaging: fix crash
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.messaging/com.android.messaging.ui.SmsStorageLowWarningActivity}: java.lang.IllegalStateException: Fragment com.android.messaging.ui.SmsStorageLowWarningFragment$ChooseActionDialogFragment must be a public static class to be  properly recreated from instance state.

Change-Id: I78d46a6f74383a4b865759bc980240f6f73ff20d
2024-09-09 05:47:00 +03:00
Tommy Webb 5784795fe2 Fix crash on forwarding messages
onAttachFragment in ForwardMessageActivity does not necessarily have
to be provided with a ConversationListFragment, so there is no need to
assert this. Just move along, as is done in VCardDetailActivity, etc.

Change-Id: I41825c9c118d71d447b820d29f60fb10ef2d5fdf
2024-09-09 05:46:59 +03:00
Michael W 09e4b197ff Messages: Only youuuuu...
* Removing the arrow from the message bubbles and adding a little
  rounding to them and the input bar already does a lot in
  modernizing the look of the app

Change-Id: Ia6466968553856fdf2ea15c10cfed79402e36a5d
2024-09-09 05:46:59 +03:00
z3DD3r e51017a0f2 Messaging: Update cellbroadcast package name
As part of mainline effort, AOSP cellbroadcast package name was changed
from com.android.cellbroadcast to com.android.cellbroadcast.module

Change-Id: Ie1f27abb0f645dd53c26d164b03c5e93c3c13cdc
2024-09-09 05:46:58 +03:00
Blaise a4cbbd9039 Messaging: Contact Colors
Adds the option to use individual colors for contacts.
Matches the colors used in Contacts.

Change-Id: I9f222308a900c5d47ec16f83232bd7f6d9af6cd7
2024-09-09 05:46:58 +03:00
Scott Warner 657e0460fe Messaging: Use a DayNight launch theme
This prevents the white launch screen from appearing when the system theme
is dark

Change-Id: I861f9e5a58b4bb52385c75459fc4de73532d15a8
2024-09-09 05:46:58 +03:00
Luca Stefani 4246987beb Messaging: Implement per conversation channels. Update API level to 28.
* Get rid of in-app settings for notifications, replaced by channels features
* Remove all the notification plumbing and dead code

Test: m, manual

Signed-off-by: Luca Stefani <luca.stefani.ge1@gmail.com>
Signed-off-by: Joey <joey@lineageos.org>
Signed-off-by: Danny Baumann <dannybaumann@web.de>
Signed-off-by: Arne Coucheron <arco68@gmail.com>
Signed-off-by: Lyubo <lyubodzhamov@gmail.com>
Change-Id: Idb39ca32751d40b3376934775d2119dd6cc7e297
2024-09-09 05:46:38 +03:00
Ankit Gupta 1967aa9fc8 MediaPicker: Check for NPE
make sure view has been created before asking for
its visibility.

Change-Id: I0f0c36f8edf83c518bf07ef05399eda5d6b0f78a
Issue-id: FEIJ-1135
2024-09-09 05:46:37 +03:00
Arun Valiaparambil 4b218d1561 Play an audible notification on receiving a class zero message.
Changes ported from http://review.cyanogenmod.org/#/c/125457/

PAELLA-123

Change-Id: I1289790d32a3b69bf7892025bac5fa3bd74eeefc
2024-09-09 05:46:37 +03:00
Adnan Begovic 086bb5c3f5 Messaging: Implement option for swipe right to delete.
Squashed commit of the following:

Author: Adnan Begovic <adnan@cyngn.com>
Date:   Thu Jan 14 17:20:43 2016 -0800
Messaging: Implement option for swipe to delete.

  No one wants to swipe to archive, that's stupid.

Change-Id: Ia8f0fc675582ef343311e60b755e284322f25102

Author: chengzhi.hou <chengzhi.hou@ck-telecom.com>
Date:   Wed Feb 24 20:01:17 2016 +0800
Messaging: Swipe right to delete conversation

Change "swipe delete" to "swipe right delete", so SwipeArchive and SwipeDelete
can exist at the same time.

Change-Id: Id66167c2e749f8ab0ee917e0138027c7404b8c90

Author: Michael Bestas <mikeioannina@cyanogenmod.org>
Date:   Tue Mar 1 02:27:16 2016 +0200
Improve swipe to delete strings

Change-Id: I180d09a6680084d9fd87c6dafd56db18ca5a580a

Author: Joey Rizzoli <joey@cyanogenmoditalia.it>
Date:   Mon Oct 17 16:32:25 2016 +0200
Messaging: show snackbar instead of toast when deleting conversation

more consistency with archive action

Change-Id: I06129850860a2a51c10ade65fb87c9f37a0c2bfa
Signed-off-by: Joey Rizzoli <joey@cyanogenmoditalia.it>

Change-Id: Ia8f0fc675582ef343311e60b755e284322f25102
2024-09-09 05:45:11 +03:00
Colin Cross a53cd33778 Fix Messaging for use_resource_processor: true
Reference resources using the package name of the library that
includes them.

Bug: 294256649
Test: m javac-check
Change-Id: I8fa72ec452ce6a7f8101022fbb35b3fc89073952
2023-10-17 16:12:15 -07:00
Jake Klinker 4b16af13f7 Trim recipient addresses that are unreasonably long.
This ensures that bad input does not affect the db - the fallback is a reasonable one where we just launch the new conversation screen and have the user select the recipient.

TESTED=manually confirmed that I could no longer repro b/278556945 after this change.
BUG=278556945

Change-Id: I705a304a92cb46b20d916c6f5c2db81e6fa84f06
2023-05-11 21:59:32 +00:00
Cole Faust 50b73ca58a Fix errorprone warnings that should be errors
This commit is part of a large scale change to fix errorprone
errors that have been downgraded to warnings in the android
source tree, so that they can be promoted to errors again.
The full list of changes include the following, but not all
will be present in any one individual commit:

BadAnnotationImplementation
BadShiftAmount
BanJNDI
BoxedPrimitiveEquality
ComparableType
ComplexBooleanConstant
CollectionToArraySafeParameter
ConditionalExpressionNumericPromotion
DangerousLiteralNull
DoubleBraceInitialization
DurationFrom
DurationTemporalUnit
EmptyTopLevelDeclaration
EqualsNull
EqualsReference
FormatString
FromTemporalAccessor
GetClassOnAnnotation
GetClassOnClass
HashtableContains
IdentityBinaryExpression
IdentityHashMapBoxing
InstantTemporalUnit
InvalidTimeZoneID
InvalidZoneId
IsInstanceIncompatibleType
JUnitParameterMethodNotFound
LockOnBoxedPrimitive
MathRoundIntLong
MislabeledAndroidString
MisusedDayOfYear
MissingSuperCall
MisusedWeekYear
ModifyingCollectionWithItself
NoCanIgnoreReturnValueOnClasses
NonRuntimeAnnotation
NullableOnContainingClass
NullTernary
OverridesJavaxInjectableMethod
ParcelableCreator
PeriodFrom
PreconditionsInvalidPlaceholder
ProtoBuilderReturnValueIgnored
ProtoFieldNullComparison
RandomModInteger
RectIntersectReturnValueIgnored
ReturnValueIgnored
SelfAssignment
SelfComparison
SelfEquals
SizeGreaterThanOrEqualsZero
StringBuilderInitWithChar
TreeToString
TryFailThrowable
UnnecessaryCheckNotNull
UnusedCollectionModifiedInPlace
XorPower

See https://errorprone.info/bugpatterns for more
information on the checks.

Bug: 253827323
Test: m RUN_ERROR_PRONE=true javac-check
Change-Id: I8b1533cbea835343dcf589cbaa57c63794be58bd
2022-10-15 21:33:28 -07:00
Timi Rautamäki 78ecab8743 Messaging: allow selecting text inside the selected message
Test: receive a message, select it by long press, verify text is selectable.
Change-Id: I9f80df970c6ee1c06b8056c78bffe942eb8eb9bf
Signed-off-by: Timi Rautamäki <timi.rautamaki@gmail.com>
2021-09-19 20:10:11 +00:00
Raman Tenneti 4b52654e98 AOSP/Messaging - Update language to comply with Android's inclusive language guidance.
See https://source.android.com/setup/contribute/respectful-code for reference

BUG=161896447

Test: make and make messagingtests
Change-Id: I01c520f1d5e9eab8dbb25b08d133ae34bd301093
2020-07-29 16:43:46 -07:00
Taesu Lee f2d9199bfb Fix NoSuchMethodError for getTypeInfo()
Load an icon image for audio files from app resources instead because
ContentResolver#getTypeInfo() is for API level >= 29.
And it includes size-fit ic_photo_library_light images also.

Bug: 159987488
Test: Manual

Change-Id: Ie8f766f148a30e105e598e4b7e6b1b22bccda6ae
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2020-06-29 15:51:07 +09:00
Taesu Lee 392850a825 Remove advanced category if no preference
Test: In debug mode, turn off all the configs for advanced category

Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Change-Id: I52ea0905b9d4f03a57b4849e5b575bc5e508dd2d
2020-06-26 19:25:05 +09:00
Taesu Lee 297a6f7047 Fix app initialization issue if no permissions
Call onRequiredPermissionsAcquired() before calling redirect() so that
BugleApplication initialization can be done completed always even
PermissionCheckActivity#onResume() case.

Test: Manual

Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Change-Id: I01bb681442e0b391238bc162ce139ff40d947eaf
2020-06-22 19:14:52 +09:00
Taesu Lee 845aa217fc Fix ConcurrentModificationException
ConcurrentModificationException could be happened during iterating if
parts are added newly.

Test: Select several images on Gallery app and attach them to a message
via Sharing

Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Change-Id: Idb96239ef2c05a08fc0727797b97739aa89f12a4
2020-06-05 14:46:51 +09:00
Taesu Lee fcf6699742 Parse recipients from RESPOND_VIA_MESSAGE correctly
UriUtil#parseRecipientsFromSmsMmsUri() will returns a comma-separated
recipients for common use so that InsertNewMessageAction#createMessage()
can create or get a conversation correctly for RESPOND_VIA_MESSAGE.
In addition, mms/mmsto schemes are added. And it includes small cleanup
intent-filters for LaunchConversationActivity.

Test: adb shell am startservice
-a android.intent.action.RESPOND_VIA_MESSAGE -d "sms:12345678,87654321"
-e android.intent.extra.TEXT "Text"

Change-Id: I291dc765a46846982d059016d44f90873c687867
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2020-05-28 16:43:29 +09:00
Taesu Lee 9a0a21e836 Disallow making a call to emergency numbers
Show an error toast instead since ACTION_CALL intent cannot be used to
call emergency numbers.

Test: Make a call to an emergency number.

Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Change-Id: Ia42c588848b643def068dec1d73e2e917a4b8214
2020-05-25 17:52:44 +09:00
Raman Tenneti eb1e0417eb Revert "Messaging: Add "Mark as read" quick action for message notifications"
This reverts commit f19e916a0d.

Reason for revert: Reverting per Taesu Lee's comments, because it doesn't work and has issues.

Change-Id: I778362b628f4c3ae076dd943e77dee415984fba0
2020-05-20 19:47:44 +00:00
Taesu Lee 95ceb12cdb Hide APN prefs if platform APIs are used
The APN prefs is available if legacy APIs are used with local APN db
only.

Test: Manual

Change-Id: I5883dcb2c406acc601787edd02e0d3272732e6d7
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2020-05-04 19:30:12 +09:00
Taesu Lee 116073d016 Use ic_add_white for consistency instead
Test: Check "New APN" icon in ApnSettingsActivity.

Change-Id: I0fc29384e0714a780842652178e3e88ff311456a
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2020-05-04 18:48:30 +09:00
Taesu Lee 14853cb490 Fix to show APN prefs correctly
Test: Settings -> Advanced -> Access Point Names

Change-Id: Ia3ad443ac056a877abd6cd258c2219d8ee6ff181
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2020-05-04 18:48:30 +09:00
Taesu Lee 1a0f1591de Fix NPE
Check whether SMS delivery report preference is available first because
it could be removed if carriers don't support it.

Test: Manual

Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Change-Id: I9e0049dd61713f7a9638fb19a37aaa261f35d768
2020-04-28 17:28:42 +09:00
Taesu Lee 7ccb748e61 Handle delivered messages as completed messages
Delivered messages could be forwarded and sent time can be shown on
MessageDetailsDialog.

Test: Manual

Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Change-Id: I6e24bdfe6a037ab588914327dbd8abf3f30512ea
2020-04-24 10:22:39 +09:00
Taesu Lee aa23161c03 Dismiss SnackBar when detached
SnackBarManager state is not cleared when SnackBar is detached from a
window without dismiss(). After then it is remained as dismissing state
forever.

Test: 1) Long-press a conversation and click archive action.
      2) Press back key before the snackbar is dismissed.
      3) Repeat 1) and check the snackbar is shown or not.

Change-Id: Icf2cdcd30aea42685db68e5ac36436a34c9c94ae
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2020-04-01 09:58:13 +09:00
Paul Keith f19e916a0d Messaging: Add "Mark as read" quick action for message notifications
Signed-off-by: Luca Stefani <luca.stefani.ge1@gmail.com>
Change-Id: I7194dca022e5062926fa35709de282721ca64320
2020-03-16 15:14:40 +01:00
Treehugger Robot 1dc43f0e09 Merge "New interface to pick a contact as attachment" 2020-03-09 21:44:59 +00:00
Taesu Lee 1412b40ec6 Fix WindowLeaked issue on AttachmentPreview
Stop attaching animation before removal attachment views and hiding the
AttachmentPreview.

Test: Long-press to attach a media from GalleryGridView and uncheck the
      media to detach immediately.

Change-Id: Ia1014609c056c9f35e428f8968b58dc2c1b704f9
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2020-03-06 10:55:44 +00:00
Taesu Lee 45d1e1d044 New interface to pick a contact as attachment
New ContactMediaChooser allows the user to pick a contact from contacts
apps as attachment.

Test: Manual

Change-Id: Idb00cd8a3164a3cac859947affd5cbcc7e41b8c2
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
2020-03-05 18:57:22 +09:00
Marco Sirabella c5cb15c9d8 Allow intent shared subject or title to be mms subject
Test: m, manual
Change-Id: Ibb5eba030320467774cdac1d502ec36c98abcb43
2020-02-22 02:41:01 +00:00