`EdtDataRule` becomes `UiDataRule`. As previously, the name now reflects the data it operates on. It makes the fact rules are called in EDT and BGT less confusing
GitOrigin-RevId: 68f0f3451053ff387f90394872606434852aa32b
Review is done. Most of the API was left alone because
it's a module intended for public API in the first place,
and it's often not obvious what should be public and
what shouldn't.
GitOrigin-RevId: 8ce40863e4531a20abbc510ca3725aae74fe2250
Make TextHoledIcon internal.
A very specific implementation for just one place.
No external usages. And one internal API exposure.
GitOrigin-RevId: 0dbb9ffac7d00af59cd316a44bc3a9eda25cf56e
Make ScalingDeferredSquareImageIcon internal.
Only used internally in one place and looks like it's
a very specific use case.
GitOrigin-RevId: 0a88aa6ef2e600618ee501bda462498bb6a154ba
Make RightAlignedLabelUI internals private.
These are very old functions without external usages
with signatures that don't look like they're supposed
to be called from anywhere else.
GitOrigin-RevId: 5bba3dcf6bab439fba11e0ae0bfaa36dc86fcdbf
Make com.intellij.ui.LayeredIcon.updateSize private.
It's definitely an implementation detail: a private flag
determines when it should be called, and its signature
has changed once already. No external usages either.
GitOrigin-RevId: 1a51aecdcb93b5d84245e3e103663f098cecab60
Make com.intellij.ui.IconDescriptionBundleEP.EP_NAME internal.
As per the general rule for EP names. No external usages.
GitOrigin-RevId: e5673e9a6786d008353e9dfbde359dd16e64d407
Make com.intellij.ide.UiActivity.isSameOrGeneralFor internal.
No external usages and it seems it's for internal use.
GitOrigin-RevId: 4b146ff612f9bff469e8d2ce8e3c9585073c5e83
Java chooses the most specific method for SAM.
But kotlin prefers its own functions.
Fixes
IJPL-156284 Stash: apply and pop buttons are always disabled
GitOrigin-RevId: ac2a0471a8fcd668f57db63550a80d0a476e29ca
The idea was to name `DataSink.set` & `DataSink.setLazy` identically. It didn't work out due to present Kotlin limitations.
GitOrigin-RevId: afca5c67ebf017f72afc37fe6ac986aac6e72097
This is needed to avoid 'IllegalAccessError' if different modules are loaded by different classloaders.
GitOrigin-RevId: 99113e2a8bee471332174bd2710eccf9b47ebb67
Stop leaking PSI via `DeferredIconImpl` by introducing `IconUtil.deepRetrieveIconNow` into the picture.
GitOrigin-RevId: 75971d2b17b71e7e90472ad3d68027bf6affbaab
1. Keep fast PSI icon providers but run VFS patchers over their results
2. (Avoid recursion in `ElementBase` and `PsiBasedFileIconProvider`)
3. Add test to assert same psi/vfs file/dir icons
Fixes
IJPL-714 PsiDirectory ignores FileIconProvider EP
IJPL-939 PsiIconUtil.getProvidersIcon ignores FileIconPatcher EP
GitOrigin-RevId: 948129ab4b9a9195a32d4b2a4ec191bcbd647d80
It's needed because we need ExperimentalUI.isNewUI
to create these icons, and we can't access it from IconUtil.kt
where we actually need to create a symlink icon.
GitOrigin-RevId: 03ca72e672cd1f0b3722d54a6039fc2c728fa7bb
The issue was caused by the class not implementing
replaceBy/copy/deepCopy methods correctly, which caused
the icon to be replaced by a regular LayeredIcon without
the overlay at some point.
GitOrigin-RevId: 0a104dfd8a03be47b74a15b0c5734a60774c28d3
The commit simplifies and optimizes the computeFileIcon method in IconUtil.kt by extracting part of its contents into a private function computeFileIconImpl. This reduces redundancy and facilitates better comprehension of the code. The rearrangement also leads to a more efficient code structure. Other utility methods have also been moved for better organization.
GitOrigin-RevId: baf874fc563c6187f745f04b287c6e52bafd02cd