Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9429513c authored by Jason Monk's avatar Jason Monk
Browse files

Round out the QS API

 - Add startActivityAndCollapse, to make collapsing the shade easy
 - Add isSecure()
 - Add isLocked()
 - Add unlockandRun(Runnable)
 - Add unavailable, active, and inactive states

The states are added to allow consistent UI across OEM devices, by
allowing UI tweaking and tinting to match system tiles with custom
ones.

The combination of isSecure() and isLocked() and unlockAndRun(Runnable)
allows all combinations of launching show when lockend and triggering
an unlock when needed for sensitive tiles.

Change-Id: Iade98ad9f2c22aa174e62090d8ccd44c86f3bb3c
parent ca894a0f
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -33724,17 +33724,24 @@ package android.service.quicksettings {
    method public java.lang.CharSequence getContentDescription();
    method public android.graphics.drawable.Icon getIcon();
    method public java.lang.CharSequence getLabel();
    method public int getState();
    method public void setContentDescription(java.lang.CharSequence);
    method public void setIcon(android.graphics.drawable.Icon);
    method public void setLabel(java.lang.CharSequence);
    method public void setState(int);
    method public void updateTile();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.service.quicksettings.Tile> CREATOR;
    field public static final int STATE_ACTIVE = 2; // 0x2
    field public static final int STATE_INACTIVE = 1; // 0x1
    field public static final int STATE_UNAVAILABLE = 0; // 0x0
  }
  public class TileService extends android.app.Service {
    ctor public TileService();
    method public final android.service.quicksettings.Tile getQsTile();
    method public final boolean isLocked();
    method public final boolean isSecure();
    method public android.os.IBinder onBind(android.content.Intent);
    method public void onClick();
    method public void onStartListening();
@@ -33743,6 +33750,8 @@ package android.service.quicksettings {
    method public void onTileRemoved();
    method public static final void requestListeningState(android.content.Context, android.content.ComponentName);
    method public final void showDialog(android.app.Dialog);
    method public final void startActivityAndCollapse(android.content.Intent);
    method public final void unlockAndRun(java.lang.Runnable);
    field public static final java.lang.String ACTION_QS_TILE = "android.service.quicksettings.action.QS_TILE";
    field public static final int TILE_MODE_ACTIVE = 2; // 0x2
    field public static final int TILE_MODE_PASSIVE = 1; // 0x1
+9 −0
Original line number Diff line number Diff line
@@ -35893,17 +35893,24 @@ package android.service.quicksettings {
    method public java.lang.CharSequence getContentDescription();
    method public android.graphics.drawable.Icon getIcon();
    method public java.lang.CharSequence getLabel();
    method public int getState();
    method public void setContentDescription(java.lang.CharSequence);
    method public void setIcon(android.graphics.drawable.Icon);
    method public void setLabel(java.lang.CharSequence);
    method public void setState(int);
    method public void updateTile();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.service.quicksettings.Tile> CREATOR;
    field public static final int STATE_ACTIVE = 2; // 0x2
    field public static final int STATE_INACTIVE = 1; // 0x1
    field public static final int STATE_UNAVAILABLE = 0; // 0x0
  }
  public class TileService extends android.app.Service {
    ctor public TileService();
    method public final android.service.quicksettings.Tile getQsTile();
    method public final boolean isLocked();
    method public final boolean isSecure();
    method public android.os.IBinder onBind(android.content.Intent);
    method public void onClick();
    method public void onStartListening();
@@ -35913,6 +35920,8 @@ package android.service.quicksettings {
    method public static final void requestListeningState(android.content.Context, android.content.ComponentName);
    method public final void setStatusIcon(android.graphics.drawable.Icon, java.lang.String);
    method public final void showDialog(android.app.Dialog);
    method public final void startActivityAndCollapse(android.content.Intent);
    method public final void unlockAndRun(java.lang.Runnable);
    field public static final java.lang.String ACTION_QS_TILE = "android.service.quicksettings.action.QS_TILE";
    field public static final int TILE_MODE_ACTIVE = 2; // 0x2
    field public static final int TILE_MODE_PASSIVE = 1; // 0x1
+9 −0
Original line number Diff line number Diff line
@@ -33738,17 +33738,24 @@ package android.service.quicksettings {
    method public java.lang.CharSequence getContentDescription();
    method public android.graphics.drawable.Icon getIcon();
    method public java.lang.CharSequence getLabel();
    method public int getState();
    method public void setContentDescription(java.lang.CharSequence);
    method public void setIcon(android.graphics.drawable.Icon);
    method public void setLabel(java.lang.CharSequence);
    method public void setState(int);
    method public void updateTile();
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator<android.service.quicksettings.Tile> CREATOR;
    field public static final int STATE_ACTIVE = 2; // 0x2
    field public static final int STATE_INACTIVE = 1; // 0x1
    field public static final int STATE_UNAVAILABLE = 0; // 0x0
  }
  public class TileService extends android.app.Service {
    ctor public TileService();
    method public final android.service.quicksettings.Tile getQsTile();
    method public final boolean isLocked();
    method public final boolean isSecure();
    method public android.os.IBinder onBind(android.content.Intent);
    method public void onClick();
    method public void onStartListening();
@@ -33757,6 +33764,8 @@ package android.service.quicksettings {
    method public void onTileRemoved();
    method public static final void requestListeningState(android.content.Context, android.content.ComponentName);
    method public final void showDialog(android.app.Dialog);
    method public final void startActivityAndCollapse(android.content.Intent);
    method public final void unlockAndRun(java.lang.Runnable);
    field public static final java.lang.String ACTION_QS_TILE = "android.service.quicksettings.action.QS_TILE";
    field public static final int TILE_MODE_ACTIVE = 2; // 0x2
    field public static final int TILE_MODE_PASSIVE = 1; // 0x1
+4 −0
Original line number Diff line number Diff line
@@ -27,5 +27,9 @@ interface IQSService {
    void updateStatusIcon(in Tile tile, in Icon icon,
            String contentDescription);
    void onShowDialog(in Tile tile);
    void onStartActivity(in Tile tile);
    void setTileMode(in ComponentName component, int mode);
    boolean isLocked();
    boolean isSecure();
    void startUnlockAndRun(in Tile tile);
}
+1 −0
Original line number Diff line number Diff line
@@ -29,4 +29,5 @@ oneway interface IQSTileService {
    void onStartListening();
    void onStopListening();
    void onClick(IBinder wtoken);
    void onUnlockComplete();
}
Loading