mirror of
https://github.com/fankes/termux-app.git
synced 2025-09-06 02:35:19 +08:00
Merge pull request #726 from dkramer95/OpenBroadcast
Sends broadcast on app open to notify addon termux receivers
This commit is contained in:
@@ -15,6 +15,7 @@ import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.content.ServiceConnection;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.content.pm.ResolveInfo;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Paint;
|
||||
import android.graphics.Typeface;
|
||||
@@ -101,6 +102,8 @@ public final class TermuxActivity extends Activity implements ServiceConnection
|
||||
|
||||
private static final String RELOAD_STYLE_ACTION = "com.termux.app.reload_style";
|
||||
|
||||
private static final String BROADCAST_TERMUX_OPENED = "com.termux.app.OPENED";
|
||||
|
||||
/** The main view of the activity showing the terminal. Initialized in onCreate(). */
|
||||
@SuppressWarnings("NullableProblems")
|
||||
@NonNull
|
||||
@@ -324,6 +327,26 @@ public final class TermuxActivity extends Activity implements ServiceConnection
|
||||
checkForFontAndColors();
|
||||
|
||||
mBellSoundId = mBellSoundPool.load(this, R.raw.bell, 1);
|
||||
|
||||
sendOpenedBroadcast();
|
||||
}
|
||||
|
||||
/**
|
||||
* Send a broadcast notifying Termux app has been opened
|
||||
*/
|
||||
void sendOpenedBroadcast() {
|
||||
Intent broadcast = new Intent(BROADCAST_TERMUX_OPENED);
|
||||
List<ResolveInfo> matches = getPackageManager().queryBroadcastReceivers(broadcast, 0);
|
||||
|
||||
// send broadcast to registered Termux receivers
|
||||
// this technique is needed to work around broadcast changes that Oreo introduced
|
||||
for (ResolveInfo info : matches) {
|
||||
Intent explicitBroadcast = new Intent(broadcast);
|
||||
ComponentName cname = new ComponentName(info.activityInfo.applicationInfo.packageName,
|
||||
info.activityInfo.name);
|
||||
explicitBroadcast.setComponent(cname);
|
||||
sendBroadcast(explicitBroadcast);
|
||||
}
|
||||
}
|
||||
|
||||
void toggleShowExtraKeys() {
|
||||
|
Reference in New Issue
Block a user