34
34
import fr .nuage .souvenirs .viewmodel .AlbumViewModel ;
35
35
import fr .nuage .souvenirs .viewmodel .PageViewModel ;
36
36
37
- public class EditAlbumFragment extends Fragment implements SelectPageStyleFragment . OnSelectPageStyleListener {
37
+ public class EditAlbumFragment extends Fragment {
38
38
39
39
private static final String DIALOG_CHANGE_STYLE = "DIALOG_CHANGE_STYLE" ;
40
40
41
41
private EditPageListAdapter editPageListAdapter ;
42
42
private AlbumViewModel albumVM ;
43
43
private String albumPath ;
44
44
private UUID initialPageFocusId ;
45
- private int colNb = 1 ;
45
+ private int colNb = 3 ;
46
46
47
47
private PageViewModel lastOperationPage ;
48
48
@@ -71,7 +71,6 @@ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container,
71
71
72
72
//inflateview
73
73
FragmentEditAlbumBinding binding = DataBindingUtil .inflate (inflater ,R .layout .fragment_edit_album ,container ,false );
74
- binding .setFragment (this );
75
74
76
75
//set recyclerview
77
76
RecyclerView pageListRecyclerView = binding .pageList ;
@@ -93,6 +92,7 @@ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container,
93
92
AlbumViewModel albumVM = albumListViewModel .getAlbum (albumPath );
94
93
if (albumVM != null ) {
95
94
setAlbumVM (albumVM );
95
+ binding .setAlbum (albumVM );
96
96
albumVM .getLdPages ().observe (lifecycleOwner , PageViewModels -> editPageListAdapter .updateList (PageViewModels ));
97
97
getActivity ().setTitle (albumVM .getName ().getValue ());
98
98
albumVM .getName ().observe (lifecycleOwner , s -> getActivity ().setTitle (albumVM .getName ().getValue ()));
@@ -119,13 +119,6 @@ public void onAddPage(PageViewModel previousPage) {
119
119
Navigation .findNavController (getView ()).navigate (action );
120
120
}
121
121
122
- public void onSwitchLayout (PageViewModel p ) {
123
- //save page
124
- lastOperationPage = p ;
125
- //launch select style dialog
126
- SelectPageStyleDialogFragment dialog = SelectPageStyleDialogFragment .newInstance (this ,-1 ,-1 );
127
- dialog .show (getParentFragmentManager (),DIALOG_CHANGE_STYLE );
128
- }
129
122
130
123
public void openPageEdition (View v ) {
131
124
String pageId = (String )v .getTag ();
@@ -135,20 +128,6 @@ public void openPageEdition(View v) {
135
128
}
136
129
137
130
138
- @ Override
139
- public void onStyleSelected (int style ) {
140
- //check which dialog was launched
141
- Fragment dialogChangeStyle = getParentFragmentManager ().findFragmentByTag (DIALOG_CHANGE_STYLE );
142
- if (dialogChangeStyle != null ) {
143
- //dismiss dialog
144
- DialogFragment df = (DialogFragment ) dialogChangeStyle ;
145
- df .dismiss ();
146
- //switch style
147
- albumVM .switchStyle (lastOperationPage ,style );
148
- }
149
-
150
- }
151
-
152
131
@ Override
153
132
public void onCreateOptionsMenu (@ NonNull Menu menu , MenuInflater inflater ) {
154
133
inflater .inflate (R .menu .menu_edit_album , menu );
@@ -165,57 +144,8 @@ public void onCreateOptionsMenu(@NonNull Menu menu, MenuInflater inflater) {
165
144
onAddPage (albumVM .getPage (-1 ));
166
145
return true ;
167
146
});
168
- //set listener to switch display
169
- MenuItem displayColunmItem = menu .findItem (R .id .display_column_edit_album );
170
- displayColunmItem .setOnMenuItemClickListener (menuItem -> {
171
- //change columns
172
- colNb = (colNb == 1 ) ? 2 : 1 ;
173
- //change layout of recyclerview
174
- RecyclerView pageListRecyclerView = getView ().findViewById (R .id .page_list );
175
- RecyclerView .LayoutManager mLayoutManager = new GridLayoutManager (getActivity (), colNb );
176
- pageListRecyclerView .setLayoutManager (mLayoutManager );
177
- getActivity ().invalidateOptionsMenu ();
178
- return true ;
179
- });
180
- }
181
-
182
- @ Override
183
- public void onPrepareOptionsMenu (@ NonNull Menu menu ) {
184
- if (colNb != 1 ) {
185
- menu .findItem (R .id .display_column_edit_album ).setIcon (R .drawable .ic_view_one_column_24dp );
186
- } else {
187
- menu .findItem (R .id .display_column_edit_album ).setIcon (R .drawable .ic_view_column_black_24dp );
188
- }
189
147
}
190
148
191
149
public AlbumViewModel getAlbumVM () { return albumVM ; }
192
150
193
- public void onClickPageMenu (PageViewModel pageViewModel , View view ) {
194
- PopupMenu popupMenu = new PopupMenu (getContext (),view , Gravity .END );
195
- popupMenu .inflate (R .menu .page_edit_menu );
196
- popupMenu .setOnMenuItemClickListener (item -> {
197
- switch (item .getItemId ()) {
198
- case R .id .menu_page_edit_insert :
199
- onAddPage (pageViewModel );
200
- return true ;
201
- case R .id .menu_page_edit_dispo :
202
- onSwitchLayout (pageViewModel );
203
- return true ;
204
- case R .id .menu_page_edit_delete :
205
- pageViewModel .delete ();
206
- return true ;
207
- case R .id .menu_page_edit_move_up :
208
- pageViewModel .moveUp ();
209
- return true ;
210
- case R .id .menu_page_edit_move_down :
211
- pageViewModel .moveDown ();
212
- return true ;
213
- }
214
- return false ;
215
- });
216
- if (Build .VERSION .SDK_INT >= Build .VERSION_CODES .Q ) {
217
- popupMenu .setForceShowIcon (true );
218
- }
219
- popupMenu .show ();
220
- }
221
151
}
0 commit comments