All Projects → Clipy → Screeen

Clipy / Screeen

Licence: mit
Observe user screen shot event in macOS.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Screeen

See
Sandboxed Execution Environment
Stars: ✭ 770 (+2555.17%)
Mutual labels:  sandbox
Stagy
Stagy is a tool for quick deployment of staging environments.
Stars: ✭ 19 (-34.48%)
Mutual labels:  sandbox
Fiber
Distributed Computing for AI Made Simple
Stars: ✭ 866 (+2886.21%)
Mutual labels:  sandbox
Ksnip
ksnip the cross-platform screenshot and annotation tool
Stars: ✭ 776 (+2575.86%)
Mutual labels:  screenshot
Upscreen
Capture your screen, upload to your own server.
Stars: ✭ 17 (-41.38%)
Mutual labels:  screenshot
Capella Tray
Upload screenshots instantly to Capella and get link directly to clipboard
Stars: ✭ 23 (-20.69%)
Mutual labels:  screenshot
Emagnet
Automated hacking tool that will find leaked databases with 97.1% accurate to grab mail + password together from recent uploads from https://pastebin.com. Bruteforce support for spotify accounts, instagram accounts, ssh servers, microsoft rdp clients and gmail accounts
Stars: ✭ 688 (+2272.41%)
Mutual labels:  screenshot
Mac2imgur
⬆ A simple Mac app designed to make uploading images and screenshots to Imgur quick and effortless.
Stars: ✭ 914 (+3051.72%)
Mutual labels:  screenshot
Screenshotframes
A small CSS library for adding responsive frames (mobile device, desktop computer, or browser toolbar) to images
Stars: ✭ 18 (-37.93%)
Mutual labels:  screenshot
Emofishes
Emofishes is a collection of proof of concepts that help improve, bypass or detect virtualized execution environments (focusing on the ones setup for malware analysis).
Stars: ✭ 11 (-62.07%)
Mutual labels:  sandbox
Tridentsandbox
An In-Browser Scripting IDE for HTML5/Javascript
Stars: ✭ 5 (-82.76%)
Mutual labels:  sandbox
X11 Recorder
xrec helps you capture any area of your screen either as a screenshot or record a gif file.
Stars: ✭ 17 (-41.38%)
Mutual labels:  screenshot
Danneskjold Theme
Beautiful high-contrast emacs theme
Stars: ✭ 26 (-10.34%)
Mutual labels:  screenshot
Polacode
📸 Polaroid for your code
Stars: ✭ 6,511 (+22351.72%)
Mutual labels:  screenshot
Wakxy
Wakxy is a Wakfu packet sniffer (MITM). Written in C++/Qt with Javascript scripting support.
Stars: ✭ 12 (-58.62%)
Mutual labels:  sandbox
Ehviewer cn sxj
因为ehviewer近一年多没更新了,所以想copy过来试着更新下
Stars: ✭ 744 (+2465.52%)
Mutual labels:  screenshot
Deer Executor
An executor for online judge —— 基于Go语言实现的代码评测工具
Stars: ✭ 23 (-20.69%)
Mutual labels:  sandbox
Pybrowserstack Screenshots
api wrapper and python client for Browserstack Screenshots, including phantomCSS support
Stars: ✭ 27 (-6.9%)
Mutual labels:  screenshot
Thrive
The main repository for the development of the evolution game Thrive.
Stars: ✭ 874 (+2913.79%)
Mutual labels:  sandbox
Protractor Pretty Html Reporter
A jasmine reporter that produces an easy to use html report to analyze protractor test results.
Stars: ✭ 9 (-68.97%)
Mutual labels:  screenshot

Screeen

Actions Status Release version License: MIT Carthage compatible Version Platform SPM supported

Observe user screen shot event and image in macOS.

Usage

CocoaPods

pod 'Screeen'

Carthage

github "Clipy/Screeen"

Example

let observer = ScreenShotObserver()
observer.delegate = self
observer.start()
func screenShotObserver(_ observer: ScreenShotObserver, addedItem item: NSMetadataItem) {
    print("added item == \(item)")
}

func screenShotObserver(_ observer: ScreenShotObserver, updatedItem item: NSMetadataItem) {
    print("updated item == \(item)")
}

func screenShotObserver(_ observer: ScreenShotObserver, removedItem item: NSMetadataItem) {
    print("removed item == \(item)")
}

Change observing status

observer.isEnabled = false // Stop observing
observer.isEnabled = true  // Restart observing

Security features of macOS 10.15 or higher

Security features have been enhanced since mac10.15 Catalina, and screenshot monitoring must be granted permission. The monitoring target can be specified for each directory, and the desktop directory is specified by default. 

When call start() for the first time, a permission alert will be displayed and monitoring will start when allow it.

Desktop directory monitoring (default)

let observer = ScreenShotObserver()
observer.start()

Desktop and Picture directories monitoring

let desktopPath = NSSearchPathForDirectoriesInDomains(.desktopDirectory, .userDomainMask, true).first
let picturePath = NSSearchPathForDirectoriesInDomains(.picturesDirectory, .userDomainMask, true).first
let directoryPaths = [desktopPath, picturePath].compactMap { $0 }
let observer = ScreenShotObserver(searchDirectoryPaths: directoryPaths)
observer.start()

Monitoring all screenshots on macOS 10.14 or earlier

let observer: ScreenShotObserver
if #available(macOS 10.15, *) {
    observer = ScreenShotObserver()
} else {
    observer = ScreenShotObserver(searchDirectoryPaths: [])
}
observer.start()

Sandbox support

In order to monitor screen shots in a Sandbox enabled application, the user must manually select the directory to be monitored.
See here for more details on how to implement it.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].