---- datatemplateentry project ----
template : projects:display_template
title : Extensible Clipboard
participants_ : [[people:felix_riedl|Felix Riedl]], [[people:raphael_wimmer|Raphael Wimmer]], Matthias Rösl
keywords_ : Clipboard
status_ : ongoing
start : 2017
end :
photo_img : projects:extensible_clipboard:icon.png
shortdescription : A new foundation for seamlessly sharing information
abstract : The system-wide clipboard is an essential piece of multi-tasking desktop environments. However, since its invention 50 years ago, the clipboard's capabilities have not changed much. We are building the framework for an extensible, shareable clipboard that allows trying out new interface ideas and implementing more powerful clipboard ecosystems.
----
This project page is currently work in progress.
## Background: System-wide Clipboards
A system-wide clipboard ([[https://en.wikipedia.org/wiki/Clipboard_(computing)|Wikipedia]])((By the way, this Wikipedia article has been [significantly improved](https://en.wikipedia.org/wiki/Special:Contributions/GiMaWolf) by [Gina-Maria Schmidbauer-Wolf](http://ginamariawolf.com/) as part of coursework at UR in 2018.)) is an interface provided by the operating system((or by a graphical subsystem, e.g., X11 on Linux)) which allows applications to copy data to a shared storage (the clipboard) or retrieve data from it. This allows users to transfer data between applications without having to re-enter it manually. Ususally, copying and pasting is done via keyboard shortcuts (Ctrl-C, Ctrl-V) or menu items((For more information on implementation details of system-wide clipboards, check out [this extract from Raphael Wimmer's ITT slides on clipboards and copy&paste](https://wiki.mi.ur.de/lehre/ss17/itt/copyandpaste).)).
Technically and with regard to their UI, system-wide clipboards have the following general properties:
- the OS offers an API for transferring data into the clipboard, peeking at this data, and retrieving the clipboard data
- one item
- multiple formats
- only locally and for logged-in user
- *cut* is implemented by the application
- non-permanent
- paste is non-desctructive
## Better Clipboards
- multi-user, multi-system, ubiquitous
- more than one item (and how this works with mental models)
- more automation
- automatic attribution
- security
## Status and Future Work
The initial design by Matthias Rösl has been adapted to facilitate deployment and enhance extensibility and usability, containing
- migration of the database to sqlite
- testing of OS compatibility + implementation of startup scripts
- API and Codebase refactoring
- extension of Clipboard functionality and implementation of access control hooks
- extension of Hook System for more fine-grained control [under construction]
Further steps for this project will be
- enabling Mac OS compatibility
## Publications
---- datatemplatelist ----
template: publications:list_template
cols : %title%, authors_, date, short-description, abstract, pdf_url, bibtex_url, video_url, photo, published-in
sort : date
filter : %pageid%~publications:*
and : project=extensibleclipboard
----
## Resources
* [Documents tagged "Clipboard" in our Zotero library](https://www.zotero.org/groups/1491718/physical-digital_affordances/items/collectionKey/ABJCYPKL)
* [Extensible Clipboard development on GitHub](https://github.com/PDA-UR/extensible-clipboard)
TODO: Periodically push changes from FelixRDL to PDA-UR repo. Make PDA-UR repo public.
## All Related Posts
---- datatemplatelist ----
template: news:list_template
cols : %title%, date, description
sort : ^date
filter : tags ~~ clipboard, Clipboard
----