瀏覽代碼

Add toggle dev tools menu item in the config menu.

oldj 4 年之前
父節點
當前提交
0e401bb1b3

+ 1 - 0
src/common/events.ts

@@ -27,6 +27,7 @@ export default {
   show_sudo_password_input: 'show_sudo_password_input',
   system_hosts_updated: 'system_hosts_updated',
   toggle_comment: 'toggle_comment',
+  toggle_developer_tools: 'toggle_developer_tools',
   toggle_item: 'toggle_item',
   toggle_left_pannel: 'toggle_left_pannel',
   tray_list_updated: 'tray:list_updated',

+ 11 - 0
src/main/actions/cmd/toggleDevTools.ts

@@ -0,0 +1,11 @@
+/**
+ * @author: oldj
+ * @homepage: https://oldj.net
+ */
+
+export default () => {
+  let win = global.main_win
+  if (!win) return
+
+  win.webContents.toggleDevTools()
+}

+ 1 - 0
src/main/actions/index.ts

@@ -39,6 +39,7 @@ export { default as cmdGetHistoryList } from './cmd/getHistoryList'
 export { default as cmdDeleteHistory } from './cmd/deleteHistory'
 export { default as cmdClearHistory } from './cmd/clearHistory'
 export { default as cmdFocusMainWindow } from './cmd/focusMainWindow'
+export { default as cmdToggleDevTools } from './cmd/toggleDevTools'
 
 export { default as openUrl } from './openUrl'
 export { default as showItemInFolder } from './showItemInFolder'

+ 0 - 1
src/main/ui/menu.ts

@@ -4,7 +4,6 @@
  */
 
 import { findShow } from '@main/actions'
-import isDev from '@main/libs/isDev'
 import events from '@root/common/events'
 import { BrowserWindow, Menu, MenuItem, MenuItemConstructorOptions, shell } from 'electron'
 import { I18N, LocaleName } from '@root/common/i18n'

+ 14 - 12
src/renderer/components/Pref/General.tsx

@@ -9,8 +9,8 @@ import {
   Box,
   Checkbox,
   FormControl,
-  FormLabel,
   FormHelperText,
+  FormLabel,
   HStack,
   Radio,
   RadioGroup,
@@ -18,10 +18,10 @@ import {
   VStack,
 } from '@chakra-ui/react'
 import { agent } from '@renderer/core/agent'
+import { http_api_port } from '@root/common/constants'
 import { ConfigsType, ThemeType } from '@root/common/default_configs'
 import { LocaleName } from '@root/common/i18n'
 import React from 'react'
-import { http_api_port } from '@root/common/constants'
 
 interface IProps {
   data: ConfigsType;
@@ -113,16 +113,18 @@ const General = (props: IProps) => {
         </HStack>
       </FormControl>
 
-      <FormControl>
-        <HStack>
-          <Checkbox
-            isChecked={data.hide_dock_icon}
-            onChange={e => onChange({ hide_dock_icon: e.target.checked })}
-          >
-            {lang.hide_dock_icon}
-          </Checkbox>
-        </HStack>
-      </FormControl>
+      {agent.platform === 'darwin' ? (
+        <FormControl>
+          <HStack>
+            <Checkbox
+              isChecked={data.hide_dock_icon}
+              onChange={e => onChange({ hide_dock_icon: e.target.checked })}
+            >
+              {lang.hide_dock_icon}
+            </Checkbox>
+          </HStack>
+        </FormControl>
+      ) : null}
 
       <FormControl>
         <VStack align="left">

+ 10 - 0
src/renderer/components/TopBar/ConfigMenu.tsx

@@ -21,6 +21,7 @@ import {
   BiMessageDetail,
   BiRefresh,
   BiSliderAlt,
+  BiWrench,
 } from 'react-icons/bi'
 import styles from './ConfigMenu.less'
 
@@ -155,6 +156,15 @@ const ConfigMenu = (props: Props) => {
           >
             {lang.preferences}
           </MenuItem>
+          <MenuItem
+            icon={<BiWrench/>}
+            onClick={() => actions.cmdToggleDevTools()}
+          >
+            {lang.toggle_developer_tools}
+          </MenuItem>
+
+          <MenuDivider/>
+
           <MenuItem
             icon={<BiExit/>}
             onClick={() => actions.quit()}