Commit Graph

3708 Commits

Author SHA1 Message Date
Andy Scherzinger
1f936cb677
migrate to sdk=31
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-22 10:59:38 +02:00
Tim Krüger
6e4841ae3a
Rename 'MagicAudioManager' and 'MagicBluetoothManager'
It's not magic but WebRtc related.

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-06-21 15:13:47 +02:00
Tim Krüger
e14f00fae7
Request 'BLUETOOTH_CONNECT' permissions
Request the 'BLUETOOTH_CONNECT' permissions if not already granted.

If the permission is be granted in this request, the
'MagicBluetoothManger' will be started.

See: #2132

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-06-21 15:13:40 +02:00
Tim Krüger
dedbe40cc0
Launch 'MagicBluetoothManager' independently
This change is needed to make the 'MagicBluetoothManager' startable
after the from Android SDK 31 introduced BLUETOOTH_CONNECT is granted by
the user.

Before this change the 'MagicBluetoothManager' was only started in
'MagicAudioManager#start'. Now the new method
'MagicAudioManager#startBluetoothManager' can be used to start the
'MagicBluetoothManager'.

This change is also a preperation to fix #1309 and #2114.

See: #2132, #1309, #2124

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-06-17 15:51:44 +02:00
Tim Krüger
4821b02729
Add Android build switch for checking bluetooth permissions
Refactored method 'hasPermission' to 'hasNoBluetoothPermission'. The new method
respect the in SKD 31 introduced permission BLUETOOTH_CONNECT. For older SDK
versions the permission BLUETOOTH will be used.

Additionaly make methods private which need bluetooth permissions and only
called locally. For public methods which need bluetooth permissions the method
'hasNoBluetoothPermission' is called to check them.
Also add suppress lint annotation for 'MissingPermission'.

From SDK 30 to SDK 31 the bluetooth related permissions changed and it
is suggested to add the attribute 'android:maxSdkVersion="30"' to the
legacy BLUETOOTH permission in the 'AndroidManifest.xml' [1]:

> For your legacy Bluetooth-related permission declarations, set
> android:maxSdkVersion to 30. This app compatibility step helps the system
> grant your app only the Bluetooth permissions that it needs when installed
> on devices that run Android 12 or higher.

This is explicitly not done here!

During runtime (on Android 12) while starting the 'MagicBluetoothManger' the
following part in 'android.bluetooth.BluetootHeadset' constructor will be
executed and results in the previous exception:

  // Preserve legacy compatibility where apps were depending on
  // registerStateChangeCallback() performing a permissions check which
  // has been relaxed in modern platform versions
  if (context.getApplicationInfo().targetSdkVersion <= Build.VERSION_CODES.R
           && context.checkSelfPermission(android.Manifest.permission.BLUETOOTH)
                   != PackageManager.PERMISSION_GRANTED) {
     throw new SecurityException("Need BLUETOOTH permission");
 }

In the 'build.gradle' the 'targetSdkVersion 30' and 'compileSdkVersion 31' is
configured. Because the 'MagicBluetoothManager' checks for the 'targetSdkVersion'
instead of 'Build.VERSION.SDK_INT' also on a Android 12 (SDK 31) the 'BLUETOOTH'
permission is needed.

So the solution is to don't set `android:maxSdkVersion="30"' for the BLUETOOTH
permission and request the BLUETOOTH_CONNECT permission.

Resolves: #2132
See:
  [1] https://web.archive.org/web/20220416121005/https://developer.android.com/guide/topics/connectivity/bluetooth/permissions#declare-android12-or-higher

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-06-17 15:51:44 +02:00
Nextcloud bot
45c33de776
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-09 04:25:53 +00:00
Nextcloud bot
0189b6e8fc
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-08 04:28:05 +00:00
Dariusz Olszewski
f1dfb00ae0 Use unique request code to make sure that a new PendingIntent gets created for each notification
Signed-off-by: Dariusz Olszewski <starypatyk@users.noreply.github.com>
2022-06-07 15:43:09 +00:00
Álvaro Brey
1ee92e39dd
ChatController: fix scroll to unread messages
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-07 11:39:34 +02:00
Nextcloud bot
9c2fa0b54d
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-07 04:24:08 +00:00
Nextcloud Android Bot
761d89b776 Weekly 14.1.0 Alpha 08 2022-06-06 03:15:13 +00:00
Nextcloud bot
26d7540bfb
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-05 04:27:46 +00:00
Nextcloud bot
28d6bfb522
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-04 04:26:18 +00:00
Nextcloud bot
4cf7abe6bd
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-03 16:28:32 +00:00
Tim Krüger
3cc4a444f2
Merge pull request #2127 from nextcloud/bugfix/noid/ignore-using-private-resources-globally
Disable lint check 'PrivateResource'
2022-06-03 17:33:59 +02:00
Tim Krüger
b4efc86b8e
Disable lint check 'PrivateResource'
Removes the in commit cedd929f10 added string attribute 'tools:ignore'. These
would require an adjustment to our CI which we want to avoid.

So instead the lint check 'PrivateResousce' is globally deactivated.

See: commit cedd929f10, #2110

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-06-03 15:37:59 +02:00
Andy Scherzinger
8ae9431126
Merge pull request #2117 from nextcloud/dependabot/gradle/androidx.core-core-ktx-1.8.0
Bump core-ktx from 1.7.0 to 1.8.0
2022-06-03 15:11:11 +02:00
dependabot[bot]
63c2254f27
Bump mockito-core from 4.6.0 to 4.6.1
Bumps [mockito-core](https://github.com/mockito/mockito) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-03 11:53:36 +00:00
Andy Scherzinger
ad60de30c6
enforce not null
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-03 13:38:53 +02:00
dependabot[bot]
156a845b16
Bump core-ktx from 1.7.0 to 1.8.0
Bumps core-ktx from 1.7.0 to 1.8.0.

---
updated-dependencies:
- dependency-name: androidx.core:core-ktx
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-03 11:24:11 +00:00
Andy Scherzinger
769f2f1ab4
Merge pull request #2105 from nextcloud/dependabot/gradle/org.mockito-mockito-core-4.6.0
Bump mockito-core from 4.5.1 to 4.6.0
2022-06-03 13:23:02 +02:00
Valdnet
54acba58ec
i18n: Add a space
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-06-03 09:10:53 +02:00
dependabot[bot]
b9eb389da9
Bump mockito-core from 4.5.1 to 4.6.0
Bumps [mockito-core](https://github.com/mockito/mockito) from 4.5.1 to 4.6.0.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v4.5.1...v4.6.0)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-02 11:21:23 +00:00
Andy Scherzinger
5d482e4857
Merge pull request #2028 from nextcloud/feat/1047/message-search
Message search
2022-06-02 13:18:41 +02:00
Andy Scherzinger
4f7d87539b
Bump androidxCameraVersion from 1.1.0-rc01 to 1.1.0-rc02
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-02 12:29:20 +02:00
dependabot[bot]
22249a6ea6
Bump appcompat from 1.4.1 to 1.4.2
Bumps appcompat from 1.4.1 to 1.4.2.

---
updated-dependencies:
- dependency-name: androidx.appcompat:appcompat
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-02 09:11:53 +00:00
Andy Scherzinger
cedd929f10
override emoji search filed hint text to be translatable
Resolves #2110

Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-02 10:19:28 +02:00
Nextcloud bot
0cfbf993e8
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-06-02 04:30:28 +00:00
Álvaro Brey
b097e3aac4
Message search: disable feature if unified search capability not present
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 17:42:59 +02:00
Álvaro Brey
7bfc3f60f1
Fix MessageSearchHelperTest after removing user parameter from repository
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:20 +02:00
Álvaro Brey
eddb90d31b
Message search: avoid passing user entity to repository, inject userProvider instead
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:20 +02:00
Álvaro Brey
c10c45630c
Fix some lint issues
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:19 +02:00
Álvaro Brey
232334efac
Fix spotbugs
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:19 +02:00
Álvaro Brey
1f00f426c7
MessageSearchActivity: don't skip viewmodel when selecting message
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:19 +02:00
Álvaro Brey
0d21ce4f17
MessageSearchActivity: add loading animation + swipe to refresh
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:19 +02:00
Álvaro Brey
dd55ab5741
Add ability to scroll to message selected in search results
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:19 +02:00
Álvaro Brey
b5d8f6ee95
Implement search in specific chat
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:19 +02:00
Álvaro Brey
d1d61e87a9
Use rxjava to debounce search instead of custom debouncer
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:19 +02:00
Álvaro Brey
b10ea2f41f
Add unit tests for MessageSearchHelper
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:19 +02:00
Álvaro Brey
1d632f3c96
Implement global message search
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:10 +02:00
dependabot[bot]
ce990fd57f
Bump material from 1.5.0 to 1.6.1
Bumps [material](https://github.com/material-components/material-components-android) from 1.5.0 to 1.6.1.
- [Release notes](https://github.com/material-components/material-components-android/releases)
- [Commits](https://github.com/material-components/material-components-android/compare/1.5.0...1.6.1)

---
updated-dependencies:
- dependency-name: com.google.android.material:material
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 01:13:12 +00:00
Nextcloud Android Bot
8560728546 Weekly 14.1.0 Alpha 07 2022-05-31 07:08:56 +00:00
Nextcloud bot
e4268d6edc
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-05-31 04:23:04 +00:00
Andy Scherzinger
714fd9d74b
Bump emoji-google from 0.13.0 to 0.15.0
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-05-29 14:07:39 +02:00
dependabot[bot]
0100c139dc
Bump emoji-google from 0.13.0 to 0.14.0
Bumps [emoji-google](https://github.com/vanniktech/Emoji) from 0.13.0 to 0.14.0.
- [Release notes](https://github.com/vanniktech/Emoji/releases)
- [Changelog](https://github.com/vanniktech/Emoji/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vanniktech/Emoji/compare/0.13.0...0.14.0)

---
updated-dependencies:
- dependency-name: com.vanniktech:emoji-google
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-29 14:07:38 +02:00
Nextcloud bot
bb6536160c
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-05-28 04:21:21 +00:00
Andy Scherzinger
fcf20e3362
Merge pull request #1939 from nextcloud/dependabot/gradle/org.mockito-mockito-core-4.5.1
Bump mockito-core from 3.12.4 to 4.5.1
2022-05-27 19:43:09 +02:00
Marcel Hibbe
2435d8d296
Add GenericOCS
responses contain "ocs" which was deleted by aab00c5e8f

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-05-27 16:02:46 +02:00
Álvaro Brey
956e6b8fce
ShareUtilsTest: remove date() test
Fails, has nothing to do with ShareUtils, and it's testing a third-party library

Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-05-27 14:54:02 +02:00
Álvaro Brey
4c2c3bf59c
build: Remove powermock
Incompatible with mockito 4.x, and a bad practice anyway

Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-05-27 14:41:26 +02:00