424414ec97
This PR adds a bit more information to each item in the Tray Icon's window selection submenu. Currently it only shows the window ID and window name if given one. Now each item will instead show`{Window ID} : {Active Tab Title} [{Window Name}]` ![image](https://user-images.githubusercontent.com/57155886/130883675-7a76e674-2429-4b26-b869-2455a9e4b4f6.png)
86 lines
2.9 KiB
Plaintext
86 lines
2.9 KiB
Plaintext
// Copyright (c) Microsoft Corporation.
|
|
// Licensed under the MIT license.
|
|
|
|
namespace Microsoft.Terminal.Remoting
|
|
{
|
|
|
|
runtimeclass CommandlineArgs
|
|
{
|
|
CommandlineArgs();
|
|
CommandlineArgs(String[] args, String cwd);
|
|
|
|
String[] Commandline { get; set; };
|
|
String CurrentDirectory();
|
|
};
|
|
|
|
runtimeclass RenameRequestArgs
|
|
{
|
|
RenameRequestArgs(String newName);
|
|
String NewName { get; };
|
|
Boolean Succeeded;
|
|
};
|
|
|
|
runtimeclass WindowActivatedArgs
|
|
{
|
|
WindowActivatedArgs(UInt64 peasantID, Guid desktopID, Windows.Foundation.DateTime activatedTime);
|
|
WindowActivatedArgs(UInt64 peasantID, UInt64 hwnd, Guid desktopID, Windows.Foundation.DateTime activatedTime);
|
|
UInt64 PeasantID { get; };
|
|
UInt64 Hwnd { get; };
|
|
Guid DesktopID { get; };
|
|
Windows.Foundation.DateTime ActivatedTime { get; };
|
|
};
|
|
|
|
|
|
enum MonitorBehavior
|
|
{
|
|
InPlace,
|
|
ToCurrent,
|
|
ToMouse,
|
|
};
|
|
|
|
|
|
[default_interface] runtimeclass SummonWindowBehavior {
|
|
SummonWindowBehavior();
|
|
Boolean MoveToCurrentDesktop;
|
|
Boolean ToggleVisibility;
|
|
UInt32 DropdownDuration;
|
|
MonitorBehavior ToMonitor;
|
|
}
|
|
|
|
interface IPeasant
|
|
{
|
|
CommandlineArgs InitialArgs { get; };
|
|
|
|
void AssignID(UInt64 id);
|
|
UInt64 GetID();
|
|
UInt64 GetPID();
|
|
Boolean ExecuteCommandline(CommandlineArgs args);
|
|
void ActivateWindow(WindowActivatedArgs args);
|
|
WindowActivatedArgs GetLastActivatedArgs();
|
|
|
|
void DisplayWindowId(); // Tells us to display its own ID (which causes a DisplayWindowIdRequested to be raised)
|
|
|
|
String WindowName { get; };
|
|
String ActiveTabTitle { get; };
|
|
void RequestIdentifyWindows(); // Tells us to raise a IdentifyWindowsRequested
|
|
void RequestRename(RenameRequestArgs args); // Tells us to raise a RenameRequested
|
|
void Summon(SummonWindowBehavior behavior);
|
|
void RequestShowTrayIcon();
|
|
void RequestHideTrayIcon();
|
|
|
|
event Windows.Foundation.TypedEventHandler<Object, WindowActivatedArgs> WindowActivated;
|
|
event Windows.Foundation.TypedEventHandler<Object, CommandlineArgs> ExecuteCommandlineRequested;
|
|
event Windows.Foundation.TypedEventHandler<Object, Object> IdentifyWindowsRequested;
|
|
event Windows.Foundation.TypedEventHandler<Object, Object> DisplayWindowIdRequested;
|
|
event Windows.Foundation.TypedEventHandler<Object, RenameRequestArgs> RenameRequested;
|
|
event Windows.Foundation.TypedEventHandler<Object, SummonWindowBehavior> SummonRequested;
|
|
event Windows.Foundation.TypedEventHandler<Object, Object> ShowTrayIconRequested;
|
|
event Windows.Foundation.TypedEventHandler<Object, Object> HideTrayIconRequested;
|
|
};
|
|
|
|
[default_interface] runtimeclass Peasant : IPeasant
|
|
{
|
|
Peasant();
|
|
};
|
|
}
|