lib/app_info/protobuf/models/Resources.proto in app-info-2.8.3 vs lib/app_info/protobuf/models/Resources.proto in app-info-2.8.4

- old
+ new

@@ -130,10 +130,15 @@ // The path at which this entry's visibility was defined (eg. public.xml). Source source = 2; // The comment associated with the <public> tag. string comment = 3; + + // Indicates that the resource id may change across builds and that the public R.java identifier + // for this resource should not be final. This is set to `true` for resources in `staging-group` + // tags. + bool staged_api = 4; } // Whether a resource comes from a compile-time overlay and is explicitly allowed to not overlay an // existing resource. message AllowNew { @@ -183,10 +188,16 @@ // The index into overlayable list that points to the <overlayable> tag that contains // this <item>. uint32 overlayable_idx = 4; } +// The staged resource ID definition of a finalized resource. +message StagedId { + Source source = 1; + uint32 staged_id = 2; +} + // An entry ID in the range [0x0000, 0xffff]. message EntryId { uint32 id = 1; } @@ -215,10 +226,13 @@ OverlayableItem overlayable_item = 5; // The set of values defined for this entry, each corresponding to a different // configuration/variant. repeated ConfigValue config_value = 6; + + // The staged resource ID of this finalized resource. + StagedId staged_id = 7; } // A Configuration/Value pair. message ConfigValue { Configuration config = 1; @@ -266,10 +280,11 @@ Attribute attr = 1; Style style = 2; Styleable styleable = 3; Array array = 4; Plural plural = 5; + MacroBody macro = 6; } } // Message holding a boolean, so it can be optionally encoded. message Boolean { @@ -297,10 +312,17 @@ // Whether this reference is referencing a private resource (@*package:type/entry). bool private = 4; // Whether this reference is dynamic. Boolean is_dynamic = 5; + + // The type flags used when compiling the reference. Used for substituting the contents of macros. + uint32 type_flags = 6; + + // Whether raw string values would have been accepted in place of this reference definition. Used + // for substituting the contents of macros. + bool allow_raw = 7; } // A value that represents an ID. This is just a placeholder, as ID values are used to occupy a // resource ID (0xPPTTEEEE) as a unique identifier. Their value is unimportant. message Id { @@ -583,6 +605,35 @@ // The optional resource ID (0xPPTTEEEE) of the attribute. uint32 resource_id = 5; // The optional interpreted/compiled version of the `value` string. Item compiled_item = 6; +} + +message MacroBody { + string raw_string = 1; + StyleString style_string = 2; + repeated UntranslatableSection untranslatable_sections = 3; + repeated NamespaceAlias namespace_stack = 4; + SourcePosition source = 5; +} + +message NamespaceAlias { + string prefix = 1; + string package_name = 2; + bool is_private = 3; +} + +message StyleString { + message Span { + string name = 1; + uint32 start_index = 2; + uint32 end_index = 3; + } + string str = 1; + repeated Span spans = 2; +} + +message UntranslatableSection { + uint64 start_index = 1; + uint64 end_index = 2; }