Skip to content

Commit 714b37e

Browse files
authored
Merge pull request #10318 from atorralba/atorralba/notificationcompat-steps
Java: Add summaries for NotificationCompat and its inner classes
2 parents b8bc7fb + b745b5a commit 714b37e

File tree

8 files changed

+1503
-7
lines changed

8 files changed

+1503
-7
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
category: minorAnalysis
3+
---
4+
* Added new flow steps for `androidx.core.app.NotificationCompat` and its inner classes.
5+

java/ql/lib/semmle/code/java/frameworks/android/Notifications.qll

Lines changed: 30 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,17 @@ private class NotificationBuildersSummaryModels extends SummaryModelCsv {
1919
"android.app;Notification$Action$Builder;true;build;;;Argument[-1];ReturnValue;taint;manual",
2020
"android.app;Notification$Action$Builder;true;build;;;Argument[-1].SyntheticField[android.content.Intent.extras];ReturnValue.SyntheticField[android.content.Intent.extras];value;manual",
2121
"android.app;Notification$Action$Builder;true;getExtras;;;Argument[-1].SyntheticField[android.content.Intent.extras];ReturnValue;value;manual",
22+
"androidx.core.app;NotificationCompat$Action;true;Action;(int,CharSequence,PendingIntent);;Argument[2];Argument[-1];taint;manual",
23+
"androidx.core.app;NotificationCompat$Action;true;Action;(IconCompat,CharSequence,PendingIntent);;Argument[2];Argument[-1];taint;manual",
24+
"androidx.core.app;NotificationCompat$Action;true;getExtras;;;Argument[-1].SyntheticField[android.content.Intent.extras];ReturnValue;value;manual",
25+
"androidx.core.app;NotificationCompat$Action$Builder;true;Builder;(int,CharSequence,PendingIntent);;Argument[2];Argument[-1];taint;manual",
26+
"androidx.core.app;NotificationCompat$Action$Builder;true;Builder;(IconCompat,CharSequence,PendingIntent);;Argument[2];Argument[-1];taint;manual",
27+
"androidx.core.app;NotificationCompat$Action$Builder;true;Builder;(Action);;Argument[0];Argument[-1];taint;manual",
28+
"androidx.core.app;NotificationCompat$Action$Builder;true;addExtras;;;Argument[0].MapKey;Argument[-1].SyntheticField[android.content.Intent.extras].MapKey;value;manual",
29+
"androidx.core.app;NotificationCompat$Action$Builder;true;addExtras;;;Argument[0].MapValue;Argument[-1].SyntheticField[android.content.Intent.extras].MapValue;value;manual",
30+
"androidx.core.app;NotificationCompat$Action$Builder;true;build;;;Argument[-1];ReturnValue;taint;manual",
31+
"androidx.core.app;NotificationCompat$Action$Builder;true;build;;;Argument[-1].SyntheticField[android.content.Intent.extras];ReturnValue.SyntheticField[android.content.Intent.extras];value;manual",
32+
"androidx.core.app;NotificationCompat$Action$Builder;true;getExtras;;;Argument[-1].SyntheticField[android.content.Intent.extras];ReturnValue;value;manual",
2233
"android.app;Notification$Builder;true;addAction;(int,CharSequence,PendingIntent);;Argument[2];Argument[-1];taint;manual",
2334
"android.app;Notification$Builder;true;addAction;(Action);;Argument[0];Argument[-1];taint;manual",
2435
"android.app;Notification$Builder;true;addExtras;;;Argument[0].MapKey;Argument[-1].SyntheticField[android.content.Intent.extras].MapKey;value;manual",
@@ -32,18 +43,30 @@ private class NotificationBuildersSummaryModels extends SummaryModelCsv {
3243
"android.app;Notification$Builder;true;setExtras;;;Argument[0];Argument[-1].SyntheticField[android.content.Intent.extras];value;manual",
3344
"android.app;Notification$Builder;true;setDeleteIntent;;;Argument[0];Argument[-1];taint;manual",
3445
"android.app;Notification$Builder;true;setPublicVersion;;;Argument[0];Argument[-1];taint;manual",
46+
"androidx.core.app;NotificationCompat$Builder;true;addAction;(int,CharSequence,PendingIntent);;Argument[2];Argument[-1];taint;manual",
47+
"androidx.core.app;NotificationCompat$Builder;true;addAction;(Action);;Argument[0];Argument[-1];taint;manual",
48+
"androidx.core.app;NotificationCompat$Builder;true;addExtras;;;Argument[0].MapKey;Argument[-1].SyntheticField[android.content.Intent.extras].MapKey;value;manual",
49+
"androidx.core.app;NotificationCompat$Builder;true;addExtras;;;Argument[0].MapValue;Argument[-1].SyntheticField[android.content.Intent.extras].MapValue;value;manual",
50+
"androidx.core.app;NotificationCompat$Builder;true;build;;;Argument[-1];ReturnValue;taint;manual",
51+
"androidx.core.app;NotificationCompat$Builder;true;build;;;Argument[-1].SyntheticField[android.content.Intent.extras];ReturnValue.Field[android.app.Notification.extras];value;manual",
52+
"androidx.core.app;NotificationCompat$Builder;true;setContentIntent;;;Argument[0];Argument[-1];taint;manual",
53+
"androidx.core.app;NotificationCompat$Builder;true;getExtras;;;Argument[-1].SyntheticField[android.content.Intent.extras];ReturnValue;value;manual",
54+
"androidx.core.app;NotificationCompat$Builder;true;setExtras;;;Argument[0];Argument[-1].SyntheticField[android.content.Intent.extras];value;manual",
55+
"androidx.core.app;NotificationCompat$Builder;true;setDeleteIntent;;;Argument[0];Argument[-1];taint;manual",
56+
"androidx.core.app;NotificationCompat$Builder;true;setPublicVersion;;;Argument[0];Argument[-1];taint;manual",
3557
"android.app;Notification$Style;true;build;;;Argument[-1];ReturnValue;taint;manual",
3658
"android.app;Notification$BigPictureStyle;true;BigPictureStyle;(Builder);;Argument[0];Argument[-1];taint;manual",
3759
"android.app;Notification$BigTextStyle;true;BigTextStyle;(Builder);;Argument[0];Argument[-1];taint;manual",
3860
"android.app;Notification$InboxStyle;true;InboxStyle;(Builder);;Argument[0];Argument[-1];taint;manual",
3961
"android.app;Notification$MediaStyle;true;MediaStyle;(Builder);;Argument[0];Argument[-1];taint;manual",
4062
// Fluent models
41-
"android.app;Notification$Action$Builder;true;" +
63+
["android.app;Notification", "androidx.core.app;NotificationCompat"] +
64+
"$Action$Builder;true;" +
4265
[
4366
"addExtras", "addRemoteInput", "extend", "setAllowGeneratedReplies",
4467
"setAuthenticationRequired", "setContextual", "setSemanticAction"
4568
] + ";;;Argument[-1];ReturnValue;value;manual",
46-
"android.app;Notification$Builder;true;" +
69+
["android.app;Notification", "androidx.core.app;NotificationCompat"] + "$Builder;true;" +
4770
[
4871
"addAction", "addExtras", "addPerson", "extend", "setActions", "setAutoCancel",
4972
"setBadgeIconType", "setBubbleMetadata", "setCategory", "setChannelId",
@@ -58,15 +81,16 @@ private class NotificationBuildersSummaryModels extends SummaryModelCsv {
5881
"setSubText", "setTicker", "setTimeoutAfter", "setUsesChronometer", "setVibrate",
5982
"setVisibility", "setWhen"
6083
] + ";;;Argument[-1];ReturnValue;value;manual",
61-
"android.app;Notification$BigPictureStyle;true;" +
84+
["android.app;Notification", "androidx.core.app;NotificationCompat"] +
85+
"$BigPictureStyle;true;" +
6286
[
6387
"bigLargeIcon", "bigPicture", "setBigContentTitle", "setContentDescription",
6488
"setSummaryText", "showBigPictureWhenCollapsed"
6589
] + ";;;Argument[-1];ReturnValue;value;manual",
66-
"android.app;Notification$BigTextStyle;true;" +
67-
["bigText", "setBigContentTitle", "setSummaryText"] +
90+
["android.app;Notification", "androidx.core.app;NotificationCompat"] + "$BigTextStyle;true;"
91+
+ ["bigText", "setBigContentTitle", "setSummaryText"] +
6892
";;;Argument[-1];ReturnValue;value;manual",
69-
"android.app;Notification$InboxStyle;true;" +
93+
["android.app;Notification", "androidx.core.app;NotificationCompat"] + "$InboxStyle;true;" +
7094
["addLine", "setBigContentTitle", "setSummaryText"] +
7195
";;;Argument[-1];ReturnValue;value;manual",
7296
"android.app;Notification$MediaStyle;true;" +

0 commit comments

Comments
 (0)