Add Windows support and first-class Linux support (#946)
* `child_pty` => `pty.js` * Create a frameless window on Windows and Linux * Add a brand new UI for Linux and Windows 💅 * [Windows] Fix plugin installation * [Windows] Fix the `build` script * [Windows] Add a bigger `icon.ico` * [Mac] Add `WebKitAppRegion: drag` when running on macOS * Fix code style 🤔 * Add `appveyor.yml` * Fix code style (again) * [Windows] Fix AppVeyor's `install` script * [Windows] Try a new AppVeyor config * [Windows] Set the binary path so Spectron can run the tests * [Windows] Try to build on x64 * Try again to build on x64 * Try one more time 😩 * Throw an error to indicate that `pty.js` was built incorrectly * [Win/Linux] Add `display: hidden` to <Tabs /> if tabs.length === 1 * [Win/Linux] Reorganize SVGs – via @CodeTheory * [Win/Linux] Fix the hamburger menu height * Make the SVGs look better with `shape-rendering: crispEdges;` * [Win/Linux] Add config options for the window controls and the 🍔 menu * Add `electron-squirrel-startup` dependency * [Win] Handle Squirrel commands * [Win/Linux] Fix default color for the 🍔 and window controls – via @CodeTheory * [Win/Linux] Add some padding - via @CodeTheory * [Win/Linux] Add hover states – via @CodeTheory * [Win] Fix empty window/tab titles * [Win] Fix opening Preferences (#978) * [Win] Fix opening Preferences * Update ui.js * Update ui.js * Enhance messages and default editor * [Win] Add dependency instructions to the README.md [skip ci] * Fix code style * [Win/Linux] Check the number of open windows before quitting the app
This commit is contained in:
parent
26701d43b5
commit
9c90e19760
21 changed files with 433 additions and 74 deletions
|
|
@ -201,7 +201,12 @@ export function moveTo(i) {
|
|||
}
|
||||
|
||||
export function showPreferences() {
|
||||
const editorFallback = process.platform === 'win32' ? 'notepad' : 'nano';
|
||||
// eslint-disable-next-line no-template-curly-in-string
|
||||
const command = process.platform === 'win32' ? ' start notepad "%userprofile%\\.hyper.js"' : ' bash -c \'exec env ${EDITOR:=nano} ~/.hyper.js\'';
|
||||
const message = process.platform === 'win32' ?
|
||||
' echo Attempting to open ^%userprofile^%\\.hyper.js with notepad' :
|
||||
' echo Attempting to open ~/.hyper.js with your \$EDITOR'; // eslint-disable-line no-useless-escape
|
||||
|
||||
return dispatch => {
|
||||
dispatch({
|
||||
type: UI_SHOW_PREFERENCES,
|
||||
|
|
@ -212,12 +217,12 @@ export function showPreferences() {
|
|||
rpc.once('session data', () => {
|
||||
dispatch(sendSessionData(
|
||||
uid,
|
||||
// Leading space prevents command to be stored in shell history
|
||||
[' echo Attempting to open ~/.hyper.js with your \$EDITOR', // eslint-disable-line no-useless-escape
|
||||
' echo If it fails, open it manually with your favorite editor!',
|
||||
' bash -c \'exec env ${EDITOR:=' + editorFallback + '} ~/.hyper.js\'',
|
||||
''
|
||||
].join('\n')
|
||||
[ // Leading space prevents command to be stored in shell history
|
||||
' echo Attempting to open ~/.hyper.js with your \$EDITOR', // eslint-disable-line no-useless-escape
|
||||
message,
|
||||
command,
|
||||
''
|
||||
].join('\n\r')
|
||||
));
|
||||
});
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue