├── .github
└── ISSUE_TEMPLATE
│ ├── bug_report.yml
│ ├── config.yml
│ └── feature_suggestion.yml
├── LICENSE
├── README.md
└── Workflow
├── 4C3CB545-F2F5-427E-AC6C-3981B0E664F7.png
├── icon.png
├── images
└── about
│ └── pauses.png
└── info.plist
/.github/ISSUE_TEMPLATE/bug_report.yml:
--------------------------------------------------------------------------------
1 | name: Bug Report
2 | description: File a bug report
3 | body:
4 | - type: input
5 | attributes:
6 | label: Workflow version
7 | description: Open the Workflow in Alfred Preferences and find it at the top, near the description
8 | validations:
9 | required: true
10 | - type: input
11 | attributes:
12 | label: Alfred version
13 | description: In the top left corner of Alfred Preferences → General
14 | validations:
15 | required: true
16 | - type: input
17 | attributes:
18 | label: macOS version
19 | description: Click on the menubar → About This Mac
20 | validations:
21 | required: true
22 | - type: textarea
23 | attributes:
24 | label: Debugger output
25 | description: Perform the failing action with the [debugger](https://www.alfredapp.com/help/workflows/advanced/debugger/) open and click *Copy* on the top right.
26 | render: alfred_debugger
27 | validations:
28 | required: true
29 | - type: textarea
30 | attributes:
31 | label: More details
32 | description: Explain what you did, what happened, and what you expected to happen
33 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: false
2 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_suggestion.yml:
--------------------------------------------------------------------------------
1 | name: Feature Suggestion
2 | description: Suggest a new feature
3 | body:
4 | - type: textarea
5 | attributes:
6 | label: Feature details
7 | description: Explain the feature idea
8 | validations:
9 | required: true
10 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | BSD 3-Clause License
2 |
3 | Copyright (c) 2021, Running with Crayons Ltd
4 | All rights reserved.
5 |
6 | Redistribution and use in source and binary forms, with or without
7 | modification, are permitted provided that the following conditions are met:
8 |
9 | 1. Redistributions of source code must retain the above copyright notice, this
10 | list of conditions and the following disclaimer.
11 |
12 | 2. Redistributions in binary form must reproduce the above copyright notice,
13 | this list of conditions and the following disclaimer in the documentation
14 | and/or other materials provided with the distribution.
15 |
16 | 3. Neither the name of the copyright holder nor the names of its
17 | contributors may be used to endorse or promote products derived from
18 | this software without specific prior written permission.
19 |
20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | #
Pause Tabs Alfred Workflow
2 |
3 | Pause audio and video in web browser tabs
4 |
5 | [⤓ Install on the Alfred Gallery](https://alfred.app/workflows/alfredapp/pause-tabs)
6 |
7 | ## Setup
8 |
9 | Turn on `Allow JavaScript from Apple Events` in the browsers you want to control. Use the Help search in the menubar to find it.
10 |
11 | ## Usage
12 |
13 | Pause audio and video in tabs of all open web browsers via the `pause all` keyword. `pause others` does the same except for the current tab. ⌘↩︎ makes it only pause tabs from the current browser.
14 |
15 | 
16 |
--------------------------------------------------------------------------------
/Workflow/4C3CB545-F2F5-427E-AC6C-3981B0E664F7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/alfredapp/pause-tabs-workflow/28549904f6eede0d1b3c56270c2fb6978e4aa839/Workflow/4C3CB545-F2F5-427E-AC6C-3981B0E664F7.png
--------------------------------------------------------------------------------
/Workflow/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/alfredapp/pause-tabs-workflow/28549904f6eede0d1b3c56270c2fb6978e4aa839/Workflow/icon.png
--------------------------------------------------------------------------------
/Workflow/images/about/pauses.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/alfredapp/pause-tabs-workflow/28549904f6eede0d1b3c56270c2fb6978e4aa839/Workflow/images/about/pauses.png
--------------------------------------------------------------------------------
/Workflow/info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | bundleid
6 | com.alfredapp.vitor.pausetabs
7 | connections
8 |
9 | 00AE9D16-4A4A-4371-9B6C-4A57F90B0FD8
10 |
11 |
12 | destinationuid
13 | 71E1A8E6-E19E-4CB5-A549-C3E381DB2DA9
14 | modifiers
15 | 0
16 | modifiersubtext
17 |
18 | vitoclose
19 |
20 |
21 |
22 | destinationuid
23 | 4E6BB00F-78D0-4401-B0D8-12DF635CB716
24 | modifiers
25 | 1048576
26 | modifiersubtext
27 | Only in current browser
28 | vitoclose
29 |
30 |
31 |
32 | 01CE4C90-7E05-45C5-BE77-6769A3E5FA86
33 |
34 |
35 | destinationuid
36 | 35178710-6E1E-4C86-8348-0528C06FA47C
37 | modifiers
38 | 0
39 | modifiersubtext
40 |
41 | vitoclose
42 |
43 |
44 |
45 | 0C0D75D3-4308-412A-88EB-70A25A0CAC0B
46 |
47 |
48 | destinationuid
49 | 1D78F34E-7704-4119-8370-27B728AAE507
50 | modifiers
51 | 0
52 | modifiersubtext
53 |
54 | vitoclose
55 |
56 |
57 |
58 | 0C7EFFD4-4267-4B4D-9C9A-1FEE01CF1079
59 |
60 |
61 | destinationuid
62 | 6E52B082-84A2-45E8-9A2C-D2231AE941D4
63 | modifiers
64 | 0
65 | modifiersubtext
66 |
67 | vitoclose
68 |
69 |
70 |
71 | 13397FC7-175F-4A5E-A5FB-B6F81FDF2229
72 |
73 |
74 | destinationuid
75 | 2E537D85-C9B0-43CB-8485-B136A1ABB446
76 | modifiers
77 | 0
78 | modifiersubtext
79 |
80 | vitoclose
81 |
82 |
83 |
84 | 1D78F34E-7704-4119-8370-27B728AAE507
85 |
86 |
87 | destinationuid
88 | E3552813-F045-4D3D-B373-63095EA7BF22
89 | modifiers
90 | 0
91 | modifiersubtext
92 |
93 | vitoclose
94 |
95 |
96 |
97 | 2E537D85-C9B0-43CB-8485-B136A1ABB446
98 |
99 |
100 | destinationuid
101 | 0C0D75D3-4308-412A-88EB-70A25A0CAC0B
102 | modifiers
103 | 0
104 | modifiersubtext
105 |
106 | vitoclose
107 |
108 |
109 |
110 | 35178710-6E1E-4C86-8348-0528C06FA47C
111 |
112 | 4C3CB545-F2F5-427E-AC6C-3981B0E664F7
113 |
114 |
115 | destinationuid
116 | 13397FC7-175F-4A5E-A5FB-B6F81FDF2229
117 | modifiers
118 | 0
119 | modifiersubtext
120 |
121 | vitoclose
122 |
123 |
124 |
125 | destinationuid
126 | 6E52B082-84A2-45E8-9A2C-D2231AE941D4
127 | modifiers
128 | 1048576
129 | modifiersubtext
130 | Only in current browser
131 | vitoclose
132 |
133 |
134 |
135 | 4E6BB00F-78D0-4401-B0D8-12DF635CB716
136 |
137 |
138 | destinationuid
139 | 2E537D85-C9B0-43CB-8485-B136A1ABB446
140 | modifiers
141 | 0
142 | modifiersubtext
143 |
144 | vitoclose
145 |
146 |
147 |
148 | 6E52B082-84A2-45E8-9A2C-D2231AE941D4
149 |
150 |
151 | destinationuid
152 | 2E537D85-C9B0-43CB-8485-B136A1ABB446
153 | modifiers
154 | 0
155 | modifiersubtext
156 |
157 | vitoclose
158 |
159 |
160 |
161 | 71E1A8E6-E19E-4CB5-A549-C3E381DB2DA9
162 |
163 |
164 | destinationuid
165 | 2E537D85-C9B0-43CB-8485-B136A1ABB446
166 | modifiers
167 | 0
168 | modifiersubtext
169 |
170 | vitoclose
171 |
172 |
173 |
174 | C4D04842-3C36-45CF-BC40-02CB7A575B2C
175 |
176 |
177 | destinationuid
178 | 13397FC7-175F-4A5E-A5FB-B6F81FDF2229
179 | modifiers
180 | 0
181 | modifiersubtext
182 |
183 | vitoclose
184 |
185 |
186 |
187 | E3552813-F045-4D3D-B373-63095EA7BF22
188 |
189 |
190 | destinationuid
191 | 01CE4C90-7E05-45C5-BE77-6769A3E5FA86
192 | modifiers
193 | 0
194 | modifiersubtext
195 |
196 | vitoclose
197 |
198 |
199 |
200 | E40D67BA-284C-4AB9-A184-D89EF55B0CBA
201 |
202 |
203 | destinationuid
204 | 71E1A8E6-E19E-4CB5-A549-C3E381DB2DA9
205 | modifiers
206 | 0
207 | modifiersubtext
208 |
209 | vitoclose
210 |
211 |
212 |
213 | E77C8C05-99B1-43FE-8519-AB0F86FC6A11
214 |
215 |
216 | destinationuid
217 | 4E6BB00F-78D0-4401-B0D8-12DF635CB716
218 | modifiers
219 | 0
220 | modifiersubtext
221 |
222 | vitoclose
223 |
224 |
225 |
226 |
227 | createdby
228 | Vítor Galvão
229 | description
230 | Pause audio and video in web browser tabs
231 | disabled
232 |
233 | name
234 | Pause Tabs
235 | objects
236 |
237 |
238 | config
239 |
240 | concurrently
241 |
242 | escaping
243 | 102
244 | script
245 | const chromiumVariants = ["Google Chrome", "Chromium", "Opera", "Vivaldi", "Brave Browser", "Microsoft Edge"]
246 | const webkitVariants = ["Safari", "Webkit", "Orion"]
247 | const browserVariants = chromiumVariants.concat(webkitVariants)
248 |
249 | Application("System Events")
250 | .applicationProcesses.where({ backgroundOnly: false })()
251 | .filter(app => {
252 | appName = app.name()
253 | if (appName.startsWith("firefox")) console.log("Firefox is not scriptable")
254 | return browserVariants.some(variant => appName.startsWith(variant))
255 | })
256 | .map(browser => browser.name())
257 | .join(",")
258 | scriptargtype
259 | 1
260 | scriptfile
261 |
262 | type
263 | 7
264 |
265 | type
266 | alfred.workflow.action.script
267 | uid
268 | 1D78F34E-7704-4119-8370-27B728AAE507
269 | version
270 | 2
271 |
272 |
273 | config
274 |
275 | tasksettings
276 |
277 | taskuid
278 | com.alfredapp.automation.core/macOS/app.current
279 |
280 | type
281 | alfred.workflow.automation.task
282 | uid
283 | 2E537D85-C9B0-43CB-8485-B136A1ABB446
284 | version
285 | 1
286 |
287 |
288 | config
289 |
290 | argumenttype
291 | 2
292 | keyword
293 | {var:pause_all_keyword}
294 | skipuniversalaction
295 |
296 | subtext
297 | Pause video and audio in all browser tabs
298 | text
299 | Pause All
300 | withspace
301 |
302 |
303 | type
304 | alfred.workflow.input.keyword
305 | uid
306 | 00AE9D16-4A4A-4371-9B6C-4A57F90B0FD8
307 | version
308 | 1
309 |
310 |
311 | config
312 |
313 | concurrently
314 |
315 | escaping
316 | 102
317 | script
318 | // Grab environment variables
319 | function envVar(varName) {
320 | return $.NSProcessInfo
321 | .processInfo
322 | .environment
323 | .objectForKey(varName).js
324 | }
325 |
326 | const actOn = envVar("act_on")
327 | const skipActive = envVar("skip_active") === "1"
328 | const frontmostName = envVar("frontmost_name")
329 | const runningBrowsers = envVar("running_browsers")
330 |
331 | // Code to pause
332 | const pausePlayer = `
333 | document.querySelectorAll("video, audio").forEach(e => e.pause())
334 |
335 | // Pause embedded YouTube players
336 | document.querySelectorAll("iframe").forEach(e => {
337 | if (e.getAttribute("src").indexOf("youtube.com/embed") === -1) return
338 |
339 | e.contentWindow.postMessage(JSON.stringify({
340 | "event": "command",
341 | "func": "pauseVideo"
342 | }), "*")
343 | })
344 | `
345 |
346 | // Set up
347 | const webkitVariants = ["Safari", "Webkit", "Orion"]
348 | const chromiumVariants = ["Google Chrome", "Chromium", "Opera", "Vivaldi", "Brave Browser", "Microsoft Edge"]
349 |
350 | targetBrowsers = (actOn === "all") ? runningBrowsers.split(",") : [frontmostName]
351 |
352 | // Pause tabs
353 | targetBrowsers.forEach(browserName => {
354 | browser = Application(browserName)
355 |
356 | // Webkit variants
357 | if (webkitVariants.some(variant => browserName.startsWith(variant))) {
358 | browser.windows()?.forEach(browserWindow => {
359 | browserWindow.tabs()?.forEach(browserTab => {
360 | // Skip current tab if conditions are met
361 | if (skipActive && frontmostName === browserName && browserWindow.id() === browser.windows()[0].id() && browserTab.index() === browserWindow.currentTab.index()) return
362 | // Pause tab
363 | browser.doJavaScript(pausePlayer, {in: browserTab})
364 | })
365 | })
366 | // Chromium Variants
367 | } else if (chromiumVariants.some(variant => browserName.startsWith(variant))) {
368 | browser.windows()?.forEach(browserWindow => {
369 | browserWindow.tabs()?.forEach(browserTab => {
370 | // Skip current tab if conditions are met
371 | if (skipActive && frontmostName === browserName && browserWindow.id() === browser.windows()[0].id() && browserTab.id() === browserWindow.activeTab.id()) return
372 | // Pause tab
373 | browserTab.execute({javascript: pausePlayer})
374 | })
375 | })
376 | } else {
377 | throw new Error(browserName + " is not a supported browser")
378 | }
379 | })
380 | scriptargtype
381 | 1
382 | scriptfile
383 |
384 | type
385 | 7
386 |
387 | type
388 | alfred.workflow.action.script
389 | uid
390 | 35178710-6E1E-4C86-8348-0528C06FA47C
391 | version
392 | 2
393 |
394 |
395 | config
396 |
397 | argument
398 |
399 | passthroughargument
400 |
401 | variables
402 |
403 | frontmost_name
404 | {query}
405 |
406 |
407 | type
408 | alfred.workflow.utility.argument
409 | uid
410 | 0C0D75D3-4308-412A-88EB-70A25A0CAC0B
411 | version
412 | 1
413 |
414 |
415 | config
416 |
417 | type
418 | 0
419 |
420 | type
421 | alfred.workflow.utility.transform
422 | uid
423 | E3552813-F045-4D3D-B373-63095EA7BF22
424 | version
425 | 1
426 |
427 |
428 | config
429 |
430 | argument
431 |
432 | passthroughargument
433 |
434 | variables
435 |
436 | running_browsers
437 | {query}
438 |
439 |
440 | type
441 | alfred.workflow.utility.argument
442 | uid
443 | 01CE4C90-7E05-45C5-BE77-6769A3E5FA86
444 | version
445 | 1
446 |
447 |
448 | config
449 |
450 | argument
451 |
452 | passthroughargument
453 |
454 | variables
455 |
456 | act_on
457 | all
458 | skip_active
459 | 0
460 |
461 |
462 | type
463 | alfred.workflow.utility.argument
464 | uid
465 | 71E1A8E6-E19E-4CB5-A549-C3E381DB2DA9
466 | version
467 | 1
468 |
469 |
470 | config
471 |
472 | argument
473 |
474 | passthroughargument
475 |
476 | variables
477 |
478 | act_on
479 | frontmost
480 | skip_active
481 | 0
482 |
483 |
484 | type
485 | alfred.workflow.utility.argument
486 | uid
487 | 4E6BB00F-78D0-4401-B0D8-12DF635CB716
488 | version
489 | 1
490 |
491 |
492 | config
493 |
494 | action
495 | 0
496 | argument
497 | 0
498 | focusedappvariable
499 |
500 | focusedappvariablename
501 |
502 | hotkey
503 | 0
504 | hotmod
505 | 0
506 | leftcursor
507 |
508 | modsmode
509 | 0
510 | relatedAppsMode
511 | 0
512 |
513 | type
514 | alfred.workflow.trigger.hotkey
515 | uid
516 | E40D67BA-284C-4AB9-A184-D89EF55B0CBA
517 | version
518 | 2
519 |
520 |
521 | config
522 |
523 | action
524 | 0
525 | argument
526 | 0
527 | focusedappvariable
528 |
529 | focusedappvariablename
530 |
531 | hotkey
532 | 0
533 | hotmod
534 | 0
535 | leftcursor
536 |
537 | modsmode
538 | 0
539 | relatedAppsMode
540 | 0
541 |
542 | type
543 | alfred.workflow.trigger.hotkey
544 | uid
545 | E77C8C05-99B1-43FE-8519-AB0F86FC6A11
546 | version
547 | 2
548 |
549 |
550 | config
551 |
552 | argumenttype
553 | 2
554 | keyword
555 | {var:pause_others_keyword}
556 | skipuniversalaction
557 |
558 | subtext
559 | Pause video and audio in all browser tabs except current one
560 | text
561 | Pause Others
562 | withspace
563 |
564 |
565 | type
566 | alfred.workflow.input.keyword
567 | uid
568 | 4C3CB545-F2F5-427E-AC6C-3981B0E664F7
569 | version
570 | 1
571 |
572 |
573 | config
574 |
575 | argument
576 |
577 | passthroughargument
578 |
579 | variables
580 |
581 | act_on
582 | all
583 | skip_active
584 | 1
585 |
586 |
587 | type
588 | alfred.workflow.utility.argument
589 | uid
590 | 13397FC7-175F-4A5E-A5FB-B6F81FDF2229
591 | version
592 | 1
593 |
594 |
595 | config
596 |
597 | action
598 | 0
599 | argument
600 | 0
601 | focusedappvariable
602 |
603 | focusedappvariablename
604 |
605 | hotkey
606 | 0
607 | hotmod
608 | 0
609 | leftcursor
610 |
611 | modsmode
612 | 0
613 | relatedAppsMode
614 | 0
615 |
616 | type
617 | alfred.workflow.trigger.hotkey
618 | uid
619 | C4D04842-3C36-45CF-BC40-02CB7A575B2C
620 | version
621 | 2
622 |
623 |
624 | config
625 |
626 | argument
627 |
628 | passthroughargument
629 |
630 | variables
631 |
632 | act_on
633 | frontmost
634 | skip_active
635 | 1
636 |
637 |
638 | type
639 | alfred.workflow.utility.argument
640 | uid
641 | 6E52B082-84A2-45E8-9A2C-D2231AE941D4
642 | version
643 | 1
644 |
645 |
646 | config
647 |
648 | action
649 | 0
650 | argument
651 | 0
652 | focusedappvariable
653 |
654 | focusedappvariablename
655 |
656 | hotkey
657 | 0
658 | hotmod
659 | 0
660 | leftcursor
661 |
662 | modsmode
663 | 0
664 | relatedAppsMode
665 | 0
666 |
667 | type
668 | alfred.workflow.trigger.hotkey
669 | uid
670 | 0C7EFFD4-4267-4B4D-9C9A-1FEE01CF1079
671 | version
672 | 2
673 |
674 |
675 | readme
676 | ## Setup
677 |
678 | Turn on `Allow JavaScript from Apple Events` in the browsers you want to control. Use the Help search in the menubar to find it.
679 |
680 | ## Usage
681 |
682 | Pause audio and video in tabs of all open web browsers via the `pause all` keyword. `pause others` does the same except for the current tab. <kbd>⌘</kbd><kbd>↩</kbd> makes it only pause tabs from the current browser.
683 |
684 | 
685 | uidata
686 |
687 | 00AE9D16-4A4A-4371-9B6C-4A57F90B0FD8
688 |
689 | colorindex
690 | 9
691 | note
692 | Pause audio and video in all running browsers
693 | xpos
694 | 40
695 | ypos
696 | 35
697 |
698 | 01CE4C90-7E05-45C5-BE77-6769A3E5FA86
699 |
700 | xpos
701 | 900
702 | ypos
703 | 65
704 |
705 | 0C0D75D3-4308-412A-88EB-70A25A0CAC0B
706 |
707 | xpos
708 | 565
709 | ypos
710 | 65
711 |
712 | 0C7EFFD4-4267-4B4D-9C9A-1FEE01CF1079
713 |
714 | colorindex
715 | 7
716 | xpos
717 | 40
718 | ypos
719 | 745
720 |
721 | 13397FC7-175F-4A5E-A5FB-B6F81FDF2229
722 |
723 | note
724 | Act on all browsers
725 | Skip active tab
726 | xpos
727 | 265
728 | ypos
729 | 490
730 |
731 | 1D78F34E-7704-4119-8370-27B728AAE507
732 |
733 | note
734 | Grab all running web browsers
735 | xpos
736 | 650
737 | ypos
738 | 35
739 |
740 | 2E537D85-C9B0-43CB-8485-B136A1ABB446
741 |
742 | xpos
743 | 400
744 | ypos
745 | 35
746 |
747 | 35178710-6E1E-4C86-8348-0528C06FA47C
748 |
749 | note
750 | Pause tabs
751 | xpos
752 | 980
753 | ypos
754 | 35
755 |
756 | 4C3CB545-F2F5-427E-AC6C-3981B0E664F7
757 |
758 | colorindex
759 | 7
760 | note
761 | Pause audio and video in frontmost app
762 | xpos
763 | 40
764 | ypos
765 | 460
766 |
767 | 4E6BB00F-78D0-4401-B0D8-12DF635CB716
768 |
769 | note
770 | Act on frontmost app
771 | Do not skip active tab
772 | xpos
773 | 260
774 | ypos
775 | 195
776 |
777 | 6E52B082-84A2-45E8-9A2C-D2231AE941D4
778 |
779 | note
780 | Act on frontmost app
781 | Skip active tab
782 | xpos
783 | 265
784 | ypos
785 | 620
786 |
787 | 71E1A8E6-E19E-4CB5-A549-C3E381DB2DA9
788 |
789 | note
790 | Act on all browsers
791 | Do not skip active tab
792 | xpos
793 | 260
794 | ypos
795 | 65
796 |
797 | C4D04842-3C36-45CF-BC40-02CB7A575B2C
798 |
799 | colorindex
800 | 7
801 | xpos
802 | 40
803 | ypos
804 | 620
805 |
806 | E3552813-F045-4D3D-B373-63095EA7BF22
807 |
808 | xpos
809 | 815
810 | ypos
811 | 65
812 |
813 | E40D67BA-284C-4AB9-A184-D89EF55B0CBA
814 |
815 | colorindex
816 | 9
817 | xpos
818 | 40
819 | ypos
820 | 195
821 |
822 | E77C8C05-99B1-43FE-8519-AB0F86FC6A11
823 |
824 | colorindex
825 | 9
826 | xpos
827 | 40
828 | ypos
829 | 320
830 |
831 |
832 | userconfigurationconfig
833 |
834 |
835 | config
836 |
837 | default
838 | pause all
839 | placeholder
840 |
841 | required
842 |
843 | trim
844 |
845 |
846 | description
847 |
848 | label
849 | Pause All Keyword
850 | type
851 | textfield
852 | variable
853 | pause_all_keyword
854 |
855 |
856 | config
857 |
858 | default
859 | pause others
860 | placeholder
861 |
862 | required
863 |
864 | trim
865 |
866 |
867 | description
868 |
869 | label
870 | Pause Others Keyword
871 | type
872 | textfield
873 | variable
874 | pause_others_keyword
875 |
876 |
877 | version
878 | 2025.1
879 | webaddress
880 | https://github.com/alfredapp/pause-tabs-workflow/
881 |
882 |
883 |
--------------------------------------------------------------------------------