Commit Graph

556 Commits

Author SHA1 Message Date
Sergey Pak
e8d44eaeea IJPL-158105 Settings sync between 2024.1 and 2024.2 prompts to disable new UI in 2024.2 if is was disabled in 2024.1
GitOrigin-RevId: dc14421be467633cb1702293d2cc157b92d55c89
2024-07-10 18:45:37 +00:00
Tomek jean Mańko
5bfc566e1c IJPL-13205 Fix setting status label update when deleting remote data
Since the even handler runs in a different thread from the progress modal, `ModalityKt.defaultModalityImpl()`
won't be able to get it from `ProgressManager.getInstanceOrNull()?.currentProgressModality`, causing the
modality state to fall back to non-modal, delaying the label update until after the settings dialog is closed.

It's fixed by just storing the settings dialog modality state before showing the progress modal and passing
it to `runInEdt` explicitly.

Signed-off-by: Sergey Pak <sergey.pak@jetbrains.com>

GitOrigin-RevId: ae45788cc3f16bb92e2bad666ba16b733762a216
2024-07-10 18:22:48 +00:00
Tomek jaen Mańko
3b3ef02a58 IJPL-13931 Ensure settings categories are respected in the initial sync
There are two parts to the fix:
  * explicitly flushing settings to disk before the initial sync — while the sync subsystem
    correctly filters out files not matching the selected sync categories, it only seems to
    take into account files that are actually persisted on disk when uploading them. When
    setting up sync, the settings object initially remains in-memory (at least until the
    time IDE decides to flush it on it's own), so initial upload might be missing the
    settings state, giving appearance of all the categories being synced, instead of just
    the selected ones,
  * correctly categorise plugin settings — `SettingsSyncFiltering.getSubCategory` was written
    to only classify font settings properly, so you could not disable a specific plugin from
    syncing. This is now fixed by using plugin ID for category  while filtering. It might make
    sense to unify this code with `SyncPluginGroup` one way or another, but it was simpler to
    just duplicate the behaviour for this fix.

Signed-off-by: Sergey Pak <sergey.pak@jetbrains.com>

GitOrigin-RevId: 88ab02f1198479eaad8966b7890748b87e53f5e0
2024-07-10 17:44:42 +00:00
Sergey Pak
50100581c7 Don't use test scope in tests (use timeoutRunBlocking instead). Related to IJPL-158038
GitOrigin-RevId: d9d4c92e77c7f28a80c05d173cdcd08d59e9c139
2024-07-09 20:24:49 +00:00
Eldar Abusalimov
3f9aae4213 LLM-2956: license: Add JBAccountInfoService.issueTrialLicense()
GitOrigin-RevId: 112ccda56ea29d5d92441a07067fe58df73b2567
2024-07-05 19:16:00 +00:00
Sergey Pak
82ff26ce77 IJPL-13080 DIRC checksum mismatch error in Settings Sync
GitOrigin-RevId: ffe305a7eef4187508363cfe0d11ae8e3da66dab
2024-07-03 22:36:20 +00:00
Sergey Pak
eb2aa77226 fix settings sync auto tests + light refactoring
GitOrigin-RevId: 57fda7dda9be6b2574ed6ca23c0def61fb967fae
2024-07-01 19:44:54 +00:00
Eugene Zhuravlev
f3e7336716 update ls_client_api, implement getIdeProductCode query, pass option ideLicenseId when requesting a non-anonymous trial
GitOrigin-RevId: 2855a9808ec5e348295fa4116cd73bfb7601eea4
2024-06-28 11:09:13 +00:00
Sergey Pak
bbb830453c IJPL-157227 IDE is localized after Settings Sync between 2024.1 and 2024.2 if language plugins had updates
GitOrigin-RevId: 2b596270b6052ec178ad026d3dc3b64a3b25c46e
2024-06-27 20:49:55 +00:00
Alexander Lobas
db4181013a IJPL-150231 Move icon mappings from json to icon generator (remove ExpUiIcons)
GitOrigin-RevId: ec563768e3a10df6a758997d6be43bb707a70fe8
2024-06-27 10:30:26 +00:00
Eldar Abusalimov
485531f77c LLM-2956: JBAccountInfoService: Introduce API for retrieving license info
GitOrigin-RevId: 1858c3dcc2c83fc56280b01dd7dd4467c39d4200
2024-06-24 23:48:43 +00:00
Sergey Pak
d1866ef9a4 migrate settings sync to coroutines
GitOrigin-RevId: 14b67fcbd38e0f0f42624a41a147769317521198
2024-06-24 18:26:15 +00:00
Eldar Abusalimov
525b17025a LLM-2957: license: Add JBAccountInfoService.LoginSession API
GitOrigin-RevId: febdd132b9d04c876fcf7bedef3737f00a7d1283
2024-06-18 23:54:30 +00:00
Alexander Lobas
89d58ee436 IJPL-150231 Move icon mappings from json to icon generator
GitOrigin-RevId: 4d4576fc7eeb92ec43c36abec2d62d271b45d9a4
2024-06-15 23:19:46 +00:00
Vladimir Krivosheev
e5475bc39c move service.kt to core-api
GitOrigin-RevId: 496653a5afebb1d32ffccd8c7c3e9f6d1d3f60fd
2024-06-15 18:11:52 +00:00
Sergey Pak
f0eca1b074 log settings sync state. Will help troubleshooting IJPL-13059 Settings Sync keeps randomly turning itself off
GitOrigin-RevId: d9e13b5e425bcd791baaa0028f9f544c91fbb893
2024-06-13 14:15:18 +00:00
Sergey Pak
b6908e856d IJPL-13143 Plugins are synced when the "Plugins" category in Settings Sync settings is disabled
GitOrigin-RevId: 35782d8b4b30d8a6bd72771099aa5e81237ec574
2024-05-29 19:30:41 +00:00
Pavel Porvatov
768a41031b IJPL-155799 Add presentableName into JBAData
GitOrigin-RevId: d5a38422fc4f8250ab39b9eaeb312d162c91dcff
2024-05-29 16:21:49 +00:00
Sergey Pak
40f5ed306f IJPL-37023 New Import Settings: don't mention Space in the Tools category description
GitOrigin-RevId: 8295861baec5251d4e4c0cb086de04c7c712fac3
2024-05-03 11:11:35 +00:00
Ruslan Cheremin
2103c1093b [test] moved SettingsSync*Tests to junit5
+ tests (junit4) were flaky due to interactions with other tests. Junit5 test-infra has better isolation => migrate tests to junit5 to alleviate flakiness

GitOrigin-RevId: 71f00eef99e94234561dfbcc248974c89d3d2955
2024-04-23 17:37:10 +00:00
Julia Beliaeva
1813627e4b [vcs-log-graph] introduce PermanentGraph.Options to control how the VisibleGraph is created
This allows differentiating between sorting types and other kinds of options, such as linear IntelliSort, which also modifies the graph.

GitOrigin-RevId: d41714231e8ed5082c080444073918fb43a3c8f3
2024-04-03 01:35:25 +00:00
Konstantin Hudyakov
ff77475e7c [settings-sync] IDEA-349383 Disable promotion for now
GitOrigin-RevId: 01d90ef4ac161b5414232669f931357d81f4982e
2024-03-18 12:17:42 +00:00
Sergey Pak
44d8316a06 IDEA-348509 Don't show Settings Sync History tool window, if settingsSync is not active
also fixes
CWM-9102 Plugin settings sync error was shown when change guest permissions

GitOrigin-RevId: db0a542ba2713139030994ec8b30f68cb403544f
2024-03-06 21:32:17 +00:00
Vladimir Krivosheev
0e46c68bcd IJPL-136 cleanup
GitOrigin-RevId: 43808d0552ba6b2ce58f27e9eae6d043e817f2ae
2024-02-19 15:26:20 +00:00
Julia Beliaeva
6966d29609 [vcs-log] convert VcsLogUiProperties to kotlin
GitOrigin-RevId: e86b52b7e83a8bff8172f1f11156907526850e3f
2024-02-16 00:00:59 +00:00
Vadim Salavatov
378c6b1a37 [setting sync] enable new setting sync history toolwindow by default
GitOrigin-RevId: 919e05ec9f29feaf540fd38f92fe7e8067a681c1
2024-02-15 18:10:08 +00:00
Vladimir Krivosheev
44a105e9f4 IJPL-136 pass Element to SC
GitOrigin-RevId: 7fa4c897c446bc8878e533ffe39512a68d47e383
2024-02-15 09:04:02 +00:00
Vadim Salavatov
213eeed4c6 IDEA-344931 fix SettingsHistoryTable renderer so it doesn't invalidate every time
fixes livelock on dynamic plugin unload

GitOrigin-RevId: d1faa6f8ec3801893907674b0154e89a989eda54
2024-02-09 20:31:27 +00:00
Vladimir Krivosheev
11a8751859 use kotlin.io.path.invariantSeparatorsPathString
GitOrigin-RevId: 4ee2eccc21ae3de6c13c1062ef4e80da48c0435b
2024-02-09 06:56:39 +00:00
Yuriy Artamonov
69d8c31043 [settings] Do not instantiate action presentation eagerly for SettingsSyncStatusAction
GitOrigin-RevId: e0489ec3b84f31ffd67f0c6b4e0c0400e2d387c2
2024-02-05 11:36:43 +00:00
Sergey Pak
ab51868051 Handle empty idToken and changing idToken. This fixes IDEA-343073 (Setting Sync sync failed. couldn't get settings from server: Authentication required)
GitOrigin-RevId: 3c7ea2b57630764b514dc8c2ec52f63f9d09b13b
2024-02-02 22:47:06 +00:00
Roman Shevchenko
5c5062e3d3 Cleanup (inlining pointless ChildlessComponentStore, reducing the number of doSave overrides)
GitOrigin-RevId: 8a7e294b1bb00d1b4358f113e2e18c717de10c7a
2024-01-31 11:43:39 +00:00
Konstantin Hudyakov
393f4480cf [settings-sync] IDEA-335945 Add statistics about logging into JetBrains account as a result of promotion
GitOrigin-RevId: d86db71af8f0e01f068d74ab4749918561220d0a
2024-01-26 12:02:31 +00:00
Konstantin Hudyakov
1bddfbaef4 [settings-sync] IDEA-343993 Fix showing promotion more than once
GitOrigin-RevId: a7b1d26192c1cafad0d0ab0d6403aef1acccecb0
2024-01-26 12:02:27 +00:00
Konstantin Hudyakov
b5823a8e39 [settings-sync] IDEA-343990 Do not show promotion for users logged into JetBrains account
GitOrigin-RevId: 765b97322d1b6e6e44278d9dc46b4435e5ce5697
2024-01-26 12:02:23 +00:00
Evgenii Ilichev
68f9304b78 [IJI-1340] extract jgit to a regular library
GitOrigin-RevId: 390d071ff6a62187d8bdcd480da39c6af538382a
2024-01-18 18:08:56 +00:00
Sergey Pak
d42948bac0 IDEA-341528 Settings Sync History: collect statistics about merging with conflict - record conflicting file type (plugins.json, options, scheme)
(cherry picked from commit 666a133428d3b4ca296d13df7d3579de69f93f5a)

GitOrigin-RevId: 82b75bc0d567666eb62d19e907e78e83b932f2ae
2024-01-18 00:24:19 +00:00
Julia Beliaeva
86f174ae18 [settings-sync] remove unnecessary table field
GitOrigin-RevId: 6b7e2818e5fed43c2bf2c1aa449110f04c95d70a
2024-01-16 00:47:14 +00:00
Julia Beliaeva
b304b443a1 [settings-sync] do not extend VcsLogUiPropertiesImpl
GitOrigin-RevId: 64818f5a2ba7e770ae49cef8c75cdf4fa541bb37
2024-01-16 00:47:14 +00:00
Julia Beliaeva
c60445b55b [settings-sync] do not implement AbstractVcsLogUi
AbstractVcsLogUi works with VcsLogGraphTable, so the table was created in SettingsHistoryLogUi but not used. This commit inherits SettingsHistoryLogUi from VcsLogUiBase, and makes SettingsHistoryTable and SettingsHistoryTableModel to implement VcsLogCommitList and VcsLogCommitList model respectively.

GitOrigin-RevId: a67fa3cd1ecfebd344eddad7e447a28e721fc552
2024-01-16 00:47:14 +00:00
Julia Beliaeva
e5a3417ae5 [settings-sync] call fireTableDataChanged when data changes
GitOrigin-RevId: d3f21dc27be2aa81f551cbba61fc789a5cae1016
2024-01-16 00:47:14 +00:00
Julia Beliaeva
7f60a1aabd [settings-sync] build rows on background thread
GitOrigin-RevId: e8e1fadc290aac2098868712100e811cc5aa62dd
2024-01-16 00:47:14 +00:00
Julia Beliaeva
56af99173c [settings-sync] retrieve an ordered details list
AbstractDataGetter#loadCommitsDataSynchronously outputs commit details from the cache before the details loaded from git. This commit uses AbstractDataGetter#getCommitDetails function instead, which keeps the details order.

GitOrigin-RevId: 1e3f8efc83dde984dc9d2bdc56637d1cc84ce2c2
2024-01-16 00:47:14 +00:00
Julia Beliaeva
59a21cdb5b [settings-sync] reformat, optimize imports
GitOrigin-RevId: 3b7fdea584763c878bca6529029a7383b6d0f073
2024-01-16 00:47:14 +00:00
Julia Beliaeva
06a438d8b4 [settings-sync] remove unused navigation history
VcsLogUiUtil#installNavigationHistory uses VcsLogGraphTable for navigation. Since the table is not actually shown in the settings sync ui, and the method AbstractVcsLogUi#getNavigationHistory is deprecated and not called, navigation would not work anyway.

GitOrigin-RevId: 0f360cfda8fa83693d08d912210a8fd013d9c4b4
2024-01-16 00:47:13 +00:00
Evgenii Ilichev
ed46ab150f settings-sync: fix Troubleshooting dialog error message typo
GitOrigin-RevId: 16a530245d6ea59f4712207246bde06b0fb04de7
2024-01-05 20:50:39 +00:00
Sergey Pak
dd1a651eb2 IDEA-339070: mark additional components for settings migration
GitOrigin-RevId: a565ad6a8ebe0ac8829730dd1d1013e855272aa0
2023-12-21 10:27:35 +00:00
Sergey Pak
5ba0c07766 IDEA-339070: handle RoamingType.LOCAL and preparing for migratable components in other.xml
GitOrigin-RevId: 83d8b4cd40fa39fd6b89fe1a7d42000557e5c2ce
2023-12-21 10:27:35 +00:00
Sergey Pak
cf014c5aba implement caching for category filtering
GitOrigin-RevId: 06ded9ca7977943edabe413ceb858383356f2b83
2023-12-21 10:27:35 +00:00
Sergey Pak
c7ac59e667 comment out Zip limit notification (related to IDEA-341403)
GitOrigin-RevId: f1268d14738eeb9b4f2571d545778184dc04cc81
2023-12-20 20:53:25 +00:00