Skip to content

Commit d3b4c54

Browse files
committed
add run as administrator when holding ctrl and shift to Shell plugin
1 parent 04882ad commit d3b4c54

File tree

1 file changed

+32
-4
lines changed
  • Plugins/Flow.Launcher.Plugin.Shell

1 file changed

+32
-4
lines changed

Plugins/Flow.Launcher.Plugin.Shell/Main.cs

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,14 @@ public List<Result> Query(Query query)
7373
IcoPath = Image,
7474
Action = c =>
7575
{
76-
Execute(Process.Start, PrepareProcessStartInfo(m, c.SpecialKeyState.CtrlPressed));
76+
var runAsAdministrator = (
77+
c.SpecialKeyState.CtrlPressed &&
78+
c.SpecialKeyState.ShiftPressed &&
79+
!c.SpecialKeyState.AltPressed &&
80+
!c.SpecialKeyState.WinPressed
81+
);
82+
83+
Execute(Process.Start, PrepareProcessStartInfo(m, runAsAdministrator));
7784
return true;
7885
}
7986
}));
@@ -106,7 +113,14 @@ private List<Result> GetHistoryCmds(string cmd, Result result)
106113
IcoPath = Image,
107114
Action = c =>
108115
{
109-
Execute(Process.Start, PrepareProcessStartInfo(m.Key));
116+
var runAsAdministrator = (
117+
c.SpecialKeyState.CtrlPressed &&
118+
c.SpecialKeyState.ShiftPressed &&
119+
!c.SpecialKeyState.AltPressed &&
120+
!c.SpecialKeyState.WinPressed
121+
);
122+
123+
Execute(Process.Start, PrepareProcessStartInfo(m.Key, runAsAdministrator));
110124
return true;
111125
}
112126
};
@@ -129,7 +143,14 @@ private Result GetCurrentCmd(string cmd)
129143
IcoPath = Image,
130144
Action = c =>
131145
{
132-
Execute(Process.Start, PrepareProcessStartInfo(cmd));
146+
var runAsAdministrator = (
147+
c.SpecialKeyState.CtrlPressed &&
148+
c.SpecialKeyState.ShiftPressed &&
149+
!c.SpecialKeyState.AltPressed &&
150+
!c.SpecialKeyState.WinPressed
151+
);
152+
153+
Execute(Process.Start, PrepareProcessStartInfo(cmd, runAsAdministrator));
133154
return true;
134155
}
135156
};
@@ -147,7 +168,14 @@ private List<Result> ResultsFromlHistory()
147168
IcoPath = Image,
148169
Action = c =>
149170
{
150-
Execute(Process.Start, PrepareProcessStartInfo(m.Key));
171+
var runAsAdministrator = (
172+
c.SpecialKeyState.CtrlPressed &&
173+
c.SpecialKeyState.ShiftPressed &&
174+
!c.SpecialKeyState.AltPressed &&
175+
!c.SpecialKeyState.WinPressed
176+
);
177+
178+
Execute(Process.Start, PrepareProcessStartInfo(m.Key, runAsAdministrator));
151179
return true;
152180
}
153181
});

0 commit comments

Comments
 (0)