parsed ShouldAutofill with app URL blacklist

This commit is contained in:
Kyle Spearrin 2019-02-10 22:16:16 -05:00
parent 4b9fa5041c
commit b0cabbbfc2
3 changed files with 16 additions and 2 deletions

View File

@ -35,6 +35,12 @@ namespace Bit.Android.Autofill
"com.ecosia.android","com.opera.mini.native.beta","org.mozilla.fennec_aurora","com.qwant.liberty"
};
// The URLs are blacklisted from autofilling
public static HashSet<string> BlacklistedUris = new HashSet<string>
{
"androidapp://android", "androidapp://com.x8bit.bitwarden", "androidapp://com.oneplus.applocker"
};
public static async Task<List<FilledItem>> GetFillItemsAsync(Parser parser, ICipherService service)
{
var items = new List<FilledItem>();

View File

@ -34,8 +34,7 @@ namespace Bit.Android.Autofill
var parser = new Parser(structure);
parser.Parse();
if(string.IsNullOrWhiteSpace(parser.Uri) || parser.Uri == "androidapp://com.x8bit.bitwarden" ||
parser.Uri == "androidapp://android" || !parser.FieldCollection.Fillable)
if(!parser.ShouldAutofill)
{
return;
}

View File

@ -76,6 +76,15 @@ namespace Bit.Android.Autofill
}
}
public bool ShouldAutofill
{
get
{
return !string.IsNullOrWhiteSpace(Uri) && !AutofillHelpers.BlacklistedUris.Contains(Uri) &&
FieldCollection != null && FieldCollection.Fillable;
}
}
public void Parse()
{
for(var i = 0; i < _structure.WindowNodeCount; i++)