Example usage for android.hardware.display DisplayManager registerDisplayListener

List of usage examples for android.hardware.display DisplayManager registerDisplayListener

Introduction

In this page you can find the example usage for android.hardware.display DisplayManager registerDisplayListener.

Prototype

public void registerDisplayListener(DisplayListener listener, Handler handler) 

Source Link

Document

Registers an display listener to receive notifications about when displays are added, removed or changed.

Usage

From source file:com.farmerbb.secondscreen.service.NotificationService.java

@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override// www . ja  va 2s  .co  m
public void onCreate() {
    // Load preferences
    SharedPreferences prefCurrent = U.getPrefCurrent(this);
    SharedPreferences prefMain = U.getPrefMain(this);

    // Register broadcast receivers for screen on and user present
    final IntentFilter filter1 = new IntentFilter();
    final IntentFilter filter2 = new IntentFilter();

    filter1.addAction(Intent.ACTION_SCREEN_ON);
    filter1.addAction(Intent.ACTION_DREAMING_STARTED);
    filter2.addAction(Intent.ACTION_USER_PRESENT);

    registerReceiver(screenOnReceiver, filter1);
    registerReceiver(userPresentReceiver, filter2);

    DisplayManager manager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    manager.registerDisplayListener(listener, null);

    // Intent to launch MainActivity when notification is clicked
    Intent mainActivityIntent = new Intent(this, MainActivity.class);
    PendingIntent mainActivityPendingIntent = PendingIntent.getActivity(this, 0, mainActivityIntent,
            PendingIntent.FLAG_UPDATE_CURRENT);

    // Build the notification
    mBuilder = new NotificationCompat.Builder(this).setContentIntent(mainActivityPendingIntent)
            .setSmallIcon(R.drawable.ic_action_dock)
            .setContentTitle(getResources().getString(R.string.notification))
            .setContentText(
                    prefCurrent.getString("profile_name", getResources().getString(R.string.action_new)))
            .setOngoing(true);

    // Set action buttons
    setActionButton(prefMain.getString("notification_action_2", "turn-off"), prefCurrent, 0);
    setActionButton(prefMain.getString("notification_action", "lock-device"), prefCurrent, 1);

    // Respect setting to hide notification
    if (prefMain.getBoolean("hide_notification", false))
        mBuilder.setPriority(Notification.PRIORITY_MIN);

    // Set notification color on Lollipop
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        mBuilder.setColor(getResources().getColor(R.color.primary_dark))
                .setVisibility(Notification.VISIBILITY_PUBLIC);
    }

    // Start NotificationService
    startForeground(1, mBuilder.build());

    // Draw system overlay, if needed
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && Settings.canDrawOverlays(this)
            && prefCurrent.getString("rotation_lock_new", "fallback").equals("landscape")) {
        windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
        WindowManager.LayoutParams params = new WindowManager.LayoutParams(
                WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT,
                WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
                PixelFormat.TRANSLUCENT);

        params.screenOrientation = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE;

        view = new View(this);
        windowManager.addView(view, params);
    }
}

From source file:com.projecttango.examples.java.meshbuilder.MeshBuilderActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mPauseButton = (Button) findViewById(R.id.pause_button);
    mSurfaceView = (GLSurfaceView) findViewById(R.id.surfaceview);
    // Set ZOrderOnTop to false so the other views don't get hidden by the SurfaceView.
    mSurfaceView.setZOrderOnTop(false);/*  ww w.  j  av  a 2 s.  co  m*/
    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override
            public void onDisplayAdded(int displayId) {
            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }
    connectRenderer();
}

From source file:com.projecttango.examples.java.floorplanreconstruction.FloorPlanReconstructionActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    TypedValue typedValue = new TypedValue();
    getResources().getValue(R.dimen.min_area_space, typedValue, true);
    mMinAreaSpace = typedValue.getFloat();

    mPauseButton = (Button) findViewById(R.id.pause_button);
    mFloorplanView = (FloorplanView) findViewById(R.id.floorplan);
    mFloorplanView.registerCallback(this);
    mAreaText = (TextView) findViewById(R.id.area_text);
    mHeightText = (TextView) findViewById(R.id.height_text);
    mDistanceText = (TextView) findViewById(R.id.floordistance_text);

    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override/*  w w w  .  j  a va  2s  .com*/
            public void onDisplayAdded(int displayId) {
            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }
}

From source file:com.projecttango.examples.java.augmentedreality.AugmentedRealityActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mSurfaceView = (SurfaceView) findViewById(R.id.surfaceview);
    mRenderer = new AugmentedRealityRenderer(this);

    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override/*from   w  ww. j  a v  a 2s.  co  m*/
            public void onDisplayAdded(int displayId) {
            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }

    setupRenderer();
}

From source file:com.projecttango.examples.java.openglar.OpenGlAugmentedRealityActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mSurfaceView = (GLSurfaceView) findViewById(R.id.surfaceview);
    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override// w w  w.ja v a2 s. c  o  m
            public void onDisplayAdded(int displayId) {
            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }

    setupRenderer();
}

From source file:com.projecttango.examples.java.pointcloud.PointCloudActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_point_cloud);

    mPointCountTextView = (TextView) findViewById(R.id.point_count_textview);
    mAverageZTextView = (TextView) findViewById(R.id.average_z_textview);
    mSurfaceView = (RajawaliSurfaceView) findViewById(R.id.gl_surface_view);

    mPointCloudManager = new TangoPointCloudManager();
    mTangoUx = setupTangoUxAndLayout();/*from  w  w  w. j  a v  a2 s. co  m*/
    mRenderer = new PointCloudRajawaliRenderer(this);
    setupRenderer();

    /* Setup tts */
    tts = new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
        @Override
        public void onInit(int status) {
            if (status == TextToSpeech.SUCCESS) {
                tts.setLanguage(Locale.US);
                tts.speak("ICU helper initialized.", TextToSpeech.QUEUE_FLUSH, null);
            }
        }
    });

    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override
            public void onDisplayAdded(int displayId) {

            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }
}

From source file:com.projecttango.examples.java.planefitting.PlaneFittingActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mSurfaceView = new SurfaceView(this);
    mRenderer = new PlaneFittingRenderer(this);
    mSurfaceView.setSurfaceRenderer(mRenderer);
    mSurfaceView.setOnTouchListener(this);
    mPointCloudManager = new TangoPointCloudManager();
    setContentView(mSurfaceView);//from   ww  w .  j  a  va2 s. c o  m

    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override
            public void onDisplayAdded(int displayId) {
            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }
}

From source file:com.projecttango.examples.java.occlusion.OcclusionActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mSurfaceView = (GLSurfaceView) findViewById(R.id.surfaceview);
    // Set ZOrderOnTop to false so the other views don't get hidden by the SurfaceView.
    mSurfaceView.setZOrderOnTop(false);// w  w w  . j ava2 s  .  co  m
    mSurfaceView.setOnTouchListener(this);
    mPointCloudManager = new TangoPointCloudManager();
    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override
            public void onDisplayAdded(int displayId) {
            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }
    connectRenderer();
}

From source file:com.projecttango.examples.java.greenscreen.GreenScreenActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mSurfaceView = (GLSurfaceView) findViewById(R.id.surfaceview);
    mDepthSeekbar = (SeekBar) findViewById(R.id.depth_seekbar);
    mDepthSeekbar.setOnSeekBarChangeListener(new DepthSeekbarListener());
    mPanelFlash = (FrameLayout) findViewById(R.id.panel_flash);
    mPointCloudManager = new TangoPointCloudManager();
    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override//  ww  w  . ja  v a  2s.  c  o m
            public void onDisplayAdded(int displayId) {
            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }
    setupRenderer();
}

From source file:com.projecttango.examples.java.pointtopoint.PointToPointActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mSurfaceView = (SurfaceView) findViewById(R.id.ar_view);
    mRenderer = new PointToPointRenderer(this);
    mSurfaceView.setSurfaceRenderer(mRenderer);
    mSurfaceView.setOnTouchListener(this);
    mPointCloudManager = new TangoPointCloudManager();
    mDistanceMeasure = (TextView) findViewById(R.id.distance_textview);
    mBilateralBox = (CheckBox) findViewById(R.id.check_box);
    mLinePoints[0] = null;/*from w  w  w .  j  av  a2 s  .  c o m*/
    mLinePoints[1] = null;

    DisplayManager displayManager = (DisplayManager) getSystemService(DISPLAY_SERVICE);
    if (displayManager != null) {
        displayManager.registerDisplayListener(new DisplayManager.DisplayListener() {
            @Override
            public void onDisplayAdded(int displayId) {
            }

            @Override
            public void onDisplayChanged(int displayId) {
                synchronized (this) {
                    setDisplayRotation();
                }
            }

            @Override
            public void onDisplayRemoved(int displayId) {
            }
        }, null);
    }
}