52
52
public class ImportEntriesActivity extends AegisActivity {
53
53
private View _view ;
54
54
private Menu _menu ;
55
+ private RecyclerView _entriesView ;
55
56
private ImportEntriesAdapter _adapter ;
56
57
private FabScrollHelper _fabScrollHelper ;
57
58
@@ -74,8 +75,8 @@ protected void onCreate(Bundle savedInstanceState) {
74
75
bar .setDisplayHomeAsUpEnabled (true );
75
76
76
77
_adapter = new ImportEntriesAdapter ();
77
- RecyclerView entriesView = findViewById (R .id .list_entries );
78
- entriesView .addOnScrollListener (new RecyclerView .OnScrollListener () {
78
+ _entriesView = findViewById (R .id .list_entries );
79
+ _entriesView .addOnScrollListener (new RecyclerView .OnScrollListener () {
79
80
@ Override
80
81
public void onScrolled (@ NonNull RecyclerView recyclerView , int dx , int dy ) {
81
82
super .onScrolled (recyclerView , dx , dy );
@@ -84,9 +85,9 @@ public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
84
85
});
85
86
86
87
LinearLayoutManager layoutManager = new LinearLayoutManager (this );
87
- entriesView .setLayoutManager (layoutManager );
88
- entriesView .setAdapter (_adapter );
89
- entriesView .setNestedScrollingEnabled (false );
88
+ _entriesView .setLayoutManager (layoutManager );
89
+ _entriesView .setAdapter (_adapter );
90
+ _entriesView .setNestedScrollingEnabled (false );
90
91
91
92
FloatingActionButton fab = findViewById (R .id .fab );
92
93
fab .setOnClickListener (v -> {
@@ -358,6 +359,31 @@ private void findDuplicates(List<ImportEntry> importEntries) {
358
359
359
360
_adapter .setCheckboxStates (duplicateEntries , false );
360
361
Snackbar snackbar = Snackbar .make (_view , getResources ().getQuantityString (R .plurals .import_duplicate_toast , duplicateEntries .size (), duplicateEntries .size ()), Snackbar .LENGTH_INDEFINITE );
362
+ snackbar .addCallback (new Snackbar .Callback () {
363
+ @ Override
364
+ public void onShown (Snackbar sb ) {
365
+ int snackbarHeight = sb .getView ().getHeight ();
366
+
367
+ _entriesView .setPadding (
368
+ _entriesView .getPaddingLeft (),
369
+ _entriesView .getPaddingTop (),
370
+ _entriesView .getPaddingRight (),
371
+ _entriesView .getPaddingBottom () + snackbarHeight * 2
372
+ );
373
+ }
374
+
375
+ @ Override
376
+ public void onDismissed (Snackbar sb , int event ) {
377
+ int snackbarHeight = sb .getView ().getHeight ();
378
+
379
+ _entriesView .setPadding (
380
+ _entriesView .getPaddingLeft (),
381
+ _entriesView .getPaddingTop (),
382
+ _entriesView .getPaddingRight (),
383
+ _entriesView .getPaddingBottom () - snackbarHeight * 2
384
+ );
385
+ }
386
+ });
361
387
snackbar .setAction (R .string .undo , new View .OnClickListener () {
362
388
@ Override
363
389
public void onClick (View v ) {
0 commit comments