(output: &str)
| 2090 | } |
| 2091 | |
| 2092 | fn parse_android_display_metrics(output: &str) -> Option<AndroidDisplayMetrics> { |
| 2093 | let rotation = parse_android_display_rotation(output).unwrap_or(0); |
| 2094 | let corner_radii = parse_android_rounded_corners(output).unwrap_or(AndroidCornerRadii::ZERO); |
| 2095 | if let Some(line) = output |
| 2096 | .lines() |
| 2097 | .find(|line| line.contains("mOverrideDisplayInfo=DisplayInfo")) |
| 2098 | { |
| 2099 | if let Some((width, height)) = parse_display_info_app_size(line) { |
| 2100 | return Some(AndroidDisplayMetrics { |
| 2101 | width, |
| 2102 | height, |
| 2103 | rotation_quarter_turns: rotation, |
| 2104 | corner_radii, |
| 2105 | }); |
| 2106 | } |
| 2107 | } |
| 2108 | if let Some((width, height)) = output.lines().find_map(parse_logical_frame_size) { |
| 2109 | return Some(AndroidDisplayMetrics { |
| 2110 | width, |
| 2111 | height, |
| 2112 | rotation_quarter_turns: rotation, |
| 2113 | corner_radii, |
| 2114 | }); |
| 2115 | } |
| 2116 | None |
| 2117 | } |
| 2118 | |
| 2119 | fn parse_android_rounded_corners(output: &str) -> Option<AndroidCornerRadii> { |
| 2120 | let mut radii = AndroidCornerRadii::ZERO; |
no test coverage detected