當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript electron.remote.BrowserWindow類代碼示例

本文整理匯總了TypeScript中electron.remote.BrowserWindow的典型用法代碼示例。如果您正苦於以下問題:TypeScript remote.BrowserWindow類的具體用法?TypeScript remote.BrowserWindow怎麽用?TypeScript remote.BrowserWindow使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了remote.BrowserWindow類的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: Notification

services.jobs.onFinish.subscribe(job => {
    const electronWindow = remote.BrowserWindow.getAllWindows()[0];

    if (remote.app.dock && !electronWindow.isFocused()) {
        remote.app.dock.bounce("informational");
        remote.app.dock.setBadge(job.status === Status.Success ? "1" : "✕");

        const title = job.status === Status.Success ? "Completed" : "Failed";

        /* tslint:disable:no-unused-expression */
        new Notification(title, {body: job.prompt.value});
    }
});
開發者ID:sunyton,項目名稱:upterm,代碼行數:13,代碼來源:JobFinishedNotifications.ts

示例2: sanitizeFilename

 r.onloadend = () => {
   const data = {
     name: sanitizeFilename(self.visState.title.toLowerCase().replace(/\s/g, '-')),
     image: r.result,
     format: 'png'
   };
   remote.dialog.showSaveDialog(
     remote.BrowserWindow.getAllWindows()[0],
     {
       title: 'Export to Image',
       defaultPath: sanitizeFilename(data.name + '.' + data.format)
     },
     (name: string) => {
       name && writeFileSync(name, arrayBufferToBuffer(data.image));
     }
   );
 };
開發者ID:chauey,項目名稱:ngrev,代碼行數:17,代碼來源:export-to-image.service.ts

示例3: getData

function getData(): [Electron.BrowserWindow, MessageServerChannel<'log'>] {
	let win: Electron.BrowserWindow = null;
	if (!BrowserWindow) {
		win = remote.BrowserWindow.getAllWindows()[0];
	} else {
		win = BrowserWindow.getAllWindows()[0];
	}

	if (!logChannel && win) {
		logChannel = new MessageServer({
			activeWindow: win,
			activeWindowPromise: new Promise((resolve) => {
				resolve(win);
			}),
			idGenerator: -1
		}).channel('log');
	}

	return [win, logChannel];
}
開發者ID:SanderRonde,項目名稱:youtube-music-app,代碼行數:20,代碼來源:log.ts

示例4: dispatchPublishGist

export function dispatchPublishGist(
  ownProps: { contentRef: ContentRef },
  store: DesktopStore,
  _event: Event
) {
  const state = store.getState();
  const githubToken = state.app.get("githubToken");

  // The simple case -- we have a token and can publish
  if (githubToken != null) {
    store.dispatch(actions.publishGist(ownProps));
    return;
  }

  // If the Github Token isn't set, use our oauth server to acquire a token

  // Because the remote object from Electron main <--> renderer can be "cleaned up"
  // we re-require electron here and get the remote object
  const remote = require("electron").remote;

  // Create our oauth window
  const win = new remote.BrowserWindow({
    show: false,
    webPreferences: { zoomFactor: 0.75 }
  });

  // TODO: This needs to be moved to an epic
  win.webContents.on("dom-ready", () => {
    // When we're at our callback code page, keep the page hidden
    if (win.webContents.getURL().indexOf("callback?code=") !== -1) {
      // Extract the text content
      win.webContents.executeJavaScript(
        "require('electron').ipcRenderer.send('auth', document.body.textContent);"
      );
      remote.ipcMain.on("auth", (_event: Event, auth: string) => {
        try {
          const accessToken = JSON.parse(auth).access_token;
          store.dispatch(actions.setGithubToken(accessToken));

          const notificationSystem = selectors.notificationSystem(state);

          notificationSystem.addNotification({
            title: "Authenticated",
            message: "🔒",
            level: "info"
          });

          // We are now authenticated and can finally publish
          store.dispatch(actions.publishGist(ownProps));
        } catch (e) {
          store.dispatch(actions.coreError(e));
        } finally {
          win.close();
        }
      });
    } else {
      win.show();
    }
  });
  win.loadURL("https://oauth.nteract.io/github");
}
開發者ID:nteract,項目名稱:nteract,代碼行數:61,代碼來源:menu.ts

示例5: isInProgress

            if (isKeybindingForEvent(event, KeyboardAction.cliHistoryPrevious)) {
                prompt.setPreviousHistoryItem();

                event.stopPropagation();
                event.preventDefault();
                return;
            }

            if (isKeybindingForEvent(event, KeyboardAction.cliHistoryNext)) {
                prompt.setNextHistoryItem();

                event.stopPropagation();
                event.preventDefault();
                return;
            }
        }
    }

    prompt.setPreviousKeyCode(event);
};

function isInProgress(job: JobComponent): boolean {
    return job.props.job.status === Status.InProgress;
}

const app = remote.app;
const browserWindow = remote.BrowserWindow.getAllWindows()[0];
const template = buildMenuTemplate(app, browserWindow);

remote.Menu.setApplicationMenu(remote.Menu.buildFromTemplate(template));
開發者ID:fabricionaweb,項目名稱:black-screen,代碼行數:30,代碼來源:UserEventsHander.ts


注:本文中的electron.remote.BrowserWindow類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。