Navarr's Tech Side The Technical Side of my Life

19Mar/101

Dear Chrome: What the Hell is This?

I love that you finally added previews for each of your tabs, that amazing Windows 7 feature that all of your competitors adopted before you…

But what the light is this?  Why on earth are there this mini-windows, and why are the preview windows themselves so faded out?  Not to mention it doesn’t even WORK when you have Chrome minimized…

I love you Chrome, but you need to fix these in the next dev release.  NEED.

25Jan/100

Webkit JavaScript Notifications API

Something I learned about recently by following the updates being issued to Chrome, is that with today’s release they also pushed out the Webkit Notifications API to Chrome Stable (v4).  Surprisingly, this is actually the first I’ve heard of it’s existence.  I took a look and played around with it a bit, and it is qué cool.

Visit my Sandbox to see the code in action, or continue reading for some code excerpts.

15Dec/090

Hunting Down the Bugs – TwCLI on Chrome for Linux Beta

This is the first post of a new series, looking at some of the odder bugs encountered while developing for the expanding Web, no matter how basic a bug it may be.

Thanks to twitter user @paperfairy, a bug was discovered on my Command Line Twitter Client, TwCLI.

For some reason, when submitting a command in Chrome for Linux, the page would simply refresh, and the command would never be sent.  At first, I had no possible way to track down this bug.  I didn’t have a linux box (with a GUI, anyway) so I simply told him that it was unfortunate, but it’d have to stay a bug.  Until a recent post on lifehacker brought my attention to Portable Ubuntu. I immediately installed it, opened up the Chrome website in Firiefox, installed Chrome Beta, and headed over to TwCLI to see what was amiss.

Of course, it was a single line in a detection script to send Geo-Data to Twitter (as long as the user approved it, of course):

else if(google.gears) {

This single line was throwing an exception I hadn’t encountered in other browsers – Google wasn’t defined.  Oddly, I thought it would handle that properly, since google wasn’t defined, it would just skip over it, but instead it threw an error and halted all further javascript code.

The fix was simpler than tracking down the bug, I simply had to add this to the start of the javascript code:

try{ if(!google) { google = 0; } } catch(err) { google = 0; }

And voila, I had both a check for google, and a catch if it decided to throw errors while checking for it.

Whether this is a Chrome bug or not, I don’t know – I simply don’t know enough about JavaScript in order to say so either way.  But, are undefined variables supposed to throw errors, or are they simply supposed to return false?

5Sep/090

Chrome’s Next Steps on Windows 7

Back in August, Google Chrome introduced the Jumplist in the Developer’s Version of Chrome; the Jumplist being a new feature in Windows 7 that allows users to quickly and easily access tasks related to the program, as well as quickly open recently opened, and pinned files with the app.  With its new version, Google Chrome had added “Most Visited,” “Recently Opened,” and “Tasks” to its Jumplist.  Now, There are just a few more things Google needs to add to its Chrome web browser before it fits right in with Windows 7.

Tab Previews

image

In order to better compete with Microsoft’s new version of Internet Explorer 8 for Windows 7, Google needs to add previews for all open tabs on the web browser, allowing a user to quickly select the tab they want right from the Windows taskbar.

Status Indication

When Google Chrome is running in the background with that huge demo version of Adobe Premier Pro downloading, you really have no clue how far the download has gone without checking up on your downloads bar.  A quick fix for this would be easily adding the status in the Chrome icon like Windows Explorer does.

Other Things

What else do you think Google Chrome needs to add in order to fit in with the Windows 7 Operating System that will better improve its functionality?