JGoodies Fluent Release Notes CHANGES IN 2.1.0 --------------------------------------------------------- o FIX: NavigationView.Builder may ignore the display mode. o TabBar colors can be customized: - introduced interface TabBarTheme - added IFluentResources#getTabBarTheme o Added IFluentResources#getDisplayFont. o Fixed JavaDocs. CHANGES IN 2.0.1 --------------------------------------------------------- o Improved NavigationView's footer action tool tip. o More JavaDocs. o Fixed JavaDocs. CHANGES IN 2.0.0 --------------------------------------------------------- o Overhauled the API and implementation towards WinUI 3. Many elements have been renamed to follow the MS naming, making it easier to refer to the WinUI 3 API documentation. o Overhauled NavigationView - supports TOP navigation mode - supports AUTO navigation mode (switches to LEFT, LEFT_COMPACT, or LEFT_MINIMAL) o Overhauled WindowsThemes. o Overhauled IFluentResources. o Overhauled colors, sizes, and layout. o Overhauled fonts to follow the MS Fluent font type ramp. o Overhauled theme management and access. o Overhauled pivot content (pivot bar plus pivot frame). o Overhauled FluentButtonFactory and its subclasses. o Added NavigationBar feature: back button visible. o Removed Hub.HubStyle. o Removed PrimaryTabsPage; use a NavigationView in TOP mode instead. o Renamed SecondaryTabsPage -> PivotPage. o Badge and Theme use record accessors. o Added FluentLayouts. o Reduced PivotBar height to 40epx. o Removed NavigationBar's 8epx pad after the additional content. o Removed NavigationBar's additional content feature. Use CommandBar's content instead; for search fields, use the NavigationView's search field feature. o Overhauled TabBar resources. o Removed DefaultTabSearchRenderer. CHANGES IN 1.11.0 --------------------------------------------------------- o Simplified internal code. CHANGES IN 1.10.0 --------------------------------------------------------- o Recompiled against JGoodies Components 1.31.0. CHANGES IN 1.9.3 --------------------------------------------------------- o Recompiled against JGoodies Common 1.28.0. CHANGES IN 1.9.2 --------------------------------------------------------- o CommandBar allows to add only content, primary, and secondary items. Adding other components throws an UnsupportedOperationException. o Clarified this issue in the CommandBar docs. o FIX: CommandBar ... button may overlap content, if space is limited. CHANGES IN 1.9.1 --------------------------------------------------------- o FIX: NavigationBar ignores changes of the page's displayString. CHANGES IN 1.9.0 --------------------------------------------------------- o Renamed this library from 'UWP' to 'Fluent'. o The deprecated class AppBar has been removed. It has been replaced by the CommandBar class before. o FIX: CommandBar 'More' button is moved if there's less space than necessary and dynamic overflow is disabled. o Added JavaDocs. CHANGES IN 1.8.1 --------------------------------------------------------- o DefaultFrameTab fires a PINNED_ICON change if the page changes. CHANGES IN 1.8.0 --------------------------------------------------------- o Added FrameTabModel#pages() and #getPages(). o FrameTabModel detects Ctrl and Shift modifiers in HyperlinkEvents and KeyEvents. o FrameTabModel#show methods return the tab that shows the given page. o FrameTabModel#add* methods return the created tab. o FrameTabModel#restorePinnedTabs returns a Promise. o FrameTabModel#open does not require a selected tab. o FrameTabModel#unpinTab: removed final marker. o Added localization for "pinned". o Improved french translations. o Added Hub#clearSections. o Added HubSection#clearTiles. o Removed references to the JGoodies Looks library. CHANGES IN 1.8.0 Beta 7 -------------------------------------------------- o Tabs can be dragged to change positions. o Added TabModel#get(int) and #indexOf(T). o FrameTabModel restores pinned tabs now one after the other. o DefaultFrameTab#navigate returns a boolean Promise. o Introduces CommandBar as a replacement for the AppBar class. The API has been overhauled and cleaned up. Unlike AppBar, CommandBar can move primary items to the overflow menu when space is limited; this feature is enabled by default. Also, the CommandBar's Locale can be set and the resource access is customizable. o NavigationBar's display string can be selected and copied. o Overhauled app bar menu buttons. o Added icon resources for app bar menu buttons. o Marked AppBar as deprecated. o AppBar localizes resources per instance. o Added AppBar#setLocale to set a locale other than the one returned by JComponent#getDefaultLocale(). o FIX: French text for "New tab to the right" is missing. o Source code improvements. CHANGES IN 1.7.0 --------------------------------------------------------- o Added AppBar settings: - button font - button padding - hide disabled buttons o Overhauled the Tab pinning feature: - added #getPinnedIcon - added #getPinnedTitle - new defaults for pinned icon and title o Improved the tab selection after a tab has been closed: - DefaultTab#getId refers to the tab's instance, not the class - DefaultFrameTab#getId returns the current page's hash code - new tabs get the id of the selected tab as opener id. o Added localized resources for frequent Tab actions o Localized tab context menu texts like MS Edge o Replaced the TabModel preview feature by a tab search feature. o Removed final marker from TabModel#closeTab(EventObject, Tab). o The JavaDocs for the Tab closing process are more precise. CHANGES IN 1.6.0 --------------------------------------------------------- o Added DefaultTab#toString and DefaultFrameTab#toString. o Added JavaDocs. CHANGES IN 1.6.0 RC2 ----------------------------------------------------- o FIX: TabModel#closeTab(EventObject, int, int, int) removes the tab to omit. o Added a default panel building to DefaultFrameTab that returns a PageFrame for the tab's PageModel. Subclasses can override #buildPanel or call #setPanel. o Added a default implementation for DefaultFrameTab#onClosing that asks all pages in the back stack if they accept a go-back. o Added DefaultFrameTab#getPages. o Added FrameTabModel#getCurrentPages. o Removed FrameTabModel#pinTab, because it cleared the back stack without testing if all pages can be navigated from. o DefaultFrameTab#getIcon returns an icon for all tabs that implement the IconDisplayble interface. CHANGES IN 1.6.0 RC1 ----------------------------------------------------- o Changed the Tab closing API from VetoableEvent callback to Promise. Promise chaining can significantly reduce the effort required to implement subsequent actions on the computed results. See Promise#thenApply, #thenAccept, #thenRun, #thenCompose. o Added a default method Tab#onClosed(EventObject) that is invoked immediately after the tab has been removed from its hosting model. o Added TabModel#getCloseableTabs(). o Added TabModel#onClosing(EventObject). o Added TabModel#isEmpty. o Added PivotModel#isEmpty. o Added and clarified JavaDocs. o Added package infos. CHANGES IN 1.5.0 --------------------------------------------------------- o AppBar#addSecondary(ActionGroup) accepts sub groups. o NavigationView.Builder#item(Page) honors the page's icon - if any. o Compiled against JGoodies Common 1.24. CHANGES IN 1.4.1 --------------------------------------------------------- o DefaultPivot and DefaultTab set the most recent focus owner only if a (content) panel is already available. CHANGES IN 1.4.0 --------------------------------------------------------- o FIX: AppBar toggle buttons ignore dynamic changes of their preferred size, e.g. if the text changes after construction. o PivotBar IS now a panel, where it built a panel before. o PivotBar is updated on PivotModel changes, e.g. if a pivot is added or removed. CHANGES IN 1.3.0 --------------------------------------------------------- o PivotBar buttons listen to Pivot properties (text, badge, etc). o PivotBar buttons become visible on selection. o The Pivot interface extends ObservableBean. o Pivot.Builder returns an instance DefaultPivot. o Added a whole bunch of JavaDocs to FrameTabModel. CHANGES IN 1.2.1 --------------------------------------------------------- o FIX: AppBar buttons ignore dynamic changes of their preferred size, e.g. if the button text changes after construction. CHANGES IN 1.2.0 --------------------------------------------------------- o FIX: AppBar layout ignores visibility although 'honorsVisibility' is set to true (the default). o Added AppBar methods: - #addPrimary(JButton) - #appSecondary(JMenuItem) - #createMenuItem(Action) - #clearSecondaryItems() and - #onMorePerformed(ActionEvent). o Pivots can set a context menu. o Removed the obsolete reference to the Binding lib from pom.xml. CHANGES IN 1.1.0 --------------------------------------------------------- o Added header and footer to TabBar. o Source cleanup. o Added JavaDocs. CHANGES IN 1.0.0 --------------------------------------------------------- o Based on the overhauled navigation API in JGoodies Navigation 1.0. o Removed a few convenience methods. o Changed the tab close rejection mechanism from an immediate boolean answer using: boolean Tab#onClosing(); to a deferred indirect answer using: void Tab#onClosing(VetoableEvent). The VetoableEvent enables API users to accept or reject the tab close request in the event dispatch thread (EDT) but later, for example if a background save operation has completed. CHANGES IN 0.9.6 --------------------------------------------------------- o Added ObjectTile.Builder#titleItems. CHANGES IN 0.9.5 --------------------------------------------------------- o Added AppBar#createButton(?, boolean visibleIffEnabled). o Marked most methods in AppBar as final. CHANGES IN 0.9.4 --------------------------------------------------------- o Recompiled against Navigation 0.9.9. CHANGES IN 0.9.3 --------------------------------------------------------- o Overhauled the tool tip handling in Pivot and TabBar. o AppBar action buttons are visible if and only if enabled. CHANGES IN 0.9.2 --------------------------------------------------------- o Introduced a mechanism to release tile view listeners registered with their referenced tiles. Added #release to: HubView, HubSectionView, AbstractTileView. o SecondaryTabsPage forwards PivotModel PropertyChangeEvents. CHANGES IN 0.9.1 --------------------------------------------------------- o Added new tab bar context menu text resources. o Renamed some tab bar operations. CHANGES IN 0.9.0 --------------------------------------------------------- o Renamed DefaultUWPPage to DefaultPage. o Added JavaDocs. CHANGES IN 0.8.15 --------------------------------------------------------- o Tab#closeOtherTabs and #closeTabsToTheRight can be cancelled if a tab's #onClosing returns false. o Renamed TabModel#addTAb to #addTab. o Removed the final marker from FrameTabModel#addNewTab. o AppBar extras popup menu avoids leading and trailing separators. o Fixed TabModel#hasCloseableOtherTabs. CHANGES IN 0.8.14 --------------------------------------------------------- o DefaultFrameTab forwards Activatable calls to Activatable pages. o DefaultFrameTab listens to page display string changes. CHANGES IN 0.8.13 --------------------------------------------------------- o Works around poor pivot button preferred sizes in Java 9ff in high dpi environments. o ObjectTileView#contentSet reverted: checks title and subtitle. CHANGES IN 0.8.12 --------------------------------------------------------- o Pivots honor numeric badges. o Fixed pivot button preferred size in high dpi environments. o ObjectTileView#contentSet checks subtitle only. CHANGES IN 0.8.11 --------------------------------------------------------- o Localized a text resource for the Swiss locale. CHANGES IN 0.8.10 --------------------------------------------------------- o FrameTabModel#isCtrlDown uses modifiers, not modifiersEx for mouse. o Added NavigationView#settings(IconValue, String, Consumer). o Added an internal class. o NavigationView checks the selection state using Page#equalsPage. o Tab insertion index skips pinned tabs. o The Ctrl+ keyboard tab selection checks for valid tab index. CHANGES IN 0.8.9 ---------------------------------------------------------- o Added EmptyTile. o Added TileState.NEUTRAL. o Added IUWPResources#toForeground(TileState) o Renamed AbstractTile#setBackground(TileState) to #setState(TileState). CHANGES IN 0.8.8 ---------------------------------------------------------- o New NavigationView features: search field and item headers. o Improved opener tab id feature. o PivotModel operations are public: add, remove, clear. o Added the items feature to ObjectTile title and subtitle. o Refactored Hub and HubSection method names: - addXXX -> add - removeXXX -> remove o HubSection is interface; added DefaultHubSection. o ObjectTile uses static text for the subtitle. CHANGES IN 0.8.7 ---------------------------------------------------------- o Refactored Themes, Colors, and IUWPResources. o Scrollable HubViews have a larger scroll unit increment. CHANGES IN 0.8.6 ---------------------------------------------------------- o Moved general pages to a new pages package. o Moved MasterDetailsPage to Design library. CHANGES IN 0.8.5 ---------------------------------------------------------- o Improved the tab bar pinning feature. CHANGES IN 0.8.4 ---------------------------------------------------------- o Overhauled resources. o Updated painting of the navigation toggle button selected state. o API cleanup. CHANGES IN 0.8.3 ---------------------------------------------------------- o Fixed tab bar issues. CHANGES IN 0.8.2 ---------------------------------------------------------- o Added SecondaryTabsPage#setTabs(Supplier