client: Add configurable hotkey to toggle plugin panel
This commit is contained in:
committed by
Jordan Atwood
parent
7784395255
commit
15e0f1e5f2
@@ -312,4 +312,15 @@ public interface RuneLiteConfig extends Config
|
|||||||
{
|
{
|
||||||
return new Keybind(KeyEvent.VK_F11, InputEvent.CTRL_DOWN_MASK);
|
return new Keybind(KeyEvent.VK_F11, InputEvent.CTRL_DOWN_MASK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "panelToggleKey",
|
||||||
|
name = "Plugin Panel Toggle Key",
|
||||||
|
description = "The key that will toggle the current or last opened plugin panel (accepts modifiers)",
|
||||||
|
position = 45
|
||||||
|
)
|
||||||
|
default Keybind panelToggleKey()
|
||||||
|
{
|
||||||
|
return new Keybind(KeyEvent.VK_F12, InputEvent.CTRL_DOWN_MASK);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -353,6 +353,17 @@ public class ClientUI
|
|||||||
|
|
||||||
keyManager.registerKeyListener(sidebarListener);
|
keyManager.registerKeyListener(sidebarListener);
|
||||||
|
|
||||||
|
final HotkeyListener pluginPanelListener = new HotkeyListener(config::panelToggleKey)
|
||||||
|
{
|
||||||
|
@Override
|
||||||
|
public void hotkeyPressed()
|
||||||
|
{
|
||||||
|
togglePluginPanel();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
keyManager.registerKeyListener(pluginPanelListener);
|
||||||
|
|
||||||
// Add mouse listener
|
// Add mouse listener
|
||||||
final MouseListener mouseListener = new MouseAdapter()
|
final MouseListener mouseListener = new MouseAdapter()
|
||||||
{
|
{
|
||||||
@@ -738,6 +749,26 @@ public class ClientUI
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void togglePluginPanel()
|
||||||
|
{
|
||||||
|
// Toggle plugin panel open
|
||||||
|
final boolean pluginPanelOpen = pluginPanel != null;
|
||||||
|
|
||||||
|
if (currentButton != null)
|
||||||
|
{
|
||||||
|
currentButton.setSelected(!pluginPanelOpen);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pluginPanelOpen)
|
||||||
|
{
|
||||||
|
contract();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
expand(currentNavButton);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void expand(@Nullable NavigationButton button)
|
private void expand(@Nullable NavigationButton button)
|
||||||
{
|
{
|
||||||
if (button == null)
|
if (button == null)
|
||||||
|
|||||||
Reference in New Issue
Block a user