Fix Firefox 25 Find-in-Page Bar

If you find the new Find in Page bar (cmd+F (Mac) or CTRL+F (other) ) a bit… ugly… with it’s right aligned buttons, here’s a fix that puts them together, makes the search box a bit wider, and adds some highlights when the buttons are “enabled”.

Create or change directory to (for Mac):

~/Library/Application Support/Firefox/Profiles/<Your Profile Name>/chrome

and create or edit userChrome.css

put this in userChrome.css:

/* adjust the width of the text field */
.findbar-textbox { width:30em !important; }

/* add a background color to the checked Highlight and Case sensitive buttons */
.findbar-highlight[checked]>label { background-color:#ff8 !important; }
.findbar-case-sensitive[checked]>label { background-color:#f88 !important; }

/* more possible tweaks */
/* Quick find - show buttons */
.findbar-container>*,.findbar-container>hbox>* { display:-moz-box; }

/* move spacer to a position before the close button */
/*
.findbar-container>spacer { -moz-box-ordinal-group:2 !important; }
.findbar-container>.findbar-closebutton { -moz-box-ordinal-group:3 !important; }
*/

@-moz-document url("chrome://browser/content/browser.xul") {
.findbar-container spacer { visibility: collapse }
.findbar-container .findbar-closebutton { -moz-box-ordinal-group: 0 }
}

@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* only needed once */

/* add text to Previous and Next buttons */
.findbar-find-previous label:after { content: "\00a0 Prev"; }
.findbar-find-next label:after { content: "\00a0 Next"; }

.findbar-container>spacer {display:none!important}

Apple, Jobs, and Forstall

The five years prior to his passing, Steve’s biggest dream was being pushed and pushed hard; billions were poured into Hardware Engineering, some of the best minds in RISC and GPU silicon design were poached from all areas of with no care for the expense.
Gaining PA Semi and then Intrinsity gave them a massive, very talented pool of silicon-level engineers, with former SPARC and iTanium designer Dan Dobberpuhl a major jewel in the engineering crown; Michael Papermaster from IBM’s POWER division was another.
The rot began when Dobberpuhl found out that Forstall had contracted Samsung to be the first fab for his team’s A4 SoC — he left campus instantly, not even bothering to empty his desk or say goodbyes.
Steve’s big dream — of having Apple branded information appliances that were 100% Apple, from the processor out — was being knobbled by an over-eager, uncontrollable Forstall.
THe iPhone 5’s A6 SoC not only featured hand-optimised logic, but utilised a non-spec instruction set, with the blessing of ARM Holdings. The first real field trial of a custom, competition-killer CPU was essentially hamstrung by Forstall, who being so insanely eager to see “his” product out there, jumped the gun by four months and again contracted Samsung to fab the A6.
Tim, not being technosavvy, went along with the proposal, not realising until later exactly what Forstall had done. Samsung are thieves, pure and simple.
Key design aspects of the A4 and A5 SoCs very quickly showed up in a new line of ARM-based “Exynos” SoCs from Samsung.
One does not bust a ball-sack pushing people beyond the limit to create a competition-crusher, only to hand the entire design over to your arch-rival on a silver fuckin’ platter!
THe Maps fiasco was the public reason for Forstall’s exit, but those on campus know the truth
Chipworks (the people who sonicx-blasted the top off an A6 so we could see inside) were the ones to draw attention to the raaaaather uncanny similarities in the power control circuitry of both the A4/A5 and the Exynos.
Dobberpuhl knew full well that Samsung can never be trusted with key IP, so he just up & left rather than having another minute of his genius stolen by the cunning Koreans (again).
The other key damage (although not really seen as such at the time) to His Arrogance’s legacy was to re-timeline the entire ARM project, which was done mostly for the saefty and continued mental health of his employees.
Jobs must have known his time was short and he pushed *HARD* on everyone associated with it. 15-hour days were not just common, he *expected* it, because he did.
And (for the coders and designers and engies and all the others who actually do the making of the things) it was nerve-wracking to know that His Arrogance could appear at your shoulder at any time and the first you knew he’d been standing there watching for five minutes was a hand pointing at your screen along with the words, “We don’t do that here. Get rid of this, take that out.”
Steve Jobs was a ruthless, hyperfocused, pottymouthed, arrogant sonofahounddog, but what made today’s Apple was his ability to wield a multi-billion-dollar company like a thousand-stringed scalpel to hone and whet and shape *his* vision, and let absolutely nothing get in his way.

Google Analytics

Google Analytics ChartI added some Google Analytics tracking to my site today in my geeky quest to further understand Google’s website tool offerings. Now to figure out something interesting to post about to drive some traffic… all 0’s makes for a very boring page-loads chart.

😕

GoogleTalk Dual Login Confusion Solved

So this has been bugging me lately, but I think that nothing has changed but my own personal usage pattern.  I use Google Talk (GTalk) on my phone and on my laptop, often switching between the two.  During the summer it seemed to work great, sending messages to both and making it easy to pick up where I left off in either direction.  Lately it seems I miss messages, or one client or the other drops offline and never sends messages I’ve entered (especially annoying on the Droid since it offers no way to re-send them!).  I’ll have to be more careful when switching clients:

The jabber protocol (Gtalk) allows you to keep several clients open at the same time. When someone contacts you, jabber broadcasts the message to all eligible clients simultaneously. Whichever client responds will be the sole recipient of all future messages. Once the chat is idle, the clients are reset and the process starts over again, with the next incoming message broadcasted to all eligible clients.