2018-02-21 18:29:17 +00:00
|
|
|
# Represented File for macOS BrowserWindows
|
2018-02-20 00:25:02 +00:00
|
|
|
|
2020-10-26 07:45:45 +00:00
|
|
|
## Overview
|
2018-02-20 00:25:02 +00:00
|
|
|
|
2020-10-26 07:45:45 +00:00
|
|
|
On macOS, you can set a represented file for any window in your application.
|
|
|
|
The represented file's icon will be shown in the title bar, and when users
|
|
|
|
`Command-Click` or `Control-Click`, a popup with a path to the file will be
|
|
|
|
shown.
|
2018-02-20 00:25:02 +00:00
|
|
|
|
|
|
|
![Represented File][represented-image]
|
|
|
|
|
2020-10-26 07:45:45 +00:00
|
|
|
> NOTE: The screenshot above is an example where this feature is used to indicate the currently opened file in the Atom text editor.
|
|
|
|
|
|
|
|
You can also set the edited state for a window so that the file icon can
|
|
|
|
indicate whether the document in this window has been modified.
|
|
|
|
|
2018-02-20 00:25:02 +00:00
|
|
|
To set the represented file of window, you can use the
|
|
|
|
[BrowserWindow.setRepresentedFilename][setrepresentedfilename] and
|
2020-10-26 07:45:45 +00:00
|
|
|
[BrowserWindow.setDocumentEdited][setdocumentedited] APIs.
|
|
|
|
|
|
|
|
## Example
|
|
|
|
|
|
|
|
Starting with a working application from the
|
|
|
|
[Quick Start Guide](quick-start.md), add the following lines to the
|
|
|
|
`main.js` file:
|
2018-02-20 00:25:02 +00:00
|
|
|
|
2020-11-30 07:48:39 +00:00
|
|
|
```javascript fiddle='docs/fiddles/features/represented-file'
|
2020-10-26 07:45:45 +00:00
|
|
|
const { app, BrowserWindow } = require('electron')
|
|
|
|
|
|
|
|
app.whenReady().then(() => {
|
|
|
|
const win = new BrowserWindow()
|
2018-02-20 00:25:02 +00:00
|
|
|
|
2020-10-26 07:45:45 +00:00
|
|
|
win.setRepresentedFilename('/etc/passwd')
|
|
|
|
win.setDocumentEdited(true)
|
|
|
|
})
|
2018-02-20 00:25:02 +00:00
|
|
|
```
|
|
|
|
|
2020-10-26 07:45:45 +00:00
|
|
|
After launching the Electron application, click on the title with `Command` or
|
|
|
|
`Control` key pressed. You should see a popup with the file you just defined:
|
|
|
|
|
|
|
|
![Represented file](../images/represented-file.png)
|
|
|
|
|
2018-02-20 00:25:02 +00:00
|
|
|
[represented-image]: https://cloud.githubusercontent.com/assets/639601/5082061/670a949a-6f14-11e4-987a-9aaa04b23c1d.png
|
|
|
|
[setrepresentedfilename]: ../api/browser-window.md#winsetrepresentedfilenamefilename-macos
|
|
|
|
[setdocumentedited]: ../api/browser-window.md#winsetdocumenteditededited-macos
|