Navaron Bracke

inline display listener instead of separate class

@@ -44,7 +44,7 @@ class MobileScanner( @@ -44,7 +44,7 @@ class MobileScanner(
44 private var scanner = BarcodeScanning.getClient() 44 private var scanner = BarcodeScanning.getClient()
45 private var lastScanned: List<String?>? = null 45 private var lastScanned: List<String?>? = null
46 private var scannerTimeout = false 46 private var scannerTimeout = false
47 - private var displayListener: MobileScannerDisplayListener? = null 47 + private var displayListener: DisplayManager.DisplayListener? = null
48 48
49 /// Configurable variables 49 /// Configurable variables
50 var scanWindow: List<Float>? = null 50 var scanWindow: List<Float>? = null
@@ -272,9 +272,15 @@ class MobileScanner( @@ -272,9 +272,15 @@ class MobileScanner(
272 analysisBuilder.setTargetResolution(getResolution(cameraResolution)) 272 analysisBuilder.setTargetResolution(getResolution(cameraResolution))
273 273
274 if (displayListener == null) { 274 if (displayListener == null) {
275 - displayListener = MobileScannerDisplayListener { 275 + displayListener = object : DisplayManager.DisplayListener {
  276 + override fun onDisplayAdded(displayId: Int) {}
  277 +
  278 + override fun onDisplayRemoved(displayId: Int) {}
  279 +
  280 + override fun onDisplayChanged(displayId: Int) {
276 analysisBuilder.setTargetResolution(getResolution(cameraResolution)) 281 analysisBuilder.setTargetResolution(getResolution(cameraResolution))
277 } 282 }
  283 + }
278 284
279 displayManager.registerDisplayListener( 285 displayManager.registerDisplayListener(
280 displayListener, null, 286 displayListener, null,
1 -package dev.steenbakker.mobile_scanner  
2 -  
3 -import android.hardware.display.DisplayManager  
4 -  
5 -/**  
6 - * This class will listen for display changes  
7 - * and executes `onUpdateResolution` when that happens.  
8 - */  
9 -class MobileScannerDisplayListener(  
10 - private val onUpdateResolution: () -> Unit  
11 -) : DisplayManager.DisplayListener {  
12 - override fun onDisplayAdded(displayId: Int) {}  
13 -  
14 - override fun onDisplayRemoved(displayId: Int) {}  
15 -  
16 - override fun onDisplayChanged(displayId: Int) {  
17 - onUpdateResolution()  
18 - }  
19 -}