Matthew Miner's Basic-ish BlogMatthew Miner's Blog

Sometimes I might say something

In Android 8, Google added adaptive icons, essentially making all apps use the same shape for their icons. This is widely adopted now and you can often customize the shape. However, if you do not like the concept of adaptive icons and prefer the legacy icons where apps are free to use their own shapes, you are in much worse luck nowadays where seemingly everything only cares about adaptive icons. Most launchers don't even have an option to use non-adaptive icons. Many instead have options to for...

Continue Reading...

Part of the radical UI changes that accompanied recent Firefox updates was removing of Windows 10 accent color from the tab and menu bar.

Personally, I was very keen on restoring the rectangular tabs that attach and actually look like tabs. Thankfully, I found a wonderful GitHub project and a helpful reddit comment that combined accomplished that.

However, this still me with this ugly black-on-white-on-gray mess:

Firefox 92 with gray tab toolbar

If you like contrast and being able to distinguish elements or would ev...

Continue Reading...

How to Undo Firefox's "Close Tab Options" Changes?

Left: The new tab context menu in Firefox 78
Middle: The new tab context menu after adding extensions
Right: The new tab context menu after all changes (Also how the old menu looked)

When you right-click a tab, Firefox historically has had two options in the context menu that let you close multiple tabs at once: "Close Tabs to the Right" and "Close Other Tabs". These are self-explanatory and very useful buttons for people who do a lot of browsing and utilize both windows and tabs. However, in Firefox 78, Mozilla has moved these items into a submenu, largely eliminating their time-saving ability.

The Firefox 78 tab context menu showing the Close Multiple Tabs menu

This was justified by worries that people were closing too many tabs acci...

Continue Reading...

How to Scope CSS by Moving an Element to the Shadow DOM

Bakura demonstrating how to banish things to the shadow DOM in Yu-Gi-Oh!

(tl;dr: Jump to the actual moving)

Scope is an important concept in programming. It allows you to just write small sections of code to do what you need them to do without having to worry about something else in your code using the same name and messing everything up. Declarations (such as of variables or functions) will only be visible to code also in the same scope, usually some block of code.

MDN has a good example of the effects of scope in Javascript:

let x = 1;
if (x === 1) {...

Continue Reading...