Added VirusTotal info button

This commit is contained in:
M66B 2022-07-23 11:59:38 +02:00
parent 1aec924211
commit fd6b9b101f
3 changed files with 42 additions and 3 deletions

21
FAQ.md
View File

@ -383,6 +383,7 @@ Fonts, sizes, colors, etc should be material design whenever possible.
* [(178) Why are widgets not updating?](#user-content-faq178)
* [(179) What are reply templates?](#user-content-faq179)
* [(180) How do I use LanguageTool?](#user-content-faq180)
* [(181) How do I use VirusTotal?](#user-content-faq181)
[I have another question.](#user-content-get-support)
@ -4845,7 +4846,7 @@ Templates can have the following options:
<a name="faq180"></a>
**(180) How do I use LanguageTool?**
LanguageTool need to be enabled in the miscellaneous settings.
LanguageTool integration needs to be enabled in the miscellaneous settings.
After writing some text, you can long press on the save draft button to perform a grammar, style, and spell check via [LanguageTool](https://languagetool.org/).
Texts with suggestions will be marked and if you tap on a marked suggestion,
@ -4854,6 +4855,24 @@ else you can double tap or long press the marked text to show suggestions.
<br />
<a name="faq181"></a>
**(181) How do I use VirusTotal?**
VirusTotal integration needs to be enabled in the miscellaneous settings.
This will show a *scan* icon button for each attachment.
Without entering an API key, tapping on the scan button will calculate the SHA-256 hash of the attached file and open the corresponding file report on the VirusTotal website.
If the file is not known by VirusTotal ("*Item not found*"), it is probably okay, unless it contains a new virus not being detected by virus scanners yet.
With entering an API key, there will be a dialog showing the number of virus scanners detecting the file.
Tapping on the info button will open the corresponding file report on the VirusTotal website.
To get an API key, you'll need to register on the VirusTotal website.
This feature was added in version 1.1941 and is available in non Play store versions only.
<br />
<h2><a name="get-support"></a>Get support</h2>
&#x1F30E; [Google Translate](https://translate.google.com/translate?sl=en&u=https://github.com/M66B/FairEmail/blob/master/FAQ.md%23user-content-get-support)

View File

@ -124,6 +124,7 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
private ImageButton ibDeepL;
private SwitchCompat swVirusTotal;
private TextView tvVirusTotalPrivacy;
private ImageButton ibVirusTotal;
private EditText etVirusTotal;
private SwitchCompat swUpdates;
private ImageButton ibChannelUpdated;
@ -314,6 +315,7 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
ibDeepL = view.findViewById(R.id.ibDeepL);
swVirusTotal = view.findViewById(R.id.swVirusTotal);
tvVirusTotalPrivacy = view.findViewById(R.id.tvVirusTotalPrivacy);
ibVirusTotal = view.findViewById(R.id.ibVirusTotal);
etVirusTotal = view.findViewById(R.id.etVirusTotal);
swUpdates = view.findViewById(R.id.swUpdates);
ibChannelUpdated = view.findViewById(R.id.ibChannelUpdated);
@ -659,6 +661,13 @@ public class FragmentOptionsMisc extends FragmentBase implements SharedPreferenc
}
});
ibVirusTotal.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Helper.viewFAQ(v.getContext(), 181);
}
});
etVirusTotal.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {

View File

@ -416,6 +416,17 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/swVirusTotal" />
<ImageButton
android:id="@+id/ibVirusTotal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:contentDescription="@string/title_info"
android:tooltipText="@string/title_info"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvVirusTotalPrivacy"
app:srcCompat="@drawable/twotone_info_24" />
<EditText
android:id="@+id/etVirusTotal"
android:layout_width="0dp"
@ -426,7 +437,7 @@
android:textAppearance="@style/TextAppearance.AppCompat.Small"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tvVirusTotalPrivacy" />
app:layout_constraintTop_toBottomOf="@id/ibVirusTotal" />
<androidx.appcompat.widget.SwitchCompat
android:id="@+id/swUpdates"
@ -587,7 +598,7 @@
android:id="@+id/grpVirusTotal"
android:layout_width="0dp"
android:layout_height="0dp"
app:constraint_referenced_ids="swVirusTotal,tvVirusTotalPrivacy,etVirusTotal" />
app:constraint_referenced_ids="swVirusTotal,tvVirusTotalPrivacy,ibVirusTotal,etVirusTotal" />
<androidx.constraintlayout.widget.Group
android:id="@+id/grpUpdates"