Safari Extensions Development Guide Contents

Total Page:16

File Type:pdf, Size:1020Kb

Safari Extensions Development Guide Contents Safari Extensions Development Guide Contents About Safari Extensions 9 At a Glance 10 What’s the Difference Between an Extension and a Plug-in? 10 Extensions Have Their Own JavaScript API 10 Extensions Run in a Sandbox 10 You Create Extensions Right in Safari 11 You Can Define User Settings in Extension Builder 11 Debug Your Extension with Safari’s Built-in Tools 12 Update Your Extension Automatically from the Web 12 Prerequisites 12 See Also 12 Extensions Overview 13 Safari Extension Certificates 13 What Your Extension Can Do 13 The Extension Parts List 14 Extension Architecture 15 The Safari Extensions JavaScript API 16 Classes and Properties 16 The Application and Extension Objects 17 Web Content Interaction 17 Events—Commands, Messages, and Proxies 18 How to Create Extensions 19 Global HTML Page 20 Extension Bar Files 20 Popover Files 21 Injected Scripts and Style Sheets 22 The plist Files 22 Security 23 Don’t Insert Imported Text Using innerHTML or document.write 23 Don’t Use eval with Imported Text 23 Don’t Use HTTP to Add HTML, CSS, or Scripts 23 Private Browsing 23 2015-06-08 | Copyright © 2015 Apple Inc. All Rights Reserved. 2 Contents Using Extension Builder 25 Before You Begin 25 Opening Extension Builder 25 The Extension Builder Interface 26 Building a Simple Extension 30 Accessing Resources Within Your Extension Folder 32 Using Relative URLs 32 Using Absolute URLs 33 Example: Loading a Background Image in CSS 33 Security 34 Adding Extension Bars 35 About Extension Bars 35 The extension.bars Array 36 Domain, URLs, and Access 36 Displaying Content in an Extension Bar 37 Creating an Extension Control Bar 37 Working with Windows and Tabs 39 Interacting with Injected Scripts 41 Message-Passing Example 42 Adding a Global HTML Page 45 Adding a Global Page in Extension Builder 45 Handling Toolbar Items 46 Handling Contextual Menu Items 46 Support Logic for Extension Bars and Popovers 47 Support Logic for Injected Scripts 50 Working with Windows and Tabs 50 Adding Buttons to the Main Safari Toolbar 52 Creating an Image 52 Setting Up Extension Builder 53 Responding to Commands 55 Deciding Where to Respond 56 If You Respond from a Global HTML Page 57 If You Respond from an Extension Bar 57 Example: Implementing a Reload Button 57 Adding Extension Menus 59 2015-06-08 | Copyright © 2015 Apple Inc. All Rights Reserved. 3 Contents Setting Up Menus in Extension Builder 59 Creating an Image (Optional) 61 Responding to Events 61 Modifying the Menu Dynamically 62 Adding Popovers 64 Creating the Popover Content File 64 Setting Up Popovers in Extension Builder 66 Responding to Events 67 Creating a Popover at Runtime 67 Adding Contextual Menu Items 69 Context Menu Events 69 Adding a Contextual Menu Item Using Extension Builder 70 Responding to Commands 70 Modifying the Default Behavior 71 Adding Context Information 72 Disabling the Contextual Menu 72 Adding Contextual Menu Items Programmatically 73 Changing the Contextual Menu Item Title 73 Deciding Where to Respond 74 If You Respond from a Global HTML Page 74 If You Respond from an Extension Bar 74 Example: Implementing a New Window Contextual Menu Item 74 Injecting Scripts 76 About Injected Scripts 76 Adding a Script 77 Injecting Styles 79 About Injected Style Sheets 79 Adding a Style Sheet 79 The Windows and Tabs API 81 SafariApplication 81 SafariBrowserWindow 82 SafariBrowserTab 82 Events 82 Working with Safari Reader 84 2015-06-08 | Copyright © 2015 Apple Inc. All Rights Reserved. 4 Contents Reader Events 84 Reader Methods and Properties 85 Injecting Style Sheets and Scripts into Reader 85 Injecting into Reader Dynamically 86 Sending Messages to Scripts Injected into Reader 86 Messages and Proxies 87 Message Structure 87 Sending Messages to an Injected Script 88 Tabs in Safari 6.1 and Later 89 Receiving Messages from an Injected Script 89 Example: Calling a Function from an Injected Script 90 Blocking Unwanted Content 92 Access and Permissions 95 The Global HTML Page, Popovers, and Extension Bars 95 Injected Scripts and Style Sheets 95 Extension Website Access 96 Whitelists and Blacklists 97 Settings and Local Storage 99 How to Create User Settings 99 Hidden Settings 100 Text Field Settings 100 Checkbox Settings 101 Slider Settings 101 Pop-Up Button Settings 102 List Box Settings 102 Radio Buttons Settings 103 Groups and Separators 103 How to Use the Settings API 103 Using HTML5 Local Storage 104 Debugging Extensions 106 Debugging Extension Bars 106 Debugging Injected Scripts 107 Debugging a Global HTML Page 108 Distributing Your Extension 109 Putting Your Extension on a Web Server 109 2015-06-08 | Copyright © 2015 Apple Inc. All Rights Reserved. 5 Contents Submitting Your Extension to the Safari Extensions Gallery 110 Updating Extensions 111 Document Revision History 113 2015-06-08 | Copyright © 2015 Apple Inc. All Rights Reserved. 6 Figures and Listings Extensions Overview 13 Figure 1-1 The extension architecture 16 Figure 1-2 Extension bar example 21 Using Extension Builder 25 Figure 2-1 Enabling the developer tools 25 Figure 2-2 Extension Builder interface 27 Figure 2-3 Access restrictions 28 Figure 2-4 Hello World 31 Listing 2-1 helloworld.html 30 Adding Extension Bars 35 Figure 4-1 Music player toolbar 39 Figure 4-2 Reference extension bar 41 Figure 4-3 Before and after 44 Listing 4-1 Music player bar 37 Listing 4-2 Safari developer reference bar 40 Listing 4-3 Extensionbar.html 42 Listing 4-4 Injected.js 43 Adding a Global HTML Page 45 Listing 5-1 Moving logic to your global page 47 Adding Buttons to the Main Safari Toolbar 52 Figure 6-1 Anti-aliased text in black on transparent background 53 Figure 6-2 Adding toolbar items 54 Listing 6-1 Reload command and validate handlers 57 Adding Extension Menus 59 Figure 7-1 Extension Menus pane 59 Figure 7-2 Attaching a menu to a toolbar item 60 Adding Popovers 64 Figure 8-1 Popovers pane 66 2015-06-08 | Copyright © 2015 Apple Inc. All Rights Reserved. 7 Figures and Listings Figure 8-2 Associating a popover with a toolbar item 66 Adding Contextual Menu Items 69 Figure 9-1 Contextual Menu Items pane 70 Figure 9-2 Adding a menu item 75 Listing 9-1 New window command handlers 75 Injecting Scripts 76 Figure 10-1 Specifying injected content 77 Listing 10-1 Modifying a webpage using DOM insertion 77 Injecting Styles 79 Figure 11-1 Specifying an injected style sheet 80 Working with Safari Reader 84 Listing 13-1 Reader “available” handler 84 Messages and Proxies 87 Listing 14-1 Injected.js 90 Listing 14-2 Global.html 91 Listing 14-3 Blocking content 92 Access and Permissions 95 Figure 15-1 Access to secure pages 97 Figure 15-2 Whitelist and Blacklist 97 Settings and Local Storage 99 Figure 16-1 Settings pane 99 Figure 16-2 Setting types 100 Figure 16-3 Extension storage 105 Listing 16-1 Responding to settings changes 104 Debugging Extensions 106 Figure 17-1 Inspecting extension bars 106 Figure 17-2 Inspecting injected scripts 107 Figure 17-3 Inspect Global Page button 108 2015-06-08 | Copyright © 2015 Apple Inc. All Rights Reserved. 8 About Safari Extensions Safari extensions provide a way for you to add features to the Safari browser. You can add custom buttons to the Safari toolbar, create bars of your own, add contextual menu items, display content in bars or tabs, and inject scripts and style sheets into webpages. In Safari 5.1 and later, you can add menus and popovers to toolbar items. You write Safari extensions using HTML, CSS, and JavaScript. A JavaScript API for extensions allows you to interact with the browser and web content in ways that scripts normally can’t. Important: To develop extensions for Safari, you need to sign up for the Apple Developer Program online at http://developer.apple.com. After joining the program, you must obtain a signed certificate in order for your extension to work; the extension will not load until your certificate is installed. To request a certificate, follow the “Certificates, Identifiers & Profiles” link from the Developer Member Center homepage. Safari extensions are supported in Safari 5.0 and later on the desktop (Mac and Windows). Safari extensions are not currently supported on iOS. 2015-06-08 | Copyright © 2015 Apple Inc. All Rights Reserved. 9 About Safari Extensions At a Glance At a Glance Safari extensions let you add persistent items to Safari—controls, menus and menu items, local or web-based content, and scripts that modify the content Safari presents. What’s the Difference Between an Extension and a Plug-in? A plug-in can add support for media types to a browser. An extension can add many different features. Extensions and plug-ins both expand a browser’s capabilities. Plug-ins let browsers display media that the browser can’t display natively or provide a particular media player experience. Extensions personalize and enhance the browser itself and can interact with HTML web content. A plug-in can’t interact with webpages except to display media of specific MIME types. A plug-in cannot add features to Safari, such as toolbar buttons or contextual menu items. A plug-in is a binary file that interfaces with the browser but is essentially an app in itself—the browser hands off specific media types to the plug-in to handle. An extension is a collection of HTML, JavaScript, and CSS files that the browser uses to expand its feature set. Extensions allow you to reformat webpages, block unwanted sites or unwanted material, display RSS feeds and other data in a bar or window, and do thousands of other things that plug-ins can’t do.
Recommended publications
  • Some Touching News the New Rules of Digital Media
    Some Touching News the new rules of digital media Josh Clark @globalmoxie Interaction designer but also what might be called: design strategist I work mainly in mobile. I wrote a book called Tapworthy about designing iPhone apps. Fill my days: Help people/companies think through crafting terrific experiences for non-desktop systems. Means figuring out how phones, tablets fit into overall digital diet. But it’s also about how these devices are creating entirely new kinds of interaction, new kinds of digital products and interfaces. That’s what I’m going to talk about today. How this explosion of new devices means we have to rethink how we approach design. Especially excited about possibilities of touch interfaces. I believe touch forces—or should force—important, FUNDAMENTAL changes in how we approach the designs of these interfaces. When you get rid of the mouse and cursor, these prosthetics that we’ve been using to point at stuf for 25 years, you get a VERY diferent experience. And it suggests entirely new interfaces. Touch will help us sweep away decades of buttons—menus—folders—tabs—administrative debris to work directly with content. This is very diferent from what came before. And certainly VERY diferent from print. I’m going to talk about two things today: 1. How we should/shouldn’t go about conceiving entirely new interfaces for news; particularly its relationship to print. Then: nitty-gritty techniques for pushing touch interfaces in exciting new directions. iPad in particular giving many of us opportunity to experiment. EXCITING. But also means we see a lot of misfires, too.
    [Show full text]
  • The Challenges of Web Engineering and Requirements for Better Tool Support
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Computer Science Technical Reports @Virginia Tech The Challenges of Web Engineering and Requirements for Better Tool Support Jochen Rode1, Mary Beth Rosson2, Manuel A. Pérez-Quiñones1 2 1Virginia Polytechnic Institute and State University Pennsylvania State University Center for Human-Computer Interaction School of Information Sciences & Technology 3160 Torgersen Hall 330D IST Building Blacksburg, VA 24061, USA University Park, PA 16802 [email protected], [email protected] [email protected] ABSTRACT We report the findings from two distinct studies – a survey and an We report the experiences of semi-professional developers interview study. After a brief review of related work we discuss regarding the challenges, tools, and processes within the domain our research methods and our major results. The survey and of web application development. The paper summarizes the main interview study jointly highlight key challenges such as: problems in web development, characterizes the habits of implementing security, cross-platform compatibility, debugging, programmers and concludes with a “developer’s wish list” for and technology integration. We first report the findings from the improvements to web technologies and tools. The report is based survey and the interviews separately and then summarize to paint on two independent sources – a survey of 31 web developers and a coherent picture of the status-quo of web development. an in-depth interview study with 10 participants. 2. RELATED WORK Keywords The analysis of web developers’ needs has received little attention Web application development, web development tools, web in the web engineering literature.
    [Show full text]
  • Package 'Yonder'
    Package ‘yonder’ January 10, 2020 Type Package Title A Reactive Web Framework Built on 'shiny' Version 0.2.0 Description Build 'shiny' applications with the latest Bootstrap components and design utilities. Includes refreshed reactive inputs and outputs. Use responsive layouts to design and construct applications for devices of all sizes. License GPL-3 URL https://nteetor.github.io/yonder BugReports https://github.com/nteetor/yonder/issues Encoding UTF-8 LazyData true RoxygenNote 7.0.2 Depends R (>= 3.2), shiny (>= 1.4.0) Imports htmltools (>= 0.4.0), magrittr, utils Suggests testthat (>= 2.1.0) NeedsCompilation no Author Nathan Teetor [aut, cre], The Bootstrap Authors [cph] (Bootstrap library), Twitter, Inc [cph] (Bootstrap library), JS Foundation [cph] (jQuery library), Federico Zivolo [ctb, cph] (popper.js library), Johann Servoire [ctb, cph] (bs-custom-file-input library) Maintainer Nathan Teetor <[email protected]> Repository CRAN Date/Publication 2020-01-10 21:20:07 UTC 1 2 R topics documented: R topics documented: yonder-package . .3 active ............................................4 affix.............................................5 alert . .6 background . .7 badge . .8 blockquote . .9 border . 10 buttonGroupInput . 12 buttonInput . 13 card ............................................. 16 checkbarInput . 19 checkboxInput . 21 chipInput . 23 collapsePane . 26 column . 27 d1.............................................. 30 display . 31 dropdown . 32 fieldset . 34 fileInput . 35 flex ............................................
    [Show full text]
  • Merlinx Extension
    MerlinX Extension For Adobe Creative Cloud Applications MerlinOne Inc. 17 Whitney Road Quincy, MA 02169 T (617) 328-6645 http://www.merlinone.com MerlinOne Inc. Table of Contents Table of Contents 1 Introduction 3 Installing the Extension 4 Logging In 5 Accessing the Extension 5 Collapsing and Docking the Extension 5 How to Log In 5 Specifying a Merlin Server 6 Specifying Your Name & Password 6 Connecting 6 How to Log Out 7 Overview 8 Getting Around 10 Locating Assets 10 Search 10 Collections 10 Saved Searches 12 Customizing the Display 12 Thumbnail Grid 12 MerlinX Extension (Wednesday, August 29, 2018) "1 MerlinOne Inc. Thumbnail Size 13 Thumbnail Info 13 Working With Digital Assets 14 Opening Assets 15 Asset Versions 15 Checking Out 15 Checking In 16 Reverting 16 Placing Assets in InDesign 17 Automatic Update of Placed Assets 17 Sending Assets to Your Merlin Server 18 Modified Assets 18 New Assets 18 MerlinX Extension (Wednesday, August 29, 2018) "2 MerlinOne Inc. Introduction The MerlinX Extension is an Adobe Extension that makes it easy to access your MerlinX Digital Asset Management system from within your favorite Adobe Creative Cloud application. The extension allows you to locate assets either by searching or through user- defined asset collections. In addition to helping you find assets, the extension also helps you work on them. As your creation evolves, you can periodically send it to your Merlin server through a process called “checking it in”. The server keeps track of each version of the asset you check in, so it is possible to revert changes that are not desired.
    [Show full text]
  • Reviewer's Guide 2 Overview
    Reviewer's Guide 2 Overview What is OmniOutliner? OmniOutliner for iPad is a professional-grade outlining application to easily capture, compose, and organize text and data. It's feature-rich enough to see a novel from outline to print and simple enough to create a grocery list in a snap. What makes OmniOutliner different from other iPad outlining apps? OmniOutliner includes everything you'd expect in a premiere outlining application: fast, easy capture; intuitive editing; diverse templates; and robust styles. If you all you'd like to do with your outline is prepare a grocery list or balance your checkbook, OmniOutliner for iPad can help you do that. If you're looking for something a bit more complex, OmniOutliner is designed to expand organically with your needs. Advanced options are there when you need them, and stay out of your way when you don't. Everything's been designed with iPad—and your fingertips—in mind: flexible style options; intelligent row creation; notes; links and attachments; sharing; and more. Start your outlines on the iPad and continue on the desktop, or vice versa. OmniOutliner combines the functionality of a desktop app with the powerful mobile experience of iPad. It's a powerful system created by a company that's been in the Mac business—and providing free customer support—for over 15 years. Who uses OmniOutliner? Business professionals, writers, students, parents, home users, and educators all rely on OmniOutliner for its unparalleled task management functionality. From complicated and intricate papers to a quick to-do list, some common-use examples include: • Restructuring an essay on the fly • Creating a number column to keep track of finances • Adding "Buy milk" to a grocery list • Using notes to expand on a principal idea • Creating visual allure with styles • Tapping checkboxes to keep track of completed agenda items • Using notes to expand on a principal idea 3 The Toolbar & Editbar When you launch OmniOutliner for the first time, you can start from scratch, or begin working with one of the built-in templates.
    [Show full text]
  • CS M15W: Client Side Web Development Using HTML/Javascript 1
    CS M15W: Client Side Web Development Using HTML/JavaScript 1 CS M15W: CLIENT SIDE WEB DEVELOPMENT USING HTML/ JAVASCRIPT Originator Loay Alnaji College Moorpark College Attach Support Documentation (as needed) CS M15W_Computer Programming_Moorpark_Analysis_Report.pdf CS M15W_SurveyedDataReport.docx CS M15W_SantaMonicaCatalog.pdf CS M15W_Minutes_1st CS Advisory Meeting_ 4-16-18_Esmaail Nikjeh (3).docx CS M15W_state approval letter_CCC000608536.pdf Discipline (CB01A) CS - Computer Science Course Number (CB01B) M15W Course Title (CB02) Client Side Web Development Using HTML/JavaScript Banner/Short Title ClientSide WebD HTML/JavaScrip Credit Type Credit Honors No Start Term Spring 2020 Catalog Course Description Introduces students to different methodologies used to develop webpages. Explains the syntax and semantics of Hyper Text Markup Language (HTML). Introduces the different tools to create dynamic and static webpages using Cascading Style Sheets (CSS) and JavaScript. Develops written, oral communication and analysis skills in students so they can review and critique web content from a developer's perspective. Taxonomy of Programs (TOP) Code (CB03) 0707.20 - *Database Design and Administration Course Credit Status (CB04) D (Credit - Degree Applicable) Course Transfer Status (CB05) (select one only) B (Transferable to CSU only) Course Basic Skills Status (CB08) N - The Course is Not a Basic Skills Course SAM Priority Code (CB09) C - Clearly Occupational Course Cooperative Work Experience Education Status (CB10) N - Is Not Part of a Cooperative
    [Show full text]
  • Help Link at the Top of Any Page to Open This Document
    CAMD Business System (CBS) Tutorial Welcome to the CAMD Business System. The purpose of this document is to guide CBS users through the modules in the updated CAMD Business System. You may use the CAMD Business System to: 1. View and modify your user profile; 2. Manage general accounts; 3. Transfer allowances; 4. Submit annual compliance information; 5. Manage agent relationships; 6. Manage feedback recipient relationships; 7. Manage Certificates of Representation, including information regarding plants, units, designated representatives, owners/operators, and generators, and 8. Manage responsible officials. You can jump to any topic you are interested in by clicking on the topic in the table of contents. Within the application, you may select the Help Link at the top of any page to open this document. June 16, 2021 1 Table of Contents Login ..........................................................................................................................................3 Your Profile ................................................................................................................................4 Reset Your Password…………………………………………………………….……………….11 Manage General Accounts……………………………………………………………………….15 Allowance Transfers ................................................................................................................. 27 Compliance ............................................................................................................................... 43 Edit Contact Information ..........................................................................................................
    [Show full text]
  • Apollo Twin USB Software Manual
    H I GH- R ESO L U T I O N I N TER F A C E with Realtime UAD Processing Apollo Twin USB Software Manual UAD Software Version 9 Manual Version 210429 www.uaudio.com Tip: Click any section or Table Of Contents page number to jump directly to that page. About This Manual ................................................................................ 6 For Apollo Twin USB .......................................................................................... 6 Introduction ......................................................................................... 7 Welcome To Apollo! ............................................................................................ 7 Apollo Software Features .................................................................................... 8 Apollo Documentation Overview ........................................................................ 10 Apollo Software Overview .................................................................................. 12 Installation & Setup ............................................................................ 14 System Requirements ...................................................................................... 14 Setup Overview ................................................................................................ 15 Software Installation ........................................................................................ 16 Windows Setup ...............................................................................................
    [Show full text]
  • Apollo Thunderbolt Console Software Manual
    H I GH- R ESO L U T I O N I N TER F A C E with Realtime UAD Processing Apollo Thunderbolt Software Manual UAD Software Version 9.11.0 Manual Version 191031 www.uaudio.com Tip: Click any section or Table Of Contents page number to jump directly to that page. About This Manual ................................................................................ 7 For Apollo models connected via Thunderbolt ....................................................... 7 Introduction ......................................................................................... 8 Welcome To Apollo! ............................................................................................ 8 Apollo Software Features .................................................................................... 9 Apollo Documentation Overview ........................................................................ 11 Additional Resources & Technical Support ......................................................... 12 Apollo Software Overview .................................................................................. 13 Installation & Setup ............................................................................ 15 Apollo Thunderbolt System Requirements .......................................................... 15 Software Setup ................................................................................................ 16 Windows Setup ................................................................................................ 17 What Next? ....................................................................................................
    [Show full text]
  • CSCC09 Programming on the Web
    CSCC09 Programming on the Web Thierry Sans Architecture of a Web Application Client Side Server Side Web Browser Web Server Web Technologies Content Resources Presentation management Client Side Processing The evolution of web applications The Virtuous Circle faster, better technology new usage How web technologies have changed? Ajax (interactivity) • Homogeneous implementation of • the standards • HTML 5 (multimedia) • Increasing speed of rendering and Javascript engines Better Better Standards Browsers Better Development Tools • Web-oriented languages • Web frameworks Consequence 1 (of 2) ➡ The application is moving from the server to the client ✓ Rich Content Traditional Web Platform Client Side Server Side Web Browsers Web Server Modern Web Platform Client Side Server Side Smartphones and Tablets Web Server Consequence 2 ➡ Data storage and data processing are moving from the desktop to the cloud ๏ Cloud Computing Customer Resources Management Accounting and Billing Collaboration E-Learning Web Portals Content Management Planning E-Health Where Web Applications are going Rich Content + Cloud Computing = A new way to think about software Web Technologies are at the heart of this change Emerging Web Platform Client Side Server Side Web-based Operating System Web Server Web applications from the developer’s perspective Why are web applications so popular? • Easy to deploy • Easy to maintain • Fast and reliable technology (especially browsers) What is challenging about web development • A large collection of languages, framework and dev
    [Show full text]
  • Predix Design System Contents
    Predix Design System Contents Predix Design System Overview 1 Create Modern Web Applications 1 About the Predix Design System 6 Application Development with the Predix Design System 7 Supported Browsers for Web Applications 9 Predix Design System Glossary 10 Use the Predix Design System 12 Using the Predix Design System 12 Setting Up the Predix Design System Developer Environment 13 Migrate to Predix Design System Cirrus 15 Migrating to Predix Design System Cirrus 15 New Predix UI Components for Predix Design System Cirrus 17 Deprecated Predix UI Components for Predix Design System Cirrus 18 Predix Design System Cirrus Design Changes 18 Predix Design System Cirrus API Changes 19 Get Started with Predix UI Components 26 About Predix UI Components 26 Getting Started with Predix UI Components 27 Using a Predix UI Component in a Web Application 27 Predix UI Basics 29 Predix UI Templates 30 Predix UI Components 31 Predix UI Datetime Components 33 Predix UI Mobile Components 33 Predix UI Data Visualization Components 34 Predix UI Vis Framework 35 Localize Predix UI Components 39 Localizing Predix UI Components 39 Localizing Text Strings 40 Localizing with the Moments.js Library 41 Localizing with the D3.js Library 44 Custom Locale Support 46 ii Predix Design System Theme Web Applications 51 Theming Web Applications 51 Styling a Predix UI Component 51 Applying a Theme to a Web Application 53 CSS Custom Properties Overview 54 CSS Custom Properties Reference 55 Get Started with Predix UI CSS Modules 56 About Predix UI CSS Modules 56 Getting Started with Predix UI CSS Modules 56 Predix UI CSS Visual Library 59 Predix UI CSS Layout Library 60 Predix UI CSS Utilities Library 61 Predix UI CSS Module Overview 62 Predix Design System Release Notes 66 Predix Design System Release Notes 66 iii Predix Design System Overview Create Modern Web Applications Web applications have evolved to implement many coordinated user functions and tasks traditionally associated with desktop software (for example, Google Docs and Microsoft Office).
    [Show full text]
  • Design and Testing of a Mobile Touchscreen Interface for Multi-Modal Biometric Capture
    This publication is available free of charge from http://dx.doi.org/10.6028/NIST.IR.8003 NISTIR 8003 Design and Testing of a Mobile Touchscreen Interface for Multi-Modal Biometric Capture Kristen K. Greene Ross J. Micheals Kayee Kwong Gregory P. Fiumara http://dx.doi.org/10.6028/NIST.IR.8003 This publication is available free of charge from http://dx.doi.org/10.6028/NIST.IR.8003 NISTIR 8003 Design and Testing of a Mobile Touchscreen Interface for Multi-Modal Biometric Capture Kristen K. Greene Ross J. Micheals Kayee Kwong Gregory P. Fiumara Information Access Division Information Technology Laboratory This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.IR.8003 May 2014 U.S. Department of Commerce Penny Pritzker, Secretary National Institute of Standards and Technology Patrick D. Gallagher, Under Secretary of Commerce for Standards and Technology and Director This publication is available free of charge from http://dx.doi.org/10.6028/NIST.IR.8003 DISCLAIMER Certain commercial entities, equipment, or materials may be identified in this document in order to describe an experimental procedure or concept adequately. Such identification is not intended to imply recommendation or endorsement by the National Institute of Standards and Technology, nor is it intended to imply that the entities, materials, or equipment are necessarily the best available for the purpose. ii This publication is available free of charge from http://dx.doi.org/10.6028/NIST.IR.8003 EXECUTIVE SUMMARY In this report, we describe in detail the design and usability testing of a touchscreen interface for multimodal biometric capture, an application called WSABI, Web Services for Acquiring Biometric Information.
    [Show full text]