Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8187379

VirtualContainerBase: createVirtualFlow must be protected

XMLWordPrintable

      on pulling VirtualContainerBase into public scope, createVirtualFlow changed visibility from protected to package-private, thus fighting Its own api intent:

          /**
           * This enables skin subclasses to provide a custom VirtualFlow implementation,
           * rather than have VirtualContainerBase instantiate the default instance.
           */
          VirtualFlow<I> createVirtualFlow() {
              return new VirtualFlow<>();
          }

      I would consider it a regression from fx8 (except that technically it probably isn't because the scope of the class changed) because the method was introduced (or made visible? dont remember) as a fix of JDK-8103503 so hiding it now feels more like an accident.

      Along with the factory method, it's getter must be protected as well, to not force illegal access attempts on developers.

            aghaisas Ajit Ghaisas
            fastegal Jeanette Winzenburg
            Votes:
            3 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: