Where Chrome and Safari 4 Fail

A lot of buzz going around about the new release of Safari which I must say seems plenty fast. I think this is more due to the fact that it doesn’t wait to start rendering stuff. Loading facebook is fast, but loading images on facebook is still painfully slow.

Anyways, I enjoy using Chrome because it is a painless and lightweight alternative to IE, although it does crash every now and then just like every other browser. Where the two new browsers fail is in support for new Windows 7 features like the title bar drag. While you can drag a Safari browser around by the tabs (which is a dumb idea) if you drag to the top and maximize, you can’t drag out of the maximized size. The same goes for Chrome, however I must give Chrome some props because it doesn’t use the entire top bar for two tabs!

What would be nice if Safari (and IE!) adopted Chrome’s look but implemented title bar drag by allowing users to drag from the area to the left and right of the tabs. Or if they abandoned the approach altogether and came back to a uniform look and feel to software.

Oh and thanks Google and Apple for not even using Aero!

PowerShell Script for Copying Libraries

Here is a nice little PowerShell script I have created for copying my FGF libraries to the projects that use them. I also hot-keyed the PowerShell window which makes distributing new FGF builds really easy.

function fgfDist
{
    # An array of platforms that need to be copied
    $platforms = "x86","Xbox 360","Zune"

    if($args.count -ne 0){
        $platforms = $args
    }

    # An array of destinations for copying
    $destinations = "M:\Code\Games\Galactic Defense\trunk\Libraries\",
                    "M:\Code\AIR\trunk\Libraries\"

    $source = "M:\Code\FGF\trunk\Bin\"
    $sourceSuffix = "\Debug"

    # Loop through all the destinations and all the platforms
    # For each platform, copy some files.
    foreach($destination in $destinations)
    {
        write-host "Starting copy to"$destination
        foreach($platform in $platforms)
        {
            $tempSource = $source + $platform + $sourceSuffix
            $tempDestination = $destination + $platform

            # Test if the folder exists
            if( Test-Path $tempSource ){
                if( !(Test-Path $tempDestination) ){
                    write-host "Creating directory."
                    new-item -path $destination -name $platform -type directory
                }
            }
            else{
                write-host "Could not find the source files for"$platform
                continue
            }

            # Get a list of DLL files that contains thrust as well as the FocusedGames.dll file.
            $thrustLibs = get-childItem $tempSource -force | ? {$_.extension -eq ".dll"}|where {$_.name -match "Thrust"}
            $coreLibs = get-childItem $tempSource -force | ? {$_.extension -eq ".dll"}|where {$_.name -match "FocusedGames\.dll"}

            if($thrustLibs){
                foreach($dll in $thrustLibs){
                    if( $dll -ne ""){
                        copy-item $tempSource\$dll $tempDestination
                        write-host "  Copied"$platform\$dll
                    }
                }
            }

            if($coreLibs){
                foreach($dll in $coreLibs){
                    if( $dll -ne ""){
                        copy-item $tempSource\$dll $tempDestination
                        write-host "  Copied"$platform\$dll
                    }
                }
            }
        }
    }
}