aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/xtremelabs/robolectric/shadows/ShadowDisplay.java
blob: fe0914fcb5d89a14fa033cbe0e1b6d9448cdc7fe (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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
package com.xtremelabs.robolectric.shadows;

import android.graphics.PixelFormat;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.Surface;
import com.xtremelabs.robolectric.internal.Implementation;
import com.xtremelabs.robolectric.internal.Implements;

/**
 * A shadow for Display with some reasonable defaults
 */
@SuppressWarnings({"UnusedDeclaration"})
@Implements(Display.class)
public class ShadowDisplay {
    private int displayId;
    private int width = 480;
    private int height = 800;
    private float density = 1.5f;
    private int densityDpi = DisplayMetrics.DENSITY_HIGH;
    private float xdpi = 240.0f;
    private float ydpi = 240.0f;
    private float scaledDensity = 1.0f;
    private float refreshRate = 60.0f;
    private int rotation = Surface.ROTATION_0;
    private int pixelFormat = PixelFormat.RGBA_4444;

    @Implementation
    public int getHeight() {
        return height;
    }

    @Implementation
    public void getMetrics(DisplayMetrics outMetrics) {
        outMetrics.density = density;
        outMetrics.densityDpi = densityDpi;
        outMetrics.scaledDensity = scaledDensity;
        outMetrics.widthPixels = width;
        outMetrics.heightPixels = height;
        outMetrics.xdpi = xdpi;
        outMetrics.ydpi = ydpi;
    }

    @Implementation
    public int getWidth() {
        return width;
    }

    @Implementation
    public int getDisplayId() {
        return displayId;
    }

    @Implementation
    public float getRefreshRate() {
        return refreshRate;
    }

    @Implementation
    public int getRotation() {
        return rotation;
    }

    @Implementation
    public int getPixelFormat() {
        return pixelFormat;
    }

    public float getDensity() {
        return density;
    }

    public void setDensity(float density) {
        this.density = density;
    }

    public int getDensityDpi() {
        return densityDpi;
    }

    public void setDensityDpi(int densityDpi) {
        this.densityDpi = densityDpi;
    }

    public float getXdpi() {
        return xdpi;
    }

    public void setXdpi(float xdpi) {
        this.xdpi = xdpi;
    }

    public float getYdpi() {
        return ydpi;
    }

    public void setYdpi(float ydpi) {
        this.ydpi = ydpi;
    }

    public float getScaledDensity() {
        return scaledDensity;
    }

    public void setScaledDensity(float scaledDensity) {
        this.scaledDensity = scaledDensity;
    }

    public void setDisplayId(int displayId) {
        this.displayId = displayId;
    }

    public void setWidth(int width) {
        this.width = width;
    }

    public void setHeight(int height) {
        this.height = height;
    }

    public void setRefreshRate(float refreshRate) {
        this.refreshRate = refreshRate;
    }

    public void setRotation(int rotation) {
        this.rotation = rotation;
    }

    public void setPixelFormat(int pixelFormat) {
        this.pixelFormat = pixelFormat;
    }

}