mirror of
https://github.com/finos/SymphonyElectron.git
synced 2025-02-25 18:55:29 -06:00
ELECTRON-607 (Change native menu bar style - Windows 10) (#451)
- Change native menu bar style - Display dialog confirmation for app relaunch - Update menu coordinates - Display dialog confirmation for app relaunch
This commit is contained in:
parent
76b995d064
commit
42021087ae
@ -8,5 +8,5 @@ let keyMirror = require('keymirror');
|
||||
*/
|
||||
module.exports = keyMirror({
|
||||
CUSTOM: null,
|
||||
NATIVE_WITH_CUSTOM: null,
|
||||
NATIVE: null,
|
||||
});
|
||||
|
@ -163,7 +163,8 @@ electron.ipcMain.on(apiName, (event, arg) => {
|
||||
break;
|
||||
case apiCmds.setLocale:
|
||||
if (typeof arg.locale === 'string') {
|
||||
eventEmitter.emit('language-changed', { language: arg.locale });
|
||||
let browserWin = electron.BrowserWindow.fromWebContents(event.sender);
|
||||
windowMgr.setLocale(browserWin, { language: arg.locale });
|
||||
}
|
||||
break;
|
||||
case apiCmds.keyPress:
|
||||
|
@ -399,13 +399,14 @@ function getTemplate(app) {
|
||||
label: i18n.getMessageFor('Title Bar Style'),
|
||||
submenu: [
|
||||
{
|
||||
label: i18n.getMessageFor('Native With Custom'),
|
||||
label: i18n.getMessageFor('Native'),
|
||||
type: 'checkbox',
|
||||
checked: titleBarStyle === titleBarStyles.NATIVE_WITH_CUSTOM,
|
||||
checked: titleBarStyle === titleBarStyles.NATIVE,
|
||||
click: function (item) {
|
||||
item.menu.items[1].checked = false;
|
||||
titleBarStyle = titleBarStyles.NATIVE_WITH_CUSTOM;
|
||||
titleBarStyle = titleBarStyles.NATIVE;
|
||||
updateConfigField('isCustomTitleBar', false);
|
||||
titleBarActions(app);
|
||||
}
|
||||
},
|
||||
{
|
||||
@ -416,6 +417,7 @@ function getTemplate(app) {
|
||||
item.menu.items[0].checked = false;
|
||||
titleBarStyle = titleBarStyles.CUSTOM;
|
||||
updateConfigField('isCustomTitleBar', true);
|
||||
titleBarActions(app);
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -479,7 +481,7 @@ function setCheckboxValues() {
|
||||
bringToFront = configData[key];
|
||||
break;
|
||||
case 'isCustomTitleBar':
|
||||
titleBarStyle = configData[key] ? titleBarStyles.CUSTOM : titleBarStyles.NATIVE_WITH_CUSTOM;
|
||||
titleBarStyle = configData[key] ? titleBarStyles.CUSTOM : titleBarStyles.NATIVE;
|
||||
break;
|
||||
case 'memoryRefresh':
|
||||
memoryRefresh = configData[key];
|
||||
@ -537,6 +539,28 @@ function getTitleBarStyle() {
|
||||
return titleBarStyle;
|
||||
}
|
||||
|
||||
/**
|
||||
* Displays an option to the user whether
|
||||
* to relaunch application
|
||||
*
|
||||
* @param app
|
||||
*/
|
||||
function titleBarActions(app) {
|
||||
const options = {
|
||||
type: 'question',
|
||||
title: i18n.getMessageFor('Relaunch Application'),
|
||||
message: i18n.getMessageFor('Updating Title bar style requires Symphony to relaunch'),
|
||||
buttons: ['Relaunch', 'Cancel']
|
||||
};
|
||||
|
||||
electron.dialog.showMessageBox(options, function (index) {
|
||||
if (index === 0) {
|
||||
app.relaunch();
|
||||
app.exit();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
getTemplate: getTemplate,
|
||||
getMinimizeOnClose: getMinimizeOnClose,
|
||||
|
@ -26,10 +26,12 @@ const memoryMonitorInterval = 1000 * 60 * 60;
|
||||
const SnackBar = require('../snackBar').SnackBar;
|
||||
const KeyCodes = {
|
||||
Esc: 27,
|
||||
Alt: 18,
|
||||
};
|
||||
|
||||
let Search;
|
||||
let SearchUtils;
|
||||
let isAltKey = false;
|
||||
|
||||
try {
|
||||
Search = remote.require('swift-search').Search;
|
||||
@ -470,7 +472,6 @@ function createAPI() {
|
||||
* the window enters full screen
|
||||
*/
|
||||
local.ipcRenderer.on('window-enter-full-screen', (event, arg) => {
|
||||
window.addEventListener('keydown', throttledKeyDown, true);
|
||||
if (snackBar && typeof arg === 'object' && arg.snackBar) {
|
||||
setTimeout(() => snackBar.showSnackBar(arg.snackBar), 500);
|
||||
}
|
||||
@ -481,7 +482,6 @@ function createAPI() {
|
||||
* the window leave full screen
|
||||
*/
|
||||
local.ipcRenderer.on('window-leave-full-screen', () => {
|
||||
window.removeEventListener('keydown', throttledKeyDown, true);
|
||||
if (snackBar) {
|
||||
snackBar.removeSnackBar();
|
||||
}
|
||||
@ -502,11 +502,23 @@ function createAPI() {
|
||||
});
|
||||
}
|
||||
|
||||
// Handle key down events
|
||||
const throttledKeyDown = throttle(1000, (event) => {
|
||||
isAltKey = event.keyCode === KeyCodes.Alt;
|
||||
if (event.keyCode === KeyCodes.Esc) {
|
||||
local.ipcRenderer.send(apiName, {
|
||||
cmd: apiCmds.keyPress,
|
||||
keyCode: KeyCodes.Esc
|
||||
keyCode: event.keyCode
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// Handle key up events
|
||||
const throttledKeyUp = throttle(1000, (event) => {
|
||||
if (isAltKey && event.keyCode === KeyCodes.Alt) {
|
||||
local.ipcRenderer.send(apiName, {
|
||||
cmd: apiCmds.keyPress,
|
||||
keyCode: event.keyCode
|
||||
});
|
||||
}
|
||||
});
|
||||
@ -514,6 +526,8 @@ function createAPI() {
|
||||
window.addEventListener('offline', updateOnlineStatus, false);
|
||||
window.addEventListener('online', updateOnlineStatus, false);
|
||||
window.addEventListener('beforeunload', sanitize, false);
|
||||
window.addEventListener('keyup', throttledKeyUp, true);
|
||||
window.addEventListener('keydown', throttledKeyDown, true);
|
||||
|
||||
updateOnlineStatus();
|
||||
}
|
||||
|
@ -44,9 +44,11 @@ let display;
|
||||
let sandboxed = false;
|
||||
let isAutoReload = false;
|
||||
let devToolsEnabled = true;
|
||||
let isCustomTitleBarEnabled = true;
|
||||
|
||||
const KeyCodes = {
|
||||
Esc: 27,
|
||||
Alt: 18,
|
||||
};
|
||||
|
||||
// Application menu
|
||||
@ -132,7 +134,7 @@ function doCreateMainWindow(initialUrl, initialBounds, isCustomTitleBar) {
|
||||
const config = readConfigFileSync();
|
||||
|
||||
// condition whether to enable custom Windows 10 title bar
|
||||
const isCustomTitleBarEnabled = typeof isCustomTitleBar === 'boolean'
|
||||
isCustomTitleBarEnabled = typeof isCustomTitleBar === 'boolean'
|
||||
&& isCustomTitleBar
|
||||
&& isWindows10();
|
||||
log.send(logLevels.INFO, `we are configuring a custom title bar for windows -> ${isCustomTitleBarEnabled}`);
|
||||
@ -240,7 +242,7 @@ function doCreateMainWindow(initialUrl, initialBounds, isCustomTitleBar) {
|
||||
|
||||
// Event needed to hide native menu bar on Windows 10 as we use custom menu bar
|
||||
mainWindow.webContents.once('did-start-loading', () => {
|
||||
if (isWindows10() && mainWindow && !mainWindow.isDestroyed()) {
|
||||
if ((isCustomTitleBarEnabled || isWindows10()) && mainWindow && !mainWindow.isDestroyed()) {
|
||||
mainWindow.setMenuBarVisibility(false);
|
||||
}
|
||||
});
|
||||
@ -256,7 +258,7 @@ function doCreateMainWindow(initialUrl, initialBounds, isCustomTitleBar) {
|
||||
mainWindow.webContents.send('on-page-load');
|
||||
// initializes and applies styles required for snack bar
|
||||
mainWindow.webContents.insertCSS(fs.readFileSync(path.join(__dirname, '/snackBar/style.css'), 'utf8').toString());
|
||||
if (isCustomTitleBarEnabled || isWindows10()) {
|
||||
if (isCustomTitleBarEnabled) {
|
||||
mainWindow.webContents.insertCSS(fs.readFileSync(path.join(__dirname, '/windowsTitleBar/style.css'), 'utf8').toString());
|
||||
// This is required to initiate Windows title bar only after insertCSS
|
||||
const titleBarStyle = getTitleBarStyle();
|
||||
@ -320,7 +322,7 @@ function doCreateMainWindow(initialUrl, initialBounds, isCustomTitleBar) {
|
||||
addWindowKey(key, mainWindow);
|
||||
mainWindow.loadURL(url);
|
||||
|
||||
rebuildMenu(lang);
|
||||
setLocale(mainWindow, lang);
|
||||
|
||||
mainWindow.on('close', function (e) {
|
||||
if (willQuitApp) {
|
||||
@ -970,19 +972,34 @@ eventEmitter.on('notificationSettings', (notificationSettings) => {
|
||||
display = notificationSettings.display;
|
||||
});
|
||||
|
||||
eventEmitter.on('language-changed', (opts) => {
|
||||
/**
|
||||
* Sets the locale settings
|
||||
*
|
||||
* @param browserWindow {Electron.BrowserWindow}
|
||||
* @param opts {Object}
|
||||
* @param opts.language {String} - locale string ex: en-US
|
||||
*/
|
||||
function setLocale(browserWindow, opts) {
|
||||
const language = opts && opts.language || app.getLocale();
|
||||
log.send(logLevels.INFO, `language changed to ${language}. Updating menu and user config`);
|
||||
rebuildMenu(language);
|
||||
updateConfigField('locale', language);
|
||||
});
|
||||
|
||||
function rebuildMenu(language) {
|
||||
setLanguage(language);
|
||||
menu = electron.Menu.buildFromTemplate(getTemplate(app));
|
||||
electron.Menu.setApplicationMenu(menu);
|
||||
if (browserWindow && isMainWindow(browserWindow)) {
|
||||
menu = electron.Menu.buildFromTemplate(getTemplate(app));
|
||||
electron.Menu.setApplicationMenu(menu);
|
||||
|
||||
if (isWindows10()) {
|
||||
browserWindow.setMenuBarVisibility(false);
|
||||
}
|
||||
}
|
||||
|
||||
updateConfigField('locale', language);
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets language for i18n
|
||||
* @param language {String} - locale string ex: en-US
|
||||
*/
|
||||
function setLanguage(language) {
|
||||
i18n.setLanguage(language);
|
||||
}
|
||||
@ -1112,6 +1129,11 @@ function handleKeyPress(keyCode) {
|
||||
}
|
||||
break;
|
||||
}
|
||||
case KeyCodes.Alt:
|
||||
if (isWindows10() && !isCustomTitleBarEnabled) {
|
||||
popupMenu();
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@ -1138,6 +1160,18 @@ function cleanUpChildWindows() {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Method that popup the menu on top of the native title bar
|
||||
* whenever Alt key is pressed
|
||||
*/
|
||||
function popupMenu() {
|
||||
const focusedWindow = BrowserWindow.getFocusedWindow();
|
||||
if (mainWindow && !mainWindow.isDestroyed() && isMainWindow(focusedWindow)) {
|
||||
const popupOpts = { browserWin: mainWindow, x: 10, y: -20 };
|
||||
getMenu().popup(popupOpts);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
module.exports = {
|
||||
createMainWindow: createMainWindow,
|
||||
@ -1153,4 +1187,5 @@ module.exports = {
|
||||
setIsAutoReload: setIsAutoReload,
|
||||
handleKeyPress: handleKeyPress,
|
||||
cleanUpChildWindows: cleanUpChildWindows,
|
||||
setLocale: setLocale,
|
||||
};
|
||||
|
@ -54,7 +54,7 @@ class TitleBar {
|
||||
TitleBar.setTitleBarTitle();
|
||||
TitleBar.addWindowBorders();
|
||||
break;
|
||||
case titleBarStyles.NATIVE_WITH_CUSTOM:
|
||||
case titleBarStyles.NATIVE:
|
||||
TitleBar.hideTitleContainer();
|
||||
break;
|
||||
default:
|
||||
@ -104,7 +104,7 @@ class TitleBar {
|
||||
|
||||
/**
|
||||
* Method that hides the title container
|
||||
* if the title bar style is NATIVE_WITH_CUSTOM
|
||||
* if the title bar style is NATIVE
|
||||
*/
|
||||
static hideTitleContainer() {
|
||||
const titleContainer = document.getElementById('title-container');
|
||||
|
@ -15,21 +15,32 @@
|
||||
},
|
||||
"Bring All to Front": "Bring All to Front",
|
||||
"Bring to Front on Notifications": "Bring to Front on Notifications",
|
||||
"Flash Notification in Taskbar": "Flash Notification in Taskbar",
|
||||
"Title Bar Style": "Title Bar Style",
|
||||
"Native With Custom": "Native With Custom",
|
||||
"Custom": "Custom",
|
||||
"Certificate Error": "Certificate Error",
|
||||
"Close": "Close",
|
||||
"Copy": "Copy",
|
||||
"Custom": "Custom",
|
||||
"Cut": "Cut",
|
||||
"Delete": "Delete",
|
||||
"Dev Tools disabled": "Dev Tools disabled",
|
||||
"Dev Tools has been disabled. Please contact your system administrator": "Dev Tools has been disabled. Please contact your system administrator",
|
||||
"Edit": "Edit",
|
||||
"Error loading configuration": "Error loading configuration",
|
||||
"Error loading URL": "Error loading URL",
|
||||
"Error loading window": "Error loading window",
|
||||
"Error setting AutoLaunch configuration": "Error setting AutoLaunch configuration",
|
||||
"Failed!": "Failed!",
|
||||
"Flash Notification in Taskbar": "Flash Notification in Taskbar",
|
||||
"Help": "Help",
|
||||
"Hide Others": "Hide Others",
|
||||
"Hide Symphony": "Hide Symphony",
|
||||
"Learn More": "Learn More",
|
||||
"Loading Error": "Loading Error",
|
||||
"Minimize": "Minimize",
|
||||
"Minimize on Close": "Minimize on Close",
|
||||
"Native": "Native",
|
||||
"No crashes available to share": "No crashes available to share",
|
||||
"No logs are available to share": "No logs are available to share",
|
||||
"Not Allowed": "Not Allowed",
|
||||
"NotificationSettings": {
|
||||
"Bottom Left": "Bottom Left",
|
||||
"Bottom Right": "Bottom Right",
|
||||
@ -43,12 +54,19 @@
|
||||
"Top Left": "Top Left",
|
||||
"Top Right": "Top Right"
|
||||
},
|
||||
"Oops! Looks like we have had a crash.": "Oops! Looks like we have had a crash.",
|
||||
"Oops! Looks like we have had a crash. Please reload or close this window.": "Oops! Looks like we have had a crash. Please reload or close this window.",
|
||||
"Paste": "Paste",
|
||||
"Paste and Match Style": "Paste and Match Style",
|
||||
"Permission Denied": "Permission Denied",
|
||||
"Please contact your admin for help": "Please contact your admin for help",
|
||||
"please contact your administrator for more details": "please contact your administrator for more details",
|
||||
"Quit Symphony": "Quit Symphony",
|
||||
"Redo": "Redo",
|
||||
"Refresh app when idle": "Refresh app when idle",
|
||||
"Relaunch Application": "Relaunch Application",
|
||||
"Reload": "Reload",
|
||||
"Renderer Process Crashed": "Renderer Process Crashed",
|
||||
"ScreenPicker": {
|
||||
"Applications": "Applications",
|
||||
"Cancel": "Cancel",
|
||||
@ -61,56 +79,40 @@
|
||||
"Share": "Share"
|
||||
},
|
||||
"ScreenSnippet": {
|
||||
"Pen": "Pen",
|
||||
"Done": "Done",
|
||||
"Snipping Tool": "Snipping Tool",
|
||||
"Erase": "Erase",
|
||||
"Highlight": "Highlight"
|
||||
"Highlight": "Highlight",
|
||||
"Pen": "Pen",
|
||||
"Snipping Tool": "Snipping Tool"
|
||||
},
|
||||
"Select All": "Select All",
|
||||
"Services": "Services",
|
||||
"Show All": "Show All",
|
||||
"Show crash dump in Explorer": "Show crash dump in Explorer",
|
||||
"Show crash dump in Finder": "Show crash dump in Finder",
|
||||
"Show Logs in Finder": "Show Logs in Finder",
|
||||
"Show Logs in Explorer": "Show Logs in Explorer",
|
||||
"Show Logs in Finder": "Show Logs in Finder",
|
||||
"SnackBar": {
|
||||
"Press ": "Press ",
|
||||
" to exit full screen": " to exit full screen",
|
||||
"esc": "esc",
|
||||
" to exit full screen": " to exit full screen"
|
||||
"Press ": "Press "
|
||||
},
|
||||
"Sorry, you are not allowed to access this website": "Sorry, you are not allowed to access this website",
|
||||
"Speech": "Speech",
|
||||
"Start Speaking": "Start Speaking",
|
||||
"Stop Speaking": "Stop Speaking",
|
||||
"Symphony Help": "Symphony Help",
|
||||
"Title Bar Style": "Title Bar Style",
|
||||
"Toggle Full Screen": "Toggle Full Screen",
|
||||
"Troubleshooting": "Troubleshooting",
|
||||
"Unable to generate crash reports due to ": "Unable to generate crash reports due to ",
|
||||
"Unable to generate logs due to ": "Unable to generate logs due to ",
|
||||
"Undo": "Undo",
|
||||
"Updating Title bar style requires Symphony to relaunch": "Updating Title bar style requires Symphony to relaunch",
|
||||
"View": "View",
|
||||
"Window": "Window",
|
||||
"Your administrator has disabled": "Your administrator has disabled",
|
||||
"Zoom": "Zoom",
|
||||
"Zoom In": "Zoom In",
|
||||
"Zoom Out": "Zoom Out",
|
||||
"Renderer Process Crashed": "Renderer Process Crashed",
|
||||
"Oops! Looks like we have had a crash.": "Oops! Looks like we have had a crash.",
|
||||
"Failed!": "Failed!",
|
||||
"No logs are available to share": "No logs are available to share",
|
||||
"Unable to generate logs due to ": "Unable to generate logs due to ",
|
||||
"Show crash dump in Explorer": "Show crash dump in Explorer",
|
||||
"No crashes available to share": "No crashes available to share",
|
||||
"Unable to generate crash reports due to ": "Unable to generate crash reports due to ",
|
||||
"Error setting AutoLaunch configuration": "Error setting AutoLaunch configuration",
|
||||
"Error loading configuration": "Error loading configuration",
|
||||
"Certificate Error": "Certificate Error",
|
||||
"Error loading URL": "Error loading URL",
|
||||
"Error loading window": "Error loading window",
|
||||
"Loading Error": "Loading Error",
|
||||
"Oops! Looks like we have had a crash. Please reload or close this window.": "Oops! Looks like we have had a crash. Please reload or close this window.",
|
||||
"Not Allowed": "Not Allowed",
|
||||
"Sorry, you are not allowed to access this website": "Sorry, you are not allowed to access this website",
|
||||
"please contact your administrator for more details": "please contact your administrator for more details",
|
||||
"Your administrator has disabled": "Your administrator has disabled",
|
||||
"Please contact your admin for help": "Please contact your admin for help",
|
||||
"Permission Denied": "Permission Denied",
|
||||
"Dev Tools disabled": "Dev Tools disabled",
|
||||
"Dev Tools has been disabled. Please contact your system administrator": "Dev Tools has been disabled. Please contact your system administrator"
|
||||
"Zoom Out": "Zoom Out"
|
||||
}
|
@ -15,21 +15,30 @@
|
||||
},
|
||||
"Bring All to Front": "Bring All to Front",
|
||||
"Bring to Front on Notifications": "Bring to Front on Notifications",
|
||||
"Flash Notification in Taskbar": "Flash Notification in Taskbar",
|
||||
"Title Bar Style": "Title Bar Style",
|
||||
"Native With Custom": "Native With Custom",
|
||||
"Custom": "Custom",
|
||||
"Certificate Error": "Certificate Error",
|
||||
"Close": "Close",
|
||||
"Copy": "Copy",
|
||||
"Custom": "Custom",
|
||||
"Cut": "Cut",
|
||||
"Delete": "Delete",
|
||||
"Edit": "Edit",
|
||||
"Error loading configuration": "Error loading configuration",
|
||||
"Error loading URL": "Error loading URL",
|
||||
"Error loading window": "Error loading window",
|
||||
"Error setting AutoLaunch configuration": "Error setting AutoLaunch configuration",
|
||||
"Failed!": "Failed!",
|
||||
"Flash Notification in Taskbar": "Flash Notification in Taskbar",
|
||||
"Help": "Help",
|
||||
"Hide Others": "Hide Others",
|
||||
"Hide Symphony": "Hide Symphony",
|
||||
"Learn More": "Learn More",
|
||||
"Loading Error": "Loading Error",
|
||||
"Minimize": "Minimize",
|
||||
"Minimize on Close": "Minimize on Close",
|
||||
"Native": "Native",
|
||||
"No crashes available to share": "No crashes available to share",
|
||||
"No logs are available to share": "No logs are available to share",
|
||||
"Not Allowed": "Not Allowed",
|
||||
"NotificationSettings": {
|
||||
"Bottom Left": "Bottom Left",
|
||||
"Bottom Right": "Bottom Right",
|
||||
@ -43,12 +52,19 @@
|
||||
"Top Left": "Top Left",
|
||||
"Top Right": "Top Right"
|
||||
},
|
||||
"Oops! Looks like we have had a crash.": "Oops! Looks like we have had a crash.",
|
||||
"Oops! Looks like we have had a crash. Please reload or close this window.": "Oops! Looks like we have had a crash. Please reload or close this window.",
|
||||
"Paste": "Paste",
|
||||
"Paste and Match Style": "Paste and Match Style",
|
||||
"Permission Denied": "Permission Denied",
|
||||
"Please contact your admin for help": "Please contact your admin for help",
|
||||
"please contact your administrator for more details": "please contact your administrator for more details",
|
||||
"Quit Symphony": "Quit Symphony",
|
||||
"Redo": "Redo",
|
||||
"Refresh app when idle": "Refresh app when idle",
|
||||
"Relaunch Application": "Relaunch Application",
|
||||
"Reload": "Reload",
|
||||
"Renderer Process Crashed": "Renderer Process Crashed",
|
||||
"ScreenPicker": {
|
||||
"Applications": "Applications",
|
||||
"Cancel": "Cancel",
|
||||
@ -61,54 +77,40 @@
|
||||
"Share": "Share"
|
||||
},
|
||||
"ScreenSnippet": {
|
||||
"Pen": "Pen",
|
||||
"Done": "Done",
|
||||
"Snipping Tool": "Snipping Tool",
|
||||
"Erase": "Erase",
|
||||
"Highlight": "Highlight"
|
||||
"Highlight": "Highlight",
|
||||
"Pen": "Pen",
|
||||
"Snipping Tool": "Snipping Tool"
|
||||
},
|
||||
"Select All": "Select All",
|
||||
"Services": "Services",
|
||||
"Show All": "Show All",
|
||||
"Show crash dump in Explorer": "Show crash dump in Explorer",
|
||||
"Show crash dump in Finder": "Show crash dump in Finder",
|
||||
"Show Logs in Finder": "Show Logs in Finder",
|
||||
"Show Logs in Explorer": "Show Logs in Explorer",
|
||||
"Show Logs in Finder": "Show Logs in Finder",
|
||||
"SnackBar": {
|
||||
"Press ": "Press ",
|
||||
" to exit full screen": " to exit full screen",
|
||||
"esc": "esc",
|
||||
" to exit full screen": " to exit full screen"
|
||||
"Press ": "Press "
|
||||
},
|
||||
"Sorry, you are not allowed to access this website": "Sorry, you are not allowed to access this website",
|
||||
"Speech": "Speech",
|
||||
"Start Speaking": "Start Speaking",
|
||||
"Stop Speaking": "Stop Speaking",
|
||||
"Symphony Help": "Symphony Help",
|
||||
"Title Bar Style": "Title Bar Style",
|
||||
"Toggle Full Screen": "Toggle Full Screen",
|
||||
"Troubleshooting": "Troubleshooting",
|
||||
"Unable to generate crash reports due to ": "Unable to generate crash reports due to ",
|
||||
"Unable to generate logs due to ": "Unable to generate logs due to ",
|
||||
"Undo": "Undo",
|
||||
"Updating Title bar style requires Symphony to relaunch": "Updating Title bar style requires Symphony to relaunch",
|
||||
"View": "View",
|
||||
"Window": "Window",
|
||||
"Your administrator has disabled": "Your administrator has disabled",
|
||||
"Zoom": "Zoom",
|
||||
"Zoom In": "Zoom In",
|
||||
"Zoom Out": "Zoom Out",
|
||||
"Renderer Process Crashed": "Renderer Process Crashed",
|
||||
"Oops! Looks like we have had a crash.": "Oops! Looks like we have had a crash.",
|
||||
"Failed!": "Failed!",
|
||||
"No logs are available to share": "No logs are available to share",
|
||||
"Unable to generate logs due to ": "Unable to generate logs due to ",
|
||||
"Show crash dump in Explorer": "Show crash dump in Explorer",
|
||||
"No crashes available to share": "No crashes available to share",
|
||||
"Unable to generate crash reports due to ": "Unable to generate crash reports due to ",
|
||||
"Error setting AutoLaunch configuration": "Error setting AutoLaunch configuration",
|
||||
"Error loading configuration": "Error loading configuration",
|
||||
"Certificate Error": "Certificate Error",
|
||||
"Error loading URL": "Error loading URL",
|
||||
"Error loading window": "Error loading window",
|
||||
"Loading Error": "Loading Error",
|
||||
"Oops! Looks like we have had a crash. Please reload or close this window.": "Oops! Looks like we have had a crash. Please reload or close this window.",
|
||||
"Not Allowed": "Not Allowed",
|
||||
"Sorry, you are not allowed to access this website": "Sorry, you are not allowed to access this website",
|
||||
"please contact your administrator for more details": "please contact your administrator for more details",
|
||||
"Your administrator has disabled": "Your administrator has disabled",
|
||||
"Please contact your admin for help": "Please contact your admin for help",
|
||||
"Permission Denied": "Permission Denied"
|
||||
"Zoom Out": "Zoom Out"
|
||||
}
|
@ -15,21 +15,32 @@
|
||||
},
|
||||
"Bring All to Front": "すべて前面に表示",
|
||||
"Bring to Front on Notifications": "通知時に前面に表示",
|
||||
"Flash Notification in Taskbar": "タスクバーの通知を点滅",
|
||||
"Title Bar Style": "タイトルバーのスタイル",
|
||||
"Native With Custom": "Nativeでカスタムを使用",
|
||||
"Custom": "カスタム",
|
||||
"Certificate Error": "証明書のエラー",
|
||||
"Close": "閉じる",
|
||||
"Copy": "コピー",
|
||||
"Custom": "カスタム",
|
||||
"Cut": "切り取り",
|
||||
"Delete": "削除",
|
||||
"Dev Tools disabled": "開発ツールを無効にする",
|
||||
"Dev Tools has been disabled. Please contact your system administrator": "Dev Toolsが無効になっています。システム管理者に連絡してください",
|
||||
"Edit": "編集",
|
||||
"Error loading configuration": "構成の読み込みエラー",
|
||||
"Error loading URL": "URLの読み込みエラー",
|
||||
"Error loading window": "ウィンドウを読み込みエラー",
|
||||
"Error setting AutoLaunch configuration": "自動起動の構成の設定エラー",
|
||||
"Failed!": "問題が起きました!",
|
||||
"Flash Notification in Taskbar": "タスクバーの通知を点滅",
|
||||
"Help": "ヘルプ",
|
||||
"Hide Others": "他を隠す",
|
||||
"Hide Symphony": "Symphonyを隠す",
|
||||
"Learn More": "詳細",
|
||||
"Loading Error": "読み込みエラー",
|
||||
"Minimize": "最小化",
|
||||
"Minimize on Close": "閉じるで最小化",
|
||||
"Native": "Native",
|
||||
"No crashes available to share": "共有できるクラッシュはありません",
|
||||
"No logs are available to share": "共有できるログはありません",
|
||||
"Not Allowed": "許可されていませ。",
|
||||
"NotificationSettings": {
|
||||
"Bottom Left": "左下",
|
||||
"Bottom Right": "右下",
|
||||
@ -43,12 +54,19 @@
|
||||
"Top Left": "左上",
|
||||
"Top Right": "右上"
|
||||
},
|
||||
"Oops! Looks like we have had a crash.": "おっと!クラッシュしたようです。",
|
||||
"Oops! Looks like we have had a crash. Please reload or close this window.": "おっと!クラッシュしたようです。このウィンドウを再度読み込むか閉じてください。",
|
||||
"Paste": "貼り付け",
|
||||
"Paste and Match Style": "貼り付けでスタイルを合わせる",
|
||||
"Permission Denied": "アクセス許可が拒否されています",
|
||||
"Please contact your admin for help": "不明な点がある場合は、管理者にお問い合わせください",
|
||||
"please contact your administrator for more details": "詳細は、管理者にお問い合わせください",
|
||||
"Quit Symphony": "Symphonyを終了",
|
||||
"Redo": "やり直し",
|
||||
"Refresh app when idle": "アイドル時にアプリを再表示",
|
||||
"Relaunch Application": "アプリケーションの再起動",
|
||||
"Reload": "再読み込み",
|
||||
"Renderer Process Crashed": "レンダラープロセスがクラッシュしました",
|
||||
"ScreenPicker": {
|
||||
"Applications": "アプリケーション",
|
||||
"Cancel": "キャンセル",
|
||||
@ -61,56 +79,40 @@
|
||||
"Share": "共有"
|
||||
},
|
||||
"ScreenSnippet": {
|
||||
"Pen": "ペン",
|
||||
"Done": "完了",
|
||||
"Snipping Tool": "切り取りツール",
|
||||
"Erase": "消去",
|
||||
"Highlight": "強調"
|
||||
"Highlight": "強調",
|
||||
"Pen": "ペン",
|
||||
"Snipping Tool": "切り取りツール"
|
||||
},
|
||||
"Select All": "すべてを選択",
|
||||
"Services": "サービス",
|
||||
"Show All": "すべてを表示",
|
||||
"Show crash dump in Explorer": "Explorerにクラッシュダンプを表示",
|
||||
"Show crash dump in Finder": "ファインダーにクラッシュダンプを表示",
|
||||
"Show Logs in Finder": "ファインダーにログを表示",
|
||||
"Show Logs in Explorer": "Explorerにログを表示",
|
||||
"Show Logs in Finder": "ファインダーにログを表示",
|
||||
"SnackBar": {
|
||||
"Press ": "全画面表示を終了するには ",
|
||||
" to exit full screen": " を押します",
|
||||
"esc": "esc",
|
||||
" to exit full screen": " を押します"
|
||||
"Press ": "全画面表示を終了するには "
|
||||
},
|
||||
"Sorry, you are not allowed to access this website": "申し訳ありませんが、このウェブサイトへのアクセスは許可されていません",
|
||||
"Speech": "スピーチ",
|
||||
"Start Speaking": "スピーチを開始",
|
||||
"Stop Speaking": "スピーチを終了",
|
||||
"Symphony Help": "Symphonyのヘルプ",
|
||||
"Title Bar Style": "タイトルバーのスタイル",
|
||||
"Toggle Full Screen": "画面表示を切り替え",
|
||||
"Troubleshooting": "トラブルシューティング",
|
||||
"Unable to generate crash reports due to ": "クラッシュレポートを生成できません。理由: ",
|
||||
"Unable to generate logs due to ": "ログを生成できません。理由:",
|
||||
"Undo": "元に戻す",
|
||||
"Updating Title bar style requires Symphony to relaunch": "タイトルバーのスタイルを更新するには、Symphonyが再起動する必要があります",
|
||||
"View": "ビュー",
|
||||
"Window": "ウインドウ",
|
||||
"Your administrator has disabled": "管理者によて無効にされています",
|
||||
"Zoom": "ズーム",
|
||||
"Zoom In": "ズームイン",
|
||||
"Zoom Out": "ズームアウト",
|
||||
"Renderer Process Crashed": "レンダラープロセスがクラッシュしました",
|
||||
"Oops! Looks like we have had a crash.": "おっと!クラッシュしたようです。",
|
||||
"Failed!": "問題が起きました!",
|
||||
"No logs are available to share": "共有できるログはありません",
|
||||
"Unable to generate logs due to ": "ログを生成できません。理由:",
|
||||
"Show crash dump in Explorer": "Explorerにクラッシュダンプを表示",
|
||||
"No crashes available to share": "共有できるクラッシュはありません",
|
||||
"Unable to generate crash reports due to ": "クラッシュレポートを生成できません。理由: ",
|
||||
"Error setting AutoLaunch configuration": "自動起動の構成の設定エラー",
|
||||
"Error loading configuration": "構成の読み込みエラー",
|
||||
"Certificate Error": "証明書のエラー",
|
||||
"Error loading URL": "URLの読み込みエラー",
|
||||
"Error loading window": "ウィンドウを読み込みエラー",
|
||||
"Loading Error": "読み込みエラー",
|
||||
"Oops! Looks like we have had a crash. Please reload or close this window.": "おっと!クラッシュしたようです。このウィンドウを再度読み込むか閉じてください。",
|
||||
"Not Allowed": "許可されていませ。",
|
||||
"Sorry, you are not allowed to access this website": "申し訳ありませんが、このウェブサイトへのアクセスは許可されていません",
|
||||
"please contact your administrator for more details": "詳細は、管理者にお問い合わせください",
|
||||
"Your administrator has disabled": "管理者によて無効にされています",
|
||||
"Please contact your admin for help": "不明な点がある場合は、管理者にお問い合わせください",
|
||||
"Permission Denied": "アクセス許可が拒否されています",
|
||||
"Dev Tools disabled": "開発ツールを無効にする",
|
||||
"Dev Tools has been disabled. Please contact your system administrator": "Dev Toolsが無効になっています。システム管理者に連絡してください"
|
||||
"Zoom Out": "ズームアウト"
|
||||
}
|
@ -15,21 +15,30 @@
|
||||
},
|
||||
"Bring All to Front": "すべて前面に表示",
|
||||
"Bring to Front on Notifications": "通知時に前面に表示",
|
||||
"Flash Notification in Taskbar": "タスクバーの通知を点滅",
|
||||
"Title Bar Style": "タイトルバーのスタイル",
|
||||
"Native With Custom": "Nativeでカスタムを使用",
|
||||
"Custom": "カスタム",
|
||||
"Certificate Error": "証明書のエラー",
|
||||
"Close": "閉じる",
|
||||
"Copy": "コピー",
|
||||
"Custom": "カスタム",
|
||||
"Cut": "切り取り",
|
||||
"Delete": "削除",
|
||||
"Edit": "編集",
|
||||
"Error loading configuration": "構成の読み込みエラー",
|
||||
"Error loading URL": "URLの読み込みエラー",
|
||||
"Error loading window": "ウィンドウを読み込みエラー",
|
||||
"Error setting AutoLaunch configuration": "自動起動の構成の設定エラー",
|
||||
"Failed!": "問題が起きました!",
|
||||
"Flash Notification in Taskbar": "タスクバーの通知を点滅",
|
||||
"Help": "ヘルプ",
|
||||
"Hide Others": "他を隠す",
|
||||
"Hide Symphony": "Symphonyを隠す",
|
||||
"Learn More": "詳細",
|
||||
"Loading Error": "読み込みエラー",
|
||||
"Minimize": "最小化",
|
||||
"Minimize on Close": "閉じるで最小化",
|
||||
"Native": "Native",
|
||||
"No crashes available to share": "共有できるクラッシュはありません",
|
||||
"No logs are available to share": "共有できるログはありません",
|
||||
"Not Allowed": "許可されていませ。",
|
||||
"NotificationSettings": {
|
||||
"Bottom Left": "左下",
|
||||
"Bottom Right": "右下",
|
||||
@ -43,12 +52,19 @@
|
||||
"Top Left": "左上",
|
||||
"Top Right": "右上"
|
||||
},
|
||||
"Oops! Looks like we have had a crash.": "おっと!クラッシュしたようです。",
|
||||
"Oops! Looks like we have had a crash. Please reload or close this window.": "おっと!クラッシュしたようです。このウィンドウを再度読み込むか閉じてください。",
|
||||
"Paste": "貼り付け",
|
||||
"Paste and Match Style": "貼り付けでスタイルを合わせる",
|
||||
"Permission Denied": "アクセス許可が拒否されています",
|
||||
"Please contact your admin for help": "不明な点がある場合は、管理者にお問い合わせください",
|
||||
"please contact your administrator for more details": "詳細は、管理者にお問い合わせください",
|
||||
"Quit Symphony": "Symphonyを終了",
|
||||
"Redo": "やり直し",
|
||||
"Refresh app when idle": "アイドル時にアプリを再表示",
|
||||
"Relaunch Application": "アプリケーションの再起動",
|
||||
"Reload": "再読み込み",
|
||||
"Renderer Process Crashed": "レンダラープロセスがクラッシュしました",
|
||||
"ScreenPicker": {
|
||||
"Applications": "アプリケーション",
|
||||
"Cancel": "キャンセル",
|
||||
@ -61,54 +77,40 @@
|
||||
"Share": "共有"
|
||||
},
|
||||
"ScreenSnippet": {
|
||||
"Pen": "ペン",
|
||||
"Done": "完了",
|
||||
"Snipping Tool": "切り取りツール",
|
||||
"Erase": "消去",
|
||||
"Highlight": "強調"
|
||||
"Highlight": "強調",
|
||||
"Pen": "ペン",
|
||||
"Snipping Tool": "切り取りツール"
|
||||
},
|
||||
"Select All": "すべてを選択",
|
||||
"Services": "サービス",
|
||||
"Show All": "すべてを表示",
|
||||
"Show crash dump in Explorer": "Explorerにクラッシュダンプを表示",
|
||||
"Show crash dump in Finder": "ファインダーにクラッシュダンプを表示",
|
||||
"Show Logs in Finder": "ファインダーにログを表示",
|
||||
"Show Logs in Explorer": "Explorerにログを表示",
|
||||
"Show Logs in Finder": "ファインダーにログを表示",
|
||||
"SnackBar": {
|
||||
"Press ": "全画面表示を終了するには ",
|
||||
" to exit full screen": " を押します",
|
||||
"esc": "esc",
|
||||
" to exit full screen": " を押します"
|
||||
"Press ": "全画面表示を終了するには "
|
||||
},
|
||||
"Sorry, you are not allowed to access this website": "申し訳ありませんが、このウェブサイトへのアクセスは許可されていません",
|
||||
"Speech": "スピーチ",
|
||||
"Start Speaking": "スピーチを開始",
|
||||
"Stop Speaking": "スピーチを終了",
|
||||
"Symphony Help": "Symphonyのヘルプ",
|
||||
"Title Bar Style": "タイトルバーのスタイル",
|
||||
"Toggle Full Screen": "画面表示を切り替え",
|
||||
"Troubleshooting": "トラブルシューティング",
|
||||
"Unable to generate crash reports due to ": "クラッシュレポートを生成できません。理由: ",
|
||||
"Unable to generate logs due to ": "ログを生成できません。理由:",
|
||||
"Undo": "元に戻す",
|
||||
"Updating Title bar style requires Symphony to relaunch": "タイトルバーのスタイルを更新するには、Symphonyが再起動する必要があります",
|
||||
"View": "ビュー",
|
||||
"Window": "ウインドウ",
|
||||
"Your administrator has disabled": "管理者によて無効にされています",
|
||||
"Zoom": "ズーム",
|
||||
"Zoom In": "ズームイン",
|
||||
"Zoom Out": "ズームアウト",
|
||||
"Renderer Process Crashed": "レンダラープロセスがクラッシュしました",
|
||||
"Oops! Looks like we have had a crash.": "おっと!クラッシュしたようです。",
|
||||
"Failed!": "問題が起きました!",
|
||||
"No logs are available to share": "共有できるログはありません",
|
||||
"Unable to generate logs due to ": "ログを生成できません。理由:",
|
||||
"Show crash dump in Explorer": "Explorerにクラッシュダンプを表示",
|
||||
"No crashes available to share": "共有できるクラッシュはありません",
|
||||
"Unable to generate crash reports due to ": "クラッシュレポートを生成できません。理由: ",
|
||||
"Error setting AutoLaunch configuration": "自動起動の構成の設定エラー",
|
||||
"Error loading configuration": "構成の読み込みエラー",
|
||||
"Certificate Error": "証明書のエラー",
|
||||
"Error loading URL": "URLの読み込みエラー",
|
||||
"Error loading window": "ウィンドウを読み込みエラー",
|
||||
"Loading Error": "読み込みエラー",
|
||||
"Oops! Looks like we have had a crash. Please reload or close this window.": "おっと!クラッシュしたようです。このウィンドウを再度読み込むか閉じてください。",
|
||||
"Not Allowed": "許可されていませ。",
|
||||
"Sorry, you are not allowed to access this website": "申し訳ありませんが、このウェブサイトへのアクセスは許可されていません",
|
||||
"please contact your administrator for more details": "詳細は、管理者にお問い合わせください",
|
||||
"Your administrator has disabled": "管理者によて無効にされています",
|
||||
"Please contact your admin for help": "不明な点がある場合は、管理者にお問い合わせください",
|
||||
"Permission Denied": "アクセス許可が拒否されています"
|
||||
"Zoom Out": "ズームアウト"
|
||||
}
|
Loading…
Reference in New Issue
Block a user