On Wed, 1 Jun 2022 10:08:37 GMT, Tejesh R <t...@openjdk.org> wrote: >> With the proposed fix, JList's focus ring color follows accent color >> changes. Previously the focus ring for JList was not prominently visible and >> did not follow accent color changes. >> >> While investing a similar issue related to JTable >> (https://github.com/openjdk/jdk/pull/7768#discussion_r839813517), it was >> observed that List.focusCellHighlightBorder was using the cellFocusRing >> color as well. This PR extends the focus ring accent color changes to >> JLists. >> >> Related issues: >> [JDK-7124282](https://bugs.openjdk.java.net/browse/JDK-7124282) , >> [JDK-8261243](https://bugs.openjdk.java.net/browse/JDK-8261243) >> >> #### Summary of changes >> >> - focusCellHighlightBorder in `AquaLookAndFeel` changed which is used for >> cell border for lists and tables >> - code related to on-the-fly focus ring color refactored into a separate >> method (`changeFocusRingColor()`) for re-usability >> - `changeFocusRingColor()` called when PropertyChangeEvent == >> FRAME_ACTIVE_PROPERTY and the frame gains focus, instead of calling in >> individual `swapSelectionColors` in `AquaFocusHandler.java` >> - Common test added - `CellFocusRingTest`, which tests for both cases - >> Tables & Lists. >> >> **Before and After screenshots of JList** _(Screenshots from SwingSet2 demo)_ >> >>  > > test/jdk/javax/swing/JTable/CellFocusRingTest.java line 85: > >> 83: } >> 84: >> 85: if (UIManager.getDefaults().get("CellFocus.color") != null > > if (UIManager.getDefaults().get("CellFocus.color") != null > && UIManager.getDefaults().get("CellFocus.color") > instanceof Color) > > can be changed into > > if (UIManager.getDefaults().get("CellFocus.color") > instanceof Color) > > Since if the object is null then `instanceof` returns false.
@TejeshR13 The second half of the condition is executed only if `"CellFocus.color" != null` (due to and conditional) ------------- PR: https://git.openjdk.java.net/jdk/pull/8896