mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[UI] IDEA-242013 Add Remember Size For Each Tool Window setting to old UI
Unfortunately, due to UISettings living in editor-ui-api, the isNewUI() check is not available there, so in order for the two settings to be independent, two actually separate settings were created: - rememberSizeForEachToolWindowOldUI (the new one); - rememberSizeForEachToolWindowNewUI (replaces the existing setting for the new UI). Since the new UI setting wasn't released yet (it wasn't a part of 2022.3), it should be fine compatibility-wise. GitOrigin-RevId: 59ed73c0fea9aa33ab288fe6417f36f4a9e399e0
This commit is contained in:
committed by
intellij-monorepo-bot
parent
51989c4378
commit
1a4b34963b
@@ -263,10 +263,16 @@ class UISettings @NonInjectable constructor(private val notRoamableOptions: NotR
|
||||
state.wideScreenSupport = value
|
||||
}
|
||||
|
||||
var rememberSizeForEachToolWindow: Boolean
|
||||
get() = state.rememberSizeForEachToolWindow
|
||||
var rememberSizeForEachToolWindowOldUI: Boolean
|
||||
get() = state.rememberSizeForEachToolWindowOldUI
|
||||
set(value) {
|
||||
state.rememberSizeForEachToolWindow = value
|
||||
state.rememberSizeForEachToolWindowOldUI = value
|
||||
}
|
||||
|
||||
var rememberSizeForEachToolWindowNewUI: Boolean
|
||||
get() = state.rememberSizeForEachToolWindowNewUI
|
||||
set(value) {
|
||||
state.rememberSizeForEachToolWindowNewUI = value
|
||||
}
|
||||
|
||||
var sortBookmarks: Boolean
|
||||
|
||||
@@ -67,8 +67,10 @@ class UISettingsState : BaseState() {
|
||||
|
||||
@get:OptionTag("WIDESCREEN_SUPPORT")
|
||||
var wideScreenSupport by property(false)
|
||||
@get:OptionTag("REMEMBER_SIZE_FOR_EACH_TOOL_WINDOW")
|
||||
var rememberSizeForEachToolWindow by property(false)
|
||||
@get:OptionTag("REMEMBER_SIZE_FOR_EACH_TOOL_WINDOW_OLD_UI")
|
||||
var rememberSizeForEachToolWindowOldUI by property(true)
|
||||
@get:OptionTag("REMEMBER_SIZE_FOR_EACH_TOOL_WINDOW_NEW_UI")
|
||||
var rememberSizeForEachToolWindowNewUI by property(false)
|
||||
@get:OptionTag("LEFT_HORIZONTAL_SPLIT")
|
||||
var leftHorizontalSplit by property(false)
|
||||
@get:OptionTag("RIGHT_HORIZONTAL_SPLIT")
|
||||
|
||||
@@ -84,8 +84,10 @@ private val cdLeftToolWindowLayout
|
||||
get() = CheckboxDescriptor(message("checkbox.left.toolwindow.layout"), settings::leftHorizontalSplit, groupName = windowOptionGroupName)
|
||||
private val cdRightToolWindowLayout
|
||||
get() = CheckboxDescriptor(message("checkbox.right.toolwindow.layout"), settings::rightHorizontalSplit, groupName = windowOptionGroupName)
|
||||
private val cdRememberSizeForEachToolWindow
|
||||
get() = CheckboxDescriptor(message("checkbox.remember.size.for.each.tool.window"), settings::rememberSizeForEachToolWindow, groupName = windowOptionGroupName)
|
||||
private val cdRememberSizeForEachToolWindowOldUI
|
||||
get() = CheckboxDescriptor(message("checkbox.remember.size.for.each.tool.window"), settings::rememberSizeForEachToolWindowOldUI, groupName = windowOptionGroupName)
|
||||
private val cdRememberSizeForEachToolWindowNewUI
|
||||
get() = CheckboxDescriptor(message("checkbox.remember.size.for.each.tool.window"), settings::rememberSizeForEachToolWindowNewUI, groupName = windowOptionGroupName)
|
||||
private val cdUseCompactTreeIndents
|
||||
get() = CheckboxDescriptor(message("checkbox.compact.tree.indents"), settings::compactTreeIndents, groupName = uiOptionGroupName)
|
||||
private val cdShowTreeIndents
|
||||
@@ -391,17 +393,27 @@ internal class AppearanceConfigurable : BoundSearchableConfigurable(message("tit
|
||||
)
|
||||
twoColumnsRow(
|
||||
{ checkBox(cdLeftToolWindowLayout) },
|
||||
{ checkBox(cdRightToolWindowLayout) }
|
||||
)
|
||||
twoColumnsRow(
|
||||
{
|
||||
if (ExperimentalUI.isNewUI()) {
|
||||
checkBox(cdRememberSizeForEachToolWindow)
|
||||
checkBox(cdRememberSizeForEachToolWindowNewUI)
|
||||
}
|
||||
else {
|
||||
checkBox(cdShowToolWindowNumbers)
|
||||
checkBox(cdRememberSizeForEachToolWindowOldUI)
|
||||
}
|
||||
})
|
||||
},
|
||||
)
|
||||
if (ExperimentalUI.isNewUI()) {
|
||||
twoColumnsRow(
|
||||
{ checkBox(cdRightToolWindowLayout) },
|
||||
null,
|
||||
)
|
||||
}
|
||||
else {
|
||||
twoColumnsRow(
|
||||
{ checkBox(cdRightToolWindowLayout) },
|
||||
{ checkBox(cdShowToolWindowNumbers) },
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
group(message("group.presentation.mode")) {
|
||||
|
||||
@@ -642,9 +642,9 @@ open class ToolWindowManagerImpl @NonInjectable @TestOnly internal constructor(
|
||||
|
||||
private fun isIndependentToolWindowResizeEnabled(): Boolean =
|
||||
if (isNewUi)
|
||||
UISettings.getInstance().rememberSizeForEachToolWindow
|
||||
UISettings.getInstance().rememberSizeForEachToolWindowNewUI
|
||||
else
|
||||
Registry.`is`("toolwindow.independent.sizes")
|
||||
UISettings.getInstance().rememberSizeForEachToolWindowOldUI
|
||||
|
||||
private fun visibleToolWindow(anchor: ToolWindowAnchor): ToolWindowEntry? =
|
||||
idToEntry.values.firstOrNull { it.isVisibleAndDockedTo(anchor) }
|
||||
|
||||
@@ -1907,9 +1907,6 @@ toolwindow.active.tab.contrast.background.color=808080
|
||||
toolwindow.active.tab.contrast.background.color.description=Contrast color for selected tab background in tool windows
|
||||
toolwindow.disable.overlay.by.double.key=false
|
||||
toolwindow.disable.overlay.by.double.key.description=If Toolwindow Stripe button panels are hidden, you can invoke them by double Alt/Meta (hold)
|
||||
toolwindow.independent.sizes=true
|
||||
toolwindow.independent.sizes.description=If enabled, old UI tool windows docked to the same area will have independent sizes, \
|
||||
otherwise resizing one window will resize them all. For the new UI it's now configured in the settings
|
||||
|
||||
linux.kernel.variables.validate.every.time=true
|
||||
linux.kernel.variables.validate.every.time.description=Check that kernel variables required to run profiler are set before every profiler start
|
||||
|
||||
Reference in New Issue
Block a user