1
0
mirror of https://github.com/arduino/Arduino.git synced 2025-02-13 07:54:20 +01:00

87 Commits

Author SHA1 Message Date
Cristian Maglie
ac570c50bd UserLibrary: ensure that types field is always not-null 2018-05-17 09:14:25 +02:00
Cristian Maglie
0042a30c81 Simplified version display logic in Library Manager
- replaced the logic to check if an installed-library is a
  builtin library by reusing the same method available in
  ContributedLibraryReleases
- renamed some local vars to better reflect their contents:

  uninstalledLibraries        -> notInstalled
  uninstalledNewerReleases    -> notInstalledNewer
  uninstalledPreviousReleases -> notInstalledPrevious
2018-05-17 09:14:25 +02:00
Cristian Maglie
ac6d3c1aff Core and ref-Core libraries are not handled by the library manager. 2018-05-17 09:14:25 +02:00
Cristian Maglie
b03a9af19a ContributedLibraryReleases: removed getLibrary() method
this method is now useless
2018-05-17 09:14:25 +02:00
Cristian Maglie
5cc66e9715 Moved ContributedLibraryReleases in arduino-core 2018-05-17 09:14:25 +02:00
Cristian Maglie
1089378575 Preparing ContributedLibraryReleases to move in arduino-core
Removed dependency on FilteredAbstractTableModel.getLatestOf() method.
2018-05-17 09:14:25 +02:00
Cristian Maglie
904a898108 Fixed UpdatableLibraryPredicate 2018-05-17 09:14:25 +02:00
Cristian Maglie
86441e4341 Added first tests for library manager engine 2018-05-17 09:14:25 +02:00
Cristian Maglie
2374d9d1bd Introducing UserLibraryFolder
This class allows to attach a Location property to a folder
path, this way we directly know if a library is in the sketchbook,
core, referenced-core or bundled in the IDE.

This simplify a lot of logic in the IDE.
2018-05-17 09:14:25 +02:00
Cristian Maglie
e896595214 UserLibrary doesn't extend ContributedLibrary anymore
ContributedLibrary is used to decode library_index.json and it's
intended to keep data coming only from the index.

Now, when the library_index is synced with the filesystem, the
metadata about installed libraries are kept in a separate list
to not mess up with the main index.
2018-05-17 09:14:25 +02:00
Cristian Maglie
3ec6748dc4 Lib manager Predicates must act on ContributedLibraryReleases
Previously the filtering was made on ContributedLibrary, but the
objects that is actually displayed is a ContributeLibraryReleases,
so it comens natural to filter on this class of objects.

Apparently the functionality is not affected by this commit, but
there may be some side-effect that may probably fix some
visualization bug.
2018-05-17 09:14:25 +02:00
Cristian Maglie
482b905a62 Using Optional<T> semantics for 'replacedLib' in LibraryInstaller
Optional<T> helps to not forget to check about nullness where it is
needed.

This commit should be equivalent and shouln't fix any bug, BTW the
Optional<T> semantic turns out to be useful in the next commits.

Possibly all nullable values will be replaced by Optional in the
future.
2018-05-17 09:14:25 +02:00
Cristian Maglie
212825eb55 Simplified overly complex filtering of InstallerJDialog
- we ensure that there is always a filter selected, no more need
  to check for non-nullness
- the filters are always the same, no need to pass a
  Stream<Predicate<T>> around where Predicate<T> suffices
2018-05-17 09:14:25 +02:00
Cristian Maglie
f111905da6 Removed a lot of useless equals overrides.
Those introduces a very convoluted logic that is needed only in
two cases. Moreover those are better handled by directly checking
the object.
2018-05-17 09:14:25 +02:00
Cristian Maglie
d285b7fdc9 Improved VersionComparator API 2018-05-17 09:14:25 +02:00
Martino Facchin
60f267745b Add on-hover selection on Board/Library manager
User testing on skilled devs showed that "buttons appear on click" behaviour is far from being understood.
Accessibility features (like moving with Arrow keys) should be untouched.
2018-05-02 16:41:59 +02:00
Martino Facchin
a47e62627c [Lib/Board Manager] Give some padding to the dropdown lists 2018-05-02 16:41:59 +02:00
Fabián Inostroza
b17c5122c2 Set default color of text for descriptions shown in library manager. 2016-11-25 15:19:36 +01:00
Cristian Maglie
9215c06676 Installers windows are now correctly scaled. 2016-01-26 12:10:12 +01:00
Cristian Maglie
16c4701802 Rename Contributed*TableCell to Contributed*TableCellJPanel 2015-12-29 16:01:34 +01:00
Cristian Maglie
a7e22e1958 Some minor cosmetics 2015-12-29 16:01:34 +01:00
Cristian Maglie
d598f0cfa7 Removed unused LibraryManagerUI.getContribModel() method 2015-12-29 16:01:34 +01:00
Cristian Maglie
91f18dff24 Factored out ContributedLibraryTableCell.update(...) method 2015-12-29 16:01:34 +01:00
Cristian Maglie
71eb3c3ab2 Removed useless DESCRIPTION_COL constant 2015-12-29 16:01:34 +01:00
Cristian Maglie
47fcf318b1 Removed unused parameters in *TableCell.update(..) method 2015-12-29 16:01:33 +01:00
Cristian Maglie
76068c92b4 *TableCellEditor now extends JPanel 2015-12-29 16:01:33 +01:00
Cristian Maglie
015f658d1e Factored out TableCell setEnable() code 2015-12-29 16:01:33 +01:00
Cristian Maglie
c1387ed316 Removed weird hack for refreshing table cells 2015-12-29 16:01:33 +01:00
Cristian Maglie
6370a74632 Split TableCellRenderes from TableCellEditors
This rationalization helps to better follow the swing abstractions
of table models and increase separation of concerns.

(WIP: ContributedPlatforms needs a similar refactoring that will be
done in the next commits)
2015-12-29 16:01:33 +01:00
Cristian Maglie
fd04767269 Renamed ContributedLibraryTableCell to ContributedLibraryTableCellRenderer
This is in preparation for the next refactoring.
2015-12-29 16:01:33 +01:00
Cristian Maglie
ed30cd7b58 Removed ContributedLibraryTableCell.Cell dependency from upper editorValue field 2015-12-29 16:01:33 +01:00
Cristian Maglie
268ae81759 Removed useless parentTable field in ContributedLibraryTableCell 2015-12-29 16:01:33 +01:00
Cristian Maglie
926a8c9101 Correct implementation of ContributedLibraryTableCell
getTableCellRendererComponent() interface requires to return independent
Component objects used for "stamping" the table element.
2015-12-29 16:01:33 +01:00
Federico Fissore
aaebb0a4d6 Stored some regexps in static finals, given names to threads, and slightly
optimized ConsoleOutputStream
2015-11-27 15:07:44 +01:00
Federico Fissore
6855e91883 Fixed various Board/Library managers glitches, in particular when removing/upgrading 2015-11-24 16:14:16 +01:00
Federico Fissore
ceef83dbb9 Libraries that contain type "Arduino" are now listed at the top. Fixes #4195 2015-11-23 16:15:37 +01:00
Federico Fissore
bfeb994974 Moved ContributedLibraryReleases out of LibrariesIndexTableModel and introduced its own special comparator. Will help with #4195 2015-11-23 16:06:32 +01:00
Federico Fissore
b450a2743e Allowing boards/libs types and categories to be translated. Fixes #3646 2015-11-18 17:27:35 +01:00
Federico Fissore
1328f3a9e2 Library and Boards Managers were using old copies of library/boards indeces. thus making the UI show old data. Fixes #4139 #3904 #3795 2015-11-17 12:24:28 +01:00
Federico Fissore
f5c3136b34 'Partner' libs moved above 'Contributed'. Fixes #4060 2015-11-02 12:13:52 +01:00
Federico Fissore
e45f07d507 Added missing license headers 2015-08-13 11:33:35 +02:00
Federico Fissore
582992caff "Library Manager" wasn't translated 2015-08-06 14:27:47 +02:00
Federico Fissore
2daf330c09 LibraryInstaller and ContributionInstaller are now singletons: members of Base, they get passed to dependents, thus allowing a synchronized method execution, needed to avoid race conditions when accessing files 2015-08-06 10:27:51 +02:00
Federico Fissore
dc93bb93d0 ProgressListener is now a method arg (was an instance arg) 2015-08-06 10:27:51 +02:00
Federico Fissore
f9612bcdbd Updatable boards support and libraries notification 2015-08-06 10:27:51 +02:00
Federico Fissore
b68cf12758 Boards manager: when filtering result using text field, consider both core name AND supported boards names 2015-08-05 17:33:55 +02:00
Federico Fissore
cb292d6114 Got rid of Guava lib: java 8 has its features builtin 2015-08-05 12:09:24 +02:00
Federico Fissore
50cacc1756 Got rid of Java 8 warnings about _ as a method name 2015-08-05 09:12:40 +02:00
Federico Fissore
03a66b1035 Applying code inspection suggestions 2015-07-08 14:46:44 +02:00
Federico Fissore
dae6e4fff7 Dropping Guava predicates in favour of java.util.function.Predicate 2015-07-08 14:20:25 +02:00