commit | e37c2f79e0c31afe012ca847ada228b05b4d974c | [log] [tgz] |
---|---|---|
author | Simeon Andreev <simeon.danailov.andreev@gmail.com> | Thu Nov 16 14:06:06 2017 +0100 |
committer | Andrey Loskutov <loskutov@gmx.de> | Thu Jan 04 10:16:25 2018 -0500 |
tree | f75f3a58218940bf4ec350d3816932d9b5a7a11f | |
parent | d52d41ef8e5016d355a9780279aa91c9dafd7536 [diff] |
Bug 506009 - UI freezes reported in PackageFragment.getElementName The Package Explorer View has two options which are very slow for large package structures. Those are the hierarchical resp. flat representation of packages. This is the case, since the Java model structure does not match the hierarchical structure presented in the view. The view computes the package hierarchy on its own. The view does so by going over all packages in a package root, for its every operation. This results in e.g. refresh operations which are quadratic in the number of packages of a project. For package numbers above 1000, refreshes can freeze the UI for minutes. With this change the PackageExplorerContentProvider computes the hierarchical structure of packages once and caches it. The cache is cleaned on every Java model change. This reduces the complexity of operations that run on the view, including refreshing. The UI freeze duration is reduced to a few seconds, down from minutes. Change-Id: Ib28aa66d5718a879491b9076f2d78c3c7e4e73b6 Signed-off-by: Simeon Andreev <simeon.danailov.andreev@gmail.com>
Thanks for your interest in this project.
The JDT UI implements the user interface for the Java IDE. This includes views like Package Explorer and JUnit, the Java and properties files editors, Java search, and refactorings. Website: http://www.eclipse.org/jdt/ui/
Contributions to JDT UI are most welcome. There are many ways to contribute, from entering high quality bug reports, to contributing code or documentation changes. For a complete guide, see the [How to Contribute] 1 page on the team wiki.
Information regarding source code management, builds, coding standards, and more.
Before your contribution can be accepted by the project, you need to create and electronically sign the Eclipse Foundation Contributor License Agreement (CLA).
Public forum for Eclipse JDT users.
This project uses Bugzilla to track ongoing development and issues.
Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!
Contact the project developers via the project's “dev” list.