Using the Adobe PDF EMbed API with Vue 3

A long time ago, ok, February of last year, I posted about using the Adobe PDF Embed library with Vue.js: Using the PDF Embed API with Vue.js. The main issue with our Embed library and libraries like Vue is a "chicken and egg" issue. Basically, our docs tell you to add an event listener for our library to load, but it’s possible that the library has loaded before you add the event listener. Raymond Camden… more →
Posted in: JavaScript

Journey to the Moon in 3D

NASA’s Artemis program will build a Lunar Gateway space station which can then be used to establish a permanent home base on the Moon and to launch human missions to Mars. Unfortunately the launch date for Artemis 1 has been postponed on a number of occasions due to engineering problems and adverse weather conditions (with the latest planned launch yesterday postponed because of Hurricane Ian). Maps Mania… more →
Posted in: Interactive Maps

Set Brave as Default Browser from Command Line

I’ve been a huge fan of the Brave web browser for years. They’re crypto-friendly, provide native ad-blocking features, and even provide Tor integration. Whenever I set up new systems, I automate Brave as the default browser. You can use the following shell command to set Brave as the default browser: open -a "Brave Browser" --args --make-default-browser Brave has been an excellent browser with a progressive outlook web browsing. I recommend everyone use Brave! The post Set Brave as Default Browser from Command Line appeared first on David Walsh Blog. David Walsh Blog… more →
Posted in: JavaScript

The RAF Map of Post-War London

Layers of London is an interactive map which gives you access to lots of historic maps and historical information about the capital city. This morning I’ve being exploring the Layers of London RAF Aerial Collection (1945-1949). After World War II the Royal Air Force methodically flew over the whole of Britain to photograph the country from the air. This resulted in 24,000 photographs of London. Maps Mania… more →
Posted in: Interactive Maps

CSS :autofill

Autofilling HTML input elements is a frequent user action that can drastically improve user experience. Hell, we all autofill for our passwords and address information. But what control do we have when input elements have been autofilled? To add custom CSS styles to inputs whose contents have been autofilled by the browser, you can use the :autofill pseudo-class: input:autofill { border: 2px solid orange; } I’m really happy that browsers allow site and app developers to customize the styling of elements that have been changed by the browser. Autofill, to a degree, is an unnatural act, so signaling to that the value in an input was changed without control is important. Since different... more →
Posted in: JavaScript

Building a Web View of a Public Google Drive Folder

I’m working on a project to help with local initiatives and as part of that effort, I needed to look into creating a nice way to display, make available, etc., files stored in Google Drive. Google Drive lets you make a folder public, and to be honest, the interface isn’t too hard to use. I’ve got a folder you can open yourself at https://drive.google.com/drive/folders/1FYLaoscxWBV_BU5sFouf7XCrv7cKktBY?usp=sharing. Here’s how it looks if you don’t want to click. Raymond Camden… more →
Posted in: JavaScript

Documenting Russian Aggression in Ukraine

Over the last couple of weeks the Ukrainian army has made some incredible advances against the Russian occupying forces, retaking thousands of square miles in the east of the country. Video clips of joyous local citizens welcoming the liberating soldiers have been shared around the world. 360war wants to ensure that images of the damage caused by the occupying Russian army are also seen by Maps Mania… more →
Posted in: Interactive Maps

How to Inject a Global with Web Extensions in Manifest V3

For those of you not familiar with the world of web extension development, a storm is brewing with Chrome. Google will stop support for manifest version 2, which is what the vast majority of web extensions use. Manifest version 3 sees many changes but the largest change is moving from persistent background scripts to service workers. This…is…a…massive…change. Changes from manifest version 2 to version 3 include: Going from persistent background script to a service worker that can die after 5 minutes No use of <iframe elements or other DOM APIs from the service worker All APIs have become Promise-based Restrictions on content from a CSP perspective One function that... more →
Posted in: JavaScript
1 90 91 92 93 94 226