diff options
author | Peiyong Lin <lpy@google.com> | 2020-02-11 11:03:13 -0800 |
---|---|---|
committer | Peiyong Lin <lpy@google.com> | 2020-02-11 16:50:26 -0800 |
commit | 4e89f929d76adfaa5f0e4b5dc868fe6bbabeb97c (patch) | |
tree | 69dc792823dbd2ba02722ae7d9e5825c3a900f3e /src/com/android/settings/development/graphicsdriver/GraphicsDriverContentObserver.java | |
parent | 9368270fe24e8fd2a59d7bce3993a288c819d185 (diff) |
Rename GameDriver* to GraphicsDriver*.
To make graphics driver selection more generic, rename GameDriver
specific classes to GraphicsDriver.
Bug: b/148626177
Test: make RunSettingsRoboTests ROBOTEST_FILTER=GraphicsDriver
Change-Id: If2780b32e2826bda56de11734736260f916182d0
Diffstat (limited to 'src/com/android/settings/development/graphicsdriver/GraphicsDriverContentObserver.java')
-rw-r--r-- | src/com/android/settings/development/graphicsdriver/GraphicsDriverContentObserver.java | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/src/com/android/settings/development/graphicsdriver/GraphicsDriverContentObserver.java b/src/com/android/settings/development/graphicsdriver/GraphicsDriverContentObserver.java new file mode 100644 index 0000000000..8317800934 --- /dev/null +++ b/src/com/android/settings/development/graphicsdriver/GraphicsDriverContentObserver.java @@ -0,0 +1,64 @@ +/* + * Copyright 2019 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.settings.development.graphicsdriver; + +import android.content.ContentResolver; +import android.database.ContentObserver; +import android.os.Handler; +import android.provider.Settings; + +import androidx.annotation.VisibleForTesting; + +/** + * Helper class to observe Graphics Driver settings global change. + */ +public class GraphicsDriverContentObserver extends ContentObserver { + + interface OnGraphicsDriverContentChangedListener { + void onGraphicsDriverContentChanged(); + } + + @VisibleForTesting + OnGraphicsDriverContentChangedListener mListener; + + public GraphicsDriverContentObserver(Handler handler, + OnGraphicsDriverContentChangedListener listener) { + super(handler); + mListener = listener; + } + + @Override + public void onChange(boolean selfChange) { + super.onChange(selfChange); + mListener.onGraphicsDriverContentChanged(); + } + + /** + * Register GraphicsDriverContentObserver to ContentResolver. + */ + public void register(ContentResolver contentResolver) { + contentResolver.registerContentObserver( + Settings.Global.getUriFor(Settings.Global.GAME_DRIVER_ALL_APPS), false, this); + } + + /** + * Unregister GraphicsDriverContentObserver. + */ + public void unregister(ContentResolver contentResolver) { + contentResolver.unregisterContentObserver(this); + } +} |