When installing an archive, a "source.properties" file is saved
in the directory that contains all the information from the
source (Source URL, package attributes, archive attributes.)
When loading local packages, these properties are used to
recreate the local package attributes if present. This is
also used to indentify local extra packages.
- Always unzip the archives first and get their root zip dir.
- Try to reusing an existing addon folder first.
- Or the root zip dir.
- Or come up with a better name for the addon folder.
- New/Delete/Info/Refresh/Manager buttons.
- Ability to set any kind of AVD filter
- Self-refresh: Selector knows the AvdManager and can refresh itself.
- Manager mode or simple (selection or checkboxes)
- Manager mode displays broken AVDs.
Updated the SdkUpdate AVD page and the various use of the Selector in ADT.
Note that the setting operates on every source by converting
the https:// links into http:// before fetching the sources
or the archives.
This also reorganize some things: the RepoSourceAdapter now
takes the UpdaterData as parameter (so both Adapters work the
same) and the label/contentProviders are nested classes instead
of static classes. Cleanup some stuff that was no longer useful
such as the RepoSources.TaskFactory (it's in UpdaterData already).
With this change I can install from the dl site over http at home!
There is not any longer any logic in the SettingsPage,
it is handled now by a "SettingsControllers" which is
available via UpdaterData. The page only takes care of
notifying the controller via a callback when settings
have changed in the UI.
One of the rationales behind this was to show
incompatible archives using some icon.
This moves all SDK Updater icons in internal/repository/icons
and create an ImageFactory available to the remote page via
the UpdaterData.
Created a permanent SdkManager in UpdaterData (alongside a new AvdManager).
Pages can request a reload (for example on install/delete of a local package),
and other pages are notified of SDK changes to update their display (local
packages, local AVDs, available packages, etc...)
Removed references to UpdaterWindow from the pages (moved some actions
like installArchives and refreshSources into UpdaterData).
Added a new page for the AVDs. Pretty basic for now (only the current AVD
display).
Clicking refresh on the Local pages causes a reload which triggers a
refresh of the listeners pages which properly reloads the AVD page.