Bug 67203 [Import/Export[ Import from Zip File and File System gives no feedback about read-only files
Test Pass for 3.0 RC2 1. have JUnit with corresponding code 2. add the following line to TestCase.java: // read-only 3. close the editor and make the file read-only 4. start to import JUnit from File system 4. Uncheck "Overwrite existing...without warning" 5. Click "Finish" ==> dialog appears 6. Click "Yes To All" Stuff gets imported and wizard closes - no info about read-only files. Now, what do I have to expect? Has TestCase.java been overwritten? Were there other read-only files? Which ones? Fact is: read-only file TestCase.java has not been imported. I would expect a dialog that asks me what do to with read-only files or at least tell me that which ones were not imported.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/wizards/datatransfer/ImportOperation.java
void collectExistingReadonlyFiles(IPath destinationPath, List sources,
            ArrayList noOverwrite, ArrayList overwriteReadonly, int policy) {
        IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
        Iterator sourceIter = sources.iterator();
        IPath sourceRootPath = null;
        if (this.source != null) {
            sourceRootPath = new Path(provider.getFullPath(this.source));
        }
        while (sourceIter.hasNext()) {
            Object source = sourceIter.next();
            IPath sourcePath = new Path(provider.getFullPath(source));
            IPath newDestinationPath;
            IResource newDestination;
            if (sourceRootPath == null) {
                newDestinationPath = destinationPath.append(provider
                        .getLabel(source));
            } else {
                int prefixLength = sourcePath
                        .matchingFirstSegments(sourceRootPath);
                IPath relativeSourcePath = sourcePath
                        .removeFirstSegments(prefixLength);
                newDestinationPath = this.destinationPath
                        .append(relativeSourcePath);
            }
            newDestination = workspaceRoot.findMember(newDestinationPath);
            if (newDestination == null)
                continue;
            IFolder folder = getFolder(newDestination);
            if (folder != null) {
                if (policy != POLICY_FORCE_OVERWRITE) {