blob: 9cd316944f05f4c5245ca57c99dd5562f20464fd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
package org.robolectric.shadows;
import android.os.Build.VERSION_CODES;
import android.view.translation.TranslationCapability;
import android.view.translation.TranslationManager;
import com.google.common.collect.HashBasedTable;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Table;
import java.util.Set;
import org.robolectric.annotation.Implementation;
import org.robolectric.annotation.Implements;
/** Shadow for {@link TranslationManager}. */
@Implements(
value = TranslationManager.class,
minSdk = VERSION_CODES.S,
isInAndroidSdk = false // turn off shadowOf generation
)
public class ShadowTranslationManager {
private final Table<Integer, Integer, ImmutableSet<TranslationCapability>>
onDeviceTranslationCapabilities = HashBasedTable.create();
@Implementation
protected Set<TranslationCapability> getOnDeviceTranslationCapabilities(
int sourceFormat, int targetFormat) {
if (!onDeviceTranslationCapabilities.contains(sourceFormat, targetFormat)) {
return ImmutableSet.of();
}
return onDeviceTranslationCapabilities.get(sourceFormat, targetFormat);
}
public void setOnDeviceTranslationCapabilities(
int sourceFormat, int targetFormat, Set<TranslationCapability> capabilities) {
onDeviceTranslationCapabilities.put(
sourceFormat, targetFormat, ImmutableSet.copyOf(capabilities));
}
}
|