1919import androidx .recyclerview .widget .LinearLayoutManager ;
2020
2121import com .google .android .material .bottomsheet .BottomSheetBehavior ;
22- import com .google .android .material .bottomsheet .BottomSheetDialog ;
2322import com .owncloud .android .lib .resources .shares .OCShare ;
2423
2524import java .util .ArrayList ;
2625import java .util .List ;
2726
2827import it .niedermann .owncloud .notes .R ;
28+ import it .niedermann .owncloud .notes .branding .BrandedBottomSheetDialog ;
29+ import it .niedermann .owncloud .notes .branding .BrandingUtil ;
2930import it .niedermann .owncloud .notes .databinding .QuickSharingPermissionsBottomSheetFragmentBinding ;
3031import it .niedermann .owncloud .notes .share .adapter .QuickSharingPermissionsAdapter ;
3132import it .niedermann .owncloud .notes .share .helper .SharingMenuHelper ;
3435/**
3536 * File Details Quick Sharing permissions options {@link android.app.Dialog} styled as a bottom sheet for main actions.
3637 */
37- public class QuickSharingPermissionsBottomSheetDialog extends BottomSheetDialog {
38+ public class QuickSharingPermissionsBottomSheetDialog extends BrandedBottomSheetDialog {
3839 private QuickSharingPermissionsBottomSheetFragmentBinding binding ;
3940 private final QuickPermissionSharingBottomSheetActions actions ;
4041 private final Activity activity ;
4142 private final OCShare ocShare ;
4243
44+ private QuickSharingPermissionsAdapter adapter ;
45+
46+ private int color = 0 ;
47+
4348 public QuickSharingPermissionsBottomSheetDialog (Activity activity ,
4449 QuickPermissionSharingBottomSheetActions actions ,
4550 OCShare ocShare ) {
@@ -59,8 +64,6 @@ protected void onCreate(Bundle savedInstanceState) {
5964 getWindow ().setLayout (ViewGroup .LayoutParams .MATCH_PARENT , ViewGroup .LayoutParams .WRAP_CONTENT );
6065 }
6166
62- // viewThemeUtils.platform.themeDialog(binding.getRoot());
63-
6467 setUpRecyclerView ();
6568 setOnShowListener (d ->
6669 BottomSheetBehavior .from ((View ) binding .getRoot ().getParent ())
@@ -70,7 +73,7 @@ protected void onCreate(Bundle savedInstanceState) {
7073
7174 private void setUpRecyclerView () {
7275 List <QuickPermissionModel > quickPermissionModelList = getQuickPermissionList ();
73- QuickSharingPermissionsAdapter adapter = new QuickSharingPermissionsAdapter (
76+ adapter = new QuickSharingPermissionsAdapter (
7477 quickPermissionModelList ,
7578 new QuickSharingPermissionsAdapter .QuickSharingPermissionViewHolder .OnPermissionChangeListener () {
7679 @ Override
@@ -82,9 +85,11 @@ public void onPermissionChanged(int position) {
8285 public void onDismissSheet () {
8386 dismiss ();
8487 }
85- }
88+ },
89+ color
8690 );
8791 LinearLayoutManager linearLayoutManager = new LinearLayoutManager (activity );
92+ adapter .applyBrand (color );
8893 binding .rvQuickSharePermissions .setLayoutManager (linearLayoutManager );
8994 binding .rvQuickSharePermissions .setAdapter (adapter );
9095 }
@@ -145,6 +150,16 @@ protected void onStop() {
145150 binding = null ;
146151 }
147152
153+ @ Override
154+ public void applyBrand (int color ) {
155+ this .color = color ;
156+ final var util = BrandingUtil .of (color , getContext ());
157+ if (adapter != null ) {
158+ adapter .applyBrand (color );
159+ }
160+ util .platform .themeDialog (binding .getRoot ());
161+ }
162+
148163 public interface QuickPermissionSharingBottomSheetActions {
149164 void onQuickPermissionChanged (OCShare share , int permission );
150165 }
0 commit comments