code: private Map<ViewType, View> applyDecorators(@NonNull final Window window,
                                                  @NonNull final DialogRootView rootView,
                                                  @NonNull final View view,
                                                  @NonNull final FragmentManager fragmentManager) {
          Map<ViewType, View> result = new HashMap<>();
  
          for (AbstractDecorator<?, ?> decorator : decorators) {
              if (decorator instanceof AbstractDialogDecorator) {
                  AbstractDialogDecorator<?> dialogDecorator = (AbstractDialogDecorator) decorator;
                  result.putAll(dialogDecorator.attach(window, view, result, null));
              } else {
                  AbstractDialogFragmentDecorator<?> dialogFragmentDecorator =
                          (AbstractDialogFragmentDecorator<?>) decorator;
                  result.putAll(
                          dialogFragmentDecorator.attach(window, view, result, fragmentManager));
              }
  
              decorator.addAreaListener(rootView);
          }
  
          return result;
      }
docs: Applies all registered decorators to the dialog.
  
  @param window
  The window, the dialog belongs to, as an instance of the class {@link Window}. The
  window may not be null
  @param rootView
  The root view of the dialog as an instance of the class {@link DialogRootView}. The
  root view may not be null
  @param view
  The view of the dialog as an instance of the class {@link View}. The view may not be
  null
  @param fragmentManager
  The fragment manager, which is used to show the dialog, as an instance of the class
  {@link FragmentManager}. The fragment manager may not be null
  @return A map, which contains the views, which have been inflated by the decorators, mapped
  to their view types, as an instance of the type {@link Map} or null, if the decorator has not
  inflated any views