CINXE.COM
Google Chrome Blog: May 2010
<!DOCTYPE html> <html class='v2 list-page' dir='ltr' itemscope='' itemtype='http://schema.org/Blog' lang='en' xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'> <head> <link href='https://www.blogger.com/static/v1/widgets/3566091532-css_bundle_v2.css' rel='stylesheet' type='text/css'/> <title> Google Chrome Blog: May 2010 </title> <meta content='width=device-width, height=device-height, minimum-scale=1.0, initial-scale=1.0, user-scalable=0' name='viewport'/> <meta content='IE=Edge' http-equiv='X-UA-Compatible'/> <meta content='Google Chrome Blog' property='og:title'/> <meta content='en_US' property='og:locale'/> <meta content='https://chrome.googleblog.com/2010/05/' property='og:url'/> <meta content='Google Chrome Blog' property='og:site_name'/> <!-- Twitter Card properties --> <meta content='Google Chrome Blog' property='og:title'/> <meta content='summary' name='twitter:card'/> <meta content='@googlechrome' name='twitter:creator'/> <link href='https://fonts.googleapis.com/css?family=Roboto:400italic,400,500,500italic,700,700italic' rel='stylesheet' type='text/css'/> <link href='https://fonts.googleapis.com/icon?family=Material+Icons' rel='stylesheet'/> <script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js' type='text/javascript'></script> <!-- End --> <style id='page-skin-1' type='text/css'><!-- /* <Group description="Header Color" selector="header"> <Variable name="header.background.color" description="Header Background" type="color" default="#ffffff"/> </Group> */ .header-outer { border-bottom: 1px solid #e0e0e0; background: #ffffff; } html, .Label h2, #sidebar .rss a, .BlogArchive h2, .FollowByEmail h2.title, .widget .post h2 { font-family: Roboto, sans-serif; } .plusfollowers h2.title, .post h2.title, .widget h2.title { font-family: Roboto, sans-serif; } .widget-item-control { height: 100%; } .widget.Header, #header { position: relative; height: 100%; width: 100%; } } .widget.Header .header-logo1 { float: left; margin-right: 15px; padding-right: 15px; border-right: 1px solid #ddd; } .header-title h2 { color: rgba(0,0,0,.54); display: inline-block; font-size: 40px; font-family: Roboto, sans-serif; font-weight: normal; line-height: 76px; vertical-align: top; } .header-inner { background-repeat: no-repeat; background-position: right 0px; } .post-author, .byline-author { font-size: 14px; font-weight: normal; color: #757575; color: rgba(0,0,0,.54); } .post-content .img-border { border: 1px solid rgb(235, 235, 235); padding: 4px; } .header-title a { text-decoration: none !important; } pre { border: 1px solid #bbbbbb; margin-top: 1em 0 0 0; padding: 0.99em; overflow-x: auto; overflow-y: auto; } pre, code { font-size: 9pt; background-color: #fafafa; line-height: 125%; font-family: monospace; } pre, code { color: #060; font: 13px/1.54 "courier new",courier,monospace; } .header-left .header-logo1 { width: 128px !important; } .header-desc { line-height: 20px; margin-top: 8px; } .fb-custom img, .twitter-custom img, .gplus-share img { cursor: pointer; opacity: 0.54; } .fb-custom img:hover, .twitter-custom img:hover, .gplus-share img:hover { opacity: 0.87; } .fb-like { width: 80px; } .post .share { float: right; } #twitter-share{ border: #CCC solid 1px; border-radius: 3px; background-image: -webkit-linear-gradient(top,#ffffff,#dedede); } .twitter-follow { background: url(//4.bp.blogspot.com/-8O7VcmcY32o/VSYkC2vUj7I/AAAAAAAAHeU/7mzo-JFgTgk/s1600/twitter-bird.png) no-repeat left center; padding-left: 18px; font: normal normal normal 11px/18px 'Helvetica Neue',Arial,sans-serif; font-weight: bold; text-shadow: 0 1px 0 rgba(255,255,255,.5); cursor: pointer; margin-bottom: 10px; } .twitter-fb { padding-top: 2px; } .fb-follow-button { background: -webkit-linear-gradient(#4c69ba, #3b55a0); background: -moz-linear-gradient(#4c69ba, #3b55a0); background: linear-gradient(#4c69ba, #3b55a0); border-radius: 2px; height: 18px; padding: 4px 0 0 3px; width: 57px; border: #4c69ba solid 1px; } .fb-follow-button a { text-decoration: none !important; text-shadow: 0 -1px 0 #354c8c; text-align: center; white-space: nowrap; font-size: 11px; color: white; vertical-align: top; } .fb-follow-button a:visited { color: white; } .fb-follow { padding: 0px 5px 3px 0px; width: 14px; vertical-align: bottom; } .gplus-wrapper { margin-top: 3px; display: inline-block; vertical-align: top; } .twitter-custom, .gplus-share { margin-right: 12px; } .fb-follow-button{ margin: 10px auto; } /** CUSTOM CODE **/ --></style> <style id='template-skin-1' type='text/css'><!-- .header-outer { clear: both; } .header-inner { margin: auto; padding: 0px; } .footer-outer { background: #f5f5f5; clear: both; margin: 0; } .footer-inner { margin: auto; padding: 0px; } .footer-inner-2 { /* Account for right hand column elasticity. */ max-width: calc(100% - 248px); } .google-footer-outer { clear: both; } .cols-wrapper, .google-footer-outer, .footer-inner, .header-inner { max-width: 978px; margin-left: auto; margin-right: auto; } .cols-wrapper { margin: auto; clear: both; margin-top: 60px; margin-bottom: 60px; overflow: hidden; } .col-main-wrapper { float: left; width: 100%; } .col-main { margin-right: 278px; max-width: 660px; } .col-right { float: right; width: 248px; margin-left: -278px; } /* Tweaks for layout mode. */ body#layout .google-footer-outer { display: none; } body#layout .header-outer, body#layout .footer-outer { background: none; } body#layout .header-inner { height: initial; } body#layout .cols-wrapper { margin-top: initial; margin-bottom: initial; } --></style> <!-- start all head --> <meta content='text/html; charset=UTF-8' http-equiv='Content-Type'/> <meta content='blogger' name='generator'/> <link href='https://chrome.googleblog.com/favicon.ico' rel='icon' type='image/x-icon'/> <link href='https://chrome.googleblog.com/2010/05/' rel='canonical'/> <link rel="alternate" type="application/atom+xml" title="Google Chrome Blog - Atom" href="https://chrome.googleblog.com/feeds/posts/default" /> <link rel="alternate" type="application/rss+xml" title="Google Chrome Blog - RSS" href="https://chrome.googleblog.com/feeds/posts/default?alt=rss" /> <link rel="service.post" type="application/atom+xml" title="Google Chrome Blog - Atom" href="https://www.blogger.com/feeds/2250394496987063687/posts/default" /> <!--Can't find substitution for tag [blog.ieCssRetrofitLinks]--> <meta content='https://chrome.googleblog.com/2010/05/' property='og:url'/> <meta content='Google Chrome Blog' property='og:title'/> <meta content='The latest news from the Google Chrome team' property='og:description'/> <!-- end all head --> <base target='_self'/> <style> html { font-family: Roboto, sans-serif; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; } body { padding: 0; /* This ensures that the scroll bar is always present, which is needed */ /* because content render happens after page load; otherwise the header */ /* would "bounce" in-between states. */ min-height: 150%; } h2 { font-size: 16px; } h1, h2, h3, h4, h5 { line-height: 2em; } html, h4, h5, h6 { font-size: 14px; } a, a:visited { color: #4184F3; text-decoration: none; } a:focus, a:hover, a:active { text-decoration: none; } .Header { margin-top: 15px; } .Header h1 { font-size: 32px; font-weight: 300; line-height: 32px; height: 42px; } .header-inner .Header .titlewrapper { padding: 0; margin-top: 30px; } .header-inner .Header .descriptionwrapper { padding: 0; margin: 0; } .cols-wrapper { margin-top: 56px; } .header-outer, .cols-wrapper, .footer-outer, .google-footer-outer { padding: 0 60px; } .header-inner { height: 256px; position: relative; } html, .header-inner a { color: #212121; color: rgba(0,0,0,.87); } .header-inner .google-logo { display: inline-block; background-size: contain; z-index: 1; height: 75px; overflow: hidden; margin-top: 4px; margin-right: 8px; } .header-left { position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); margin-top: 12px; width: 100%; } .google-logo { margin-left: -4px; } #google-footer { position: relative; font-size: 13px; list-style: none; text-align: right; } #google-footer a { color: #444; } #google-footer ul { margin: 0; padding: 0; height: 144px; line-height: 144px; } #google-footer ul li { display: inline; } #google-footer ul li:before { color: #999; content: "\00b7"; font-weight: bold; margin: 5px; } #google-footer ul li:first-child:before { content: ''; } #google-footer .google-logo-dark { left: 0; margin-top: -16px; position: absolute; top: 50%; } /** Sitemap links. **/ .footer-inner-2 { font-size: 14px; padding-top: 42px; padding-bottom: 74px; } .footer-inner-2 .HTML h2 { color: #212121; color: rgba(0,0,0,.87); font-size: 14px; font-weight: 500; padding-left: 0; margin: 10px 0; } .footer-inner-2 .HTML ul { font-weight: normal; list-style: none; padding-left: 0; } .footer-inner-2 .HTML li { line-height: 24px; padding: 0; } .footer-inner-2 li a { color: rgba(65,132,243,.87); } /** Archive widget. **/ .BlogArchive { font-size: 13px; font-weight: normal; } .BlogArchive .widget-content { display: none; } .BlogArchive h2, .Label h2 { color: #4184F3; text-decoration: none; } .BlogArchive .hierarchy li { display: inline-block; } /* Specificity needed here to override widget CSS defaults. */ .BlogArchive #ArchiveList ul li, .BlogArchive #ArchiveList ul ul li { margin: 0; padding-left: 0; text-indent: 0; } .BlogArchive .intervalToggle { cursor: pointer; } .BlogArchive .expanded .intervalToggle .new-toggle { -ms-transform: rotate(180deg); transform: rotate(180deg); } .BlogArchive .new-toggle { float: right; padding-top: 3px; opacity: 0.87; } #ArchiveList { text-transform: uppercase; } #ArchiveList .expanded > ul:last-child { margin-bottom: 16px; } #ArchiveList .archivedate { width: 100%; } /* Months */ .BlogArchive .items { max-width: 150px; margin-left: -4px; } .BlogArchive .expanded .items { margin-bottom: 10px; overflow: hidden; } .BlogArchive .items > ul { float: left; height: 32px; } .BlogArchive .items a { padding: 0 4px; } .Label { font-size: 13px; font-weight: normal; } .sidebar-icon { display: inline-block; width: 24px; height: 24px; vertical-align: middle; margin-right: 12px; margin-top: -1px } .Label a { margin-right: 4px; } .Label .widget-content { display: none; } .FollowByEmail { font-size: 13px; font-weight: normal; } .FollowByEmail h2 { background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAALCAYAAACZIGYHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAUBJREFUeNrMkSGLAlEUhb+ZB4JFi8mx2cz+ApvhRUGTcUCrNqNJDYIi+DO0GUwmQXDK2DSIoGgZcSaIjDrzwrK4ssvChj1w0733O+fdp+m6PozH4yQSCfb7Pa7r8pOi0SjJZBLP8zgej4gAIMvlMuPxmADIYrHger1+C6lUKmo+NJ/NZojb7SZDWiwWo1qtks1msW2bw+HwZdkwDHq9HvV6nel0SqvVYrvdIh6Ph3Qch+VyqRYLhQJSSjRNw7IsfN9XgGKxSLfbJZfL0e/3aTabrFYr7vc7IujLcOh8PqunrNdr0uk0pVKJVCpFJBJRgEajweVyod1uMxgM2O12BAGUgRbU8DV2JpOhVquRz+cRQii3+XxOp9NRN3jVR5LPOp1OjEYjlSL8hclkgmmabDabt4d+m+S30vkD/R/IU4ABAPTZgnZdmG/PAAAAAElFTkSuQmCC"); background-repeat: no-repeat; background-position: 0 50%; text-indent: 30px; } .FollowByEmail .widget-content { display: none; } .searchBox input { border: 1px solid #eee; color: #212121; color: rgba(0,0,0,.87); font-size: 14px; padding: 8px 8px 8px 40px; width: 164px; font-family: Roboto, sans-serif; background: url("https://www.gstatic.com/images/icons/material/system/1x/search_grey600_24dp.png") 8px center no-repeat; } .searchBox ::-webkit-input-placeholder { /* WebKit, Blink, Edge */ color: rgba(0,0,0,.54); } .searchBox :-moz-placeholder { /* Mozilla Firefox 4 to 18 */ color: #000; opacity: 0.54; } .searchBox ::-moz-placeholder { /* Mozilla Firefox 19+ */ color: #000; opacity: 0.54; } .searchBox :-ms-input-placeholder { /* Internet Explorer 10-11 */ color: #757575; } .widget-item-control { margin-top: 0px; } .section { margin: 0; padding: 0; } #sidebar-top { border: 1px solid #eee; } #sidebar-top > div { margin: 16px 0; } .widget ul { line-height: 1.6; } /*main post*/ .post { margin-bottom:30px; } #main .post .title { margin: 0; } #main .post .title a { color: #212121; color: rgba(0,0,0,.87); font-weight: normal; font-size: 24px; } #main .post .title a:hover { text-decoration:none; color:#4184F3; } .message, #main .post .post-header { margin: 0; padding: 0; } #main .post .post-header .caption, #main .post .post-header .labels-caption, #main .post .post-footer .caption, #main .post .post-footer .labels-caption { color: #444; font-weight: 500; } #main .tr-caption-container td { text-align: left; } #main .post .tr-caption { color: #757575; color: rgba(0,0,0,.54); display: block; max-width: 560px; padding-bottom: 20px; } #main .post .tr-caption-container { line-height: 24px; margin: -1px 0 0 0 !important; padding: 4px 0; text-align: left; } #main .post .post-header .published{ font-size:11px; font-weight:bold; } .post-header .publishdate { font-size: 17px; font-weight:normal; color: #757575; color: rgba(0,0,0,.54); } #main .post .post-footer{ font-size:12px; padding-bottom: 21px; } .label-footer { margin-bottom: 12px; margin-top: 12px; } .comment-img { margin-right: 16px; opacity: 0.54; vertical-align: middle; } #main .post .post-header .published { margin-bottom: 40px; margin-top: -2px; } .post .post-content { color: #212121; color: rgba(0,0,0,.87); font-size: 17px; margin: 25px 0 36px 0; line-height: 32px; } .post-body .post-content ul, .post-body .post-content ol { margin: 16px 0; padding: 0 48px; } .post-summary { display: none; } /* Another old-style caption. */ .post-content div i, .post-content div + i { font-size: 14px; font-style: normal; color: #757575; color: rgba(0,0,0,.54); display: block; line-height: 24px; margin-bottom: 16px; text-align: left; } /* Another old-style caption (with link) */ .post-content a > i { color: #4184F3 !important; } /* Old-style captions for images. */ .post-content .separator + div:not(.separator) { margin-top: -16px; } /* Capture section headers. */ .post-content br + br + b, .post-content .space + .space + b, .post-content .separator + b { display: inline-block; margin-bottom: 8px; margin-top: 24px; } .post-content li { line-height: 32px; } /* Override all post images/videos to left align. */ .post-content .separator, .post-content > div { text-align: left; } .post-content .separator > a, .post-content .separator > span { margin-left: 0 !important; } .post-content img { max-width: 100%; height: auto; width: auto; } .post-content .tr-caption-container img { margin-bottom: 12px; } .post-content iframe, .post-content embed { max-width: 100%; } .post-content .carousel-container { margin-bottom: 48px; } #main .post-content b { font-weight: 500; } /* These are the main paragraph spacing tweaks. */ #main .post-content br { content: ' '; display: block; padding: 4px; } .post-content .space { display: block; height: 8px; } .post-content iframe + .space, .post-content iframe + br { padding: 0 !important; } #main .post .jump-link { margin-bottom:10px; } .post-content img, .post-content iframe { margin: 30px 0 20px 0; } .post-content > img:first-child, .post-content > iframe:first-child { margin-top: 0; } .col-right .section { padding: 0 16px; } #aside { background:#fff; border:1px solid #eee; border-top: 0; } #aside .widget { margin:0; } #aside .widget h2, #ArchiveList .toggle + a.post-count-link { color: #212121; color: rgba(0,0,0,.87); font-weight: 400 !important; margin: 0; } #ArchiveList .toggle { float: right; } #ArchiveList .toggle .material-icons { padding-top: 4px; } #sidebar .tab { cursor: pointer; } #sidebar .tab .arrow { display: inline-block; float: right; } #sidebar .tab .icon { display: inline-block; vertical-align: top; height: 24px; width: 24px; margin-right: 13px; margin-left: -1px; margin-top: 1px; color: #757575; color: rgba(0,0,0,.54); } #sidebar .widget-content > :first-child { padding-top: 8px; } #sidebar .active .tab .arrow { -ms-transform: rotate(180deg); transform: rotate(180deg); } #sidebar .arrow { color: #757575; color: rgba(0,0,0,.54); } #sidebar .widget h2 { font-size: 14px; line-height: 24px; display: inline-block; } #sidebar .widget .BlogArchive { padding-bottom: 8px; } #sidebar .widget { border-bottom: 1px solid #eee; box-shadow: 0px 1px 0 white; margin-bottom: 0; padding: 14px 0; min-height: 20px; } #sidebar .widget:last-child { border-bottom: none; box-shadow: none; margin-bottom: 0; } #sidebar ul { margin: 0; padding: 0; } #sidebar ul li { list-style:none; padding:0; } #sidebar ul li a { line-height: 32px; } #sidebar .archive { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAYCAYAAADzoH0MAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAE1JREFUeNpiNDY23s9AAWBioBCwYBM8c+YMVsUmJibEGYBNMS5DaeMFfDYSZQA2v9I3FrB5AZeriI4FmnrBccCT8mhmGs1MwyAzAQQYAKEWG9zm9QFEAAAAAElFTkSuQmCC"); height: 24px; line-height: 24px; padding-left: 30px; } #sidebar .labels { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAYAAAA7bUf6AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAUxJREFUeNpiNDY23s9AAMycOfM7UF05kHkZmzwTMkdSUhKrIcXFxZy3bt3qBjIN8RrS09PDsHnzZjCNDr58+cKQlpbGDjSoHcg1w2oIyAUODg5gARCNzUVIBrUCuVYYhjx//pzhwIEDYAEQDeJjA1CDWIAGNQK59jBxRuSABbkAlwHIgIeHh2HWrFn/1NTU2oDcvSgBS4wBSC5iArqoCsj1YGIgEyAZVMoEchqlBjEB/cZAiUHg2AEGznpKDAImxOeM////B4VLKtBvEUCngZ1ILKivr3/u6+ubBzJAGZQ9gC5aQoqLgAY8BhkAZL4BuQQkxgXE34A4BuiiZEIuAhrwEGhAEZD5DpzYoIaA2UAM4kQADUrHZRDUgAIg8wO2XAwzbQXQa5OweQ1owB10AyA6gS7BgX1u3ry5397eHow3bdo0EyjGi00tQIABANPgyAH1q1eaAAAAAElFTkSuQmCC"); height: 20px; line-height: 20px; padding-left: 30px; } #sidebar .rss a { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAX5JREFUeNqsVDGSgkAQHL2rIiIikohIc/EBRkbwAIwuwgfwAXiAD9AHSI7kEkECRCb6AIyINDLx7K0aa6kT7uq0q7YYtnZ7umdnt7darXbr9Zpegeu61DNNc0dvwCcH4/GYJpMJnc9nOhwOVJbl/4hAAokMECZJQtvt9k+kH7qufyEYDAakqqqYxFdRFBqNRmTbNg2HQ0rTlK7XayvR0xqBdDqdkuM4dE/0ULhYLOh4PHYrknG5XGi/31MYhuL/nkwonM1mlGUZ1XXdrsiyLGEDhY7juJEZ1u5tIixDGdYhmYw+B7CAzPP5nDabjdgIAgCksMX1832/3drtdqPT6SQWapomiGEFNkDEdpDMMAzK81ys/7XYy+XyoQgq2WoURSIJ2iIIgp/WZCCTvFm2wgeAU31aI3Q2GhIDMeB53qPYPIcm5VrxXIOIOxsDMStjVawAc1VViRgN22lNBiuQN3GR+SY07hpOoStmFQAKXRRFY93bnpG+fONfedi+BRgAbkS8Fxp7QQIAAAAASUVORK5CYII="); } #sidebar .subscription a { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAALCAYAAACZIGYHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAUBJREFUeNrMkSGLAlEUhb+ZB4JFi8mx2cz+ApvhRUGTcUCrNqNJDYIi+DO0GUwmQXDK2DSIoGgZcSaIjDrzwrK4ssvChj1w0733O+fdp+m6PozH4yQSCfb7Pa7r8pOi0SjJZBLP8zgej4gAIMvlMuPxmADIYrHger1+C6lUKmo+NJ/NZojb7SZDWiwWo1qtks1msW2bw+HwZdkwDHq9HvV6nel0SqvVYrvdIh6Ph3Qch+VyqRYLhQJSSjRNw7IsfN9XgGKxSLfbJZfL0e/3aTabrFYr7vc7IujLcOh8PqunrNdr0uk0pVKJVCpFJBJRgEajweVyod1uMxgM2O12BAGUgRbU8DV2JpOhVquRz+cRQii3+XxOp9NRN3jVR5LPOp1OjEYjlSL8hclkgmmabDabt4d+m+S30vkD/R/IU4ABAPTZgnZdmG/PAAAAAElFTkSuQmCC"); } #sidebar-bottom { background: #f5f5f5; border-top:1px solid #eee; } #sidebar-bottom .widget { border-bottom: 1px solid #e0e0e0; padding: 15px 0; text-align: center; } #sidebar-bottom > div:last-child { border-bottom: 0; } #sidebar-bottom .text { line-height: 20px; } /* Home, forward, and backward pagination. */ .blog-pager { border-top : 1px #e0e0e0 solid; padding-top: 10px; margin-top: 15px; text-align: right !important; } #blog-pager { margin-botom: 0; margin-top: -14px; padding: 16px 0 0 0; } #blog-pager a { display: inline-block; } .blog-pager i.disabled { opacity: 0.2 !important; } .blog-pager i { color: black; margin-left: 16px; opacity: 0.54; } .blog-pager i:hover, .blog-pager i:active { opacity: 0.87; } #blog-pager-older-link, #blog-pager-newer-link { float: none; } .gplus-profile { background-color: #fafafa; border: 1px solid #eee; overflow: hidden; width: 212px; } .gplus-profile-inner { margin-left: -1px; margin-top: -1px; } /* Sidebar follow buttons. */ .followgooglewrapper { padding: 12px 0 0 0; } .loading { visibility: hidden; } .detail-page .post-footer .cmt_iframe_holder { padding-top: 40px !important; } /** Desktop **/ @media (max-width: 900px) { .col-right { display: none; } .col-main { margin-right: 0; min-width: initial; } .footer-outer { display: none; } .cols-wrapper { min-width: initial; } .google-footer-outer { background-color: #f5f5f5; } } /** Tablet **/ @media (max-width: 712px) { .header-outer, .cols-wrapper, .footer-outer, .google-footer-outer { padding: 0 40px; } } /* An extra breakpoint accommodating for long blog titles. */ @media (max-width: 600px) { .header-left { height: 100%; top: inherit; margin-top: 0; -webkit-transform: initial; transform: initial; } .header-title { margin-top: 18px; } .header-inner .google-logo { height: 48px; margin-top: 3px; } .header-inner .google-logo img { height: 48px; } .header-title h2 { font-size: 32px; line-height: 56px; } .header-desc { bottom: 24px; position: absolute; } } /** Mobile/small desktop window; also landscape. **/ @media (max-width: 480px), (max-height: 480px) { .header-outer, .cols-wrapper, .footer-outer, .google-footer-outer { padding: 0 16px; } .cols-wrapper { margin-top: 0; } .post-header .publishdate, .post .post-content { font-size: 16px; } .post .post-content { line-height: 28px; margin-bottom: 30px; } .post { margin-top: 30px; } .byline-author { display: block; font-size: 12px; line-height: 24px; margin-top: 6px; } #main .post .title a { font-weight: 500; color: #4c4c4c; color: rgba(0,0,0,.70); } #main .post .post-header { padding-bottom: 12px; } #main .post .post-header .published { margin-bottom: -8px; margin-top: 3px; } .post .read-more { display: block; margin-top: 14px; } .post .tr-caption { font-size: 12px; } #main .post .title a { font-size: 20px; line-height: 30px; } .post-content iframe { /* iframe won't keep aspect ratio when scaled down. */ max-height: 240px; } .post-content .separator img, .post-content .tr-caption-container img, .post-content iframe { margin-left: -16px; max-width: inherit; width: calc(100% + 32px); } .post-content table, .post-content td { width: 100%; } #blog-pager { margin: 0; padding: 16px 0; } /** List page tweaks. **/ .list-page .post-original { display: none; } .list-page .post-summary { display: block; } .list-page .comment-container { display: none; } .list-page #blog-pager { padding-top: 0; border: 0; margin-top: -8px; } .list-page .label-footer { display: none; } .list-page #main .post .post-footer { border-bottom: 1px solid #eee; margin: -16px 0 0 0; padding: 0 0 20px 0; } .list-page .post .share { display: none; } /** Detail page tweaks. **/ .detail-page .post-footer .cmt_iframe_holder { padding-top: 32px !important; } .detail-page .label-footer { margin-bottom: 0; } .detail-page #main .post .post-footer { padding-bottom: 0; } .detail-page #comments { display: none; } } [data-about-pullquote], [data-is-preview], [data-about-syndication] { display: none; } </style> <noscript> <style> .loading { visibility: visible }</style> </noscript> <script type='text/javascript'> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-1870203-70', 'auto', 'blogger'); ga('blogger.send', 'pageview'); </script> <link href='https://www.blogger.com/dyn-css/authorization.css?targetBlogID=2250394496987063687&zx=062e6afe-d900-475a-bcea-e35960dea542' media='none' onload='if(media!='all')media='all'' rel='stylesheet'/><noscript><link href='https://www.blogger.com/dyn-css/authorization.css?targetBlogID=2250394496987063687&zx=062e6afe-d900-475a-bcea-e35960dea542' rel='stylesheet'/></noscript> <meta name='google-adsense-platform-account' content='ca-host-pub-1556223355139109'/> <meta name='google-adsense-platform-domain' content='blogspot.com'/> </head> <body> <script type='text/javascript'> //<![CDATA[ var axel = Math.random() + ""; var a = axel * 10000000000000; document.write('<iframe src="https://2542116.fls.doubleclick.net/activityi;src=2542116;type=gblog;cat=googl0;ord=ord=' + a + '?" width="1" height="1" frameborder="0" style="display:none"></iframe>'); //]]> </script> <noscript> <img alt='' height='1' src='https://ad.doubleclick.net/ddm/activity/src=2542116;type=gblog;cat=googl0;ord=1?' width='1'/> </noscript> <!-- Header --> <div class='header-outer'> <div class='header-inner'> <div class='section' id='header'><div class='widget Header' data-version='1' id='Header1'> <div class='header-left'> <div class='header-title'> <a class='google-logo' href='https://chrome.googleblog.com/'> <img height="70" src="//4.bp.blogspot.com/-Nyfdpymc_Lo/VkQw-nJ79mI/AAAAAAAARYg/6o9VeoTvu-I/s1600-r/logo_chrome.png"> </a> <a href='/.'> <h2> Chrome Blog </h2> </a> </div> <div class='header-desc'> The latest news from the Google Chrome team </div> </div> </div></div> </div> </div> <!-- all content wrapper start --> <div class='cols-wrapper loading'> <div class='col-main-wrapper'> <div class='col-main'> <div class='section' id='main'><div class='widget Blog' data-version='1' id='Blog1'> <div class='post' data-id='9048460298628478572' itemscope='' itemtype='http://schema.org/BlogPosting'> <h2 class='title' itemprop='name'> <a href='https://chrome.googleblog.com/2010/05/new-chrome-stable-release-welcome-mac.html' itemprop='url' title='A new Chrome stable release: Welcome, Mac and Linux!'> A new Chrome stable release: Welcome, Mac and Linux! </a> </h2> <div class='post-header'> <div class='published'> <span class='publishdate' itemprop='datePublished'> Tuesday, May 25, 2010 </span> </div> </div> <div class='post-body'> <div class='post-content' itemprop='articleBody'> <script type='text/template'> In our <a href="http://chrome.blogspot.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html">most recent beta release</a>, we fired up all engines to bring to life our <a href="//www.youtube.com/watch?v=nCgQDjiotG0&hd=1">fastest version</a> of Chrome to date. <br /><br />Today, we’re bringing all this beta goodness to the stable channel so that it’s available to all Chrome users. We’re particularly excited to bring Chrome for Mac and Linux out of beta, and introduce Chrome’s first stable release for Mac and Linux users. You can read more about the Mac and Linux stable releases on the <a href="http://googlemac.blogspot.com/2010/05/google-chrome-for-mac-ready-beta-now.html">Google Mac</a> and <a href="http://blog.chromium.org/2010/05/google-chrome-for-linux-goes-stable.html">Chromium</a> blogs respectively. <br /><br />Today’s stable release also comes with a host of new features. You’ll be able to synchronize not only <a href="http://chrome.blogspot.com/2009/11/bookmark-sync-and-more-speed-in-latest.html">bookmarks</a> across multiple computers, but also <a href="//www.google.com/support/chrome/bin/answer.py?answer=165138">browser preferences</a> -- including themes, homepage and startup settings, web content settings, preferred languages, and even page zoom settings. Meanwhile, for avid <a href="http://chrome.google.com/extensions">extensions</a> users, you can enable each extension to work in incognito mode through the <a href="//www.google.com/support/chrome/bin/answer.py?hl=en&answer=167997">extensions manager</a>. <br /><br />Our stable release also incorporates <a href="http://en.wikipedia.org/wiki/HTML5">HTML5</a> features such as <a href="http://en.wikipedia.org/wiki/W3C_Geolocation_API">Geolocation APIs</a>, <a href="http://dev.w3.org/html5/spec/Overview.html#appcache">App Cache</a>, <a href="http://en.wikipedia.org/wiki/Web_Sockets">web sockets</a>, and file <a href="http://dev.w3.org/html5/spec/Overview.html#dnd">drag-and-drop</a>. For a taste of HTML5’s powerful features, try browsing through websites developed in HTML5 such as scribd.com, <a href="http://gmailblog.blogspot.com/2010/04/drag-and-drop-attachments-onto-messages.html">dragging and dropping attachments</a> in Gmail, or by enabling the <a href="http://google-latlong.blogspot.com/2009/07/blue-circle-comes-to-your-desktop.html">geolocation functionality</a> in Google Maps. We’ve also given Chrome’s bookmark manager a facelift with HTML5:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip7TfeOoE2MwpURzQAYbcrm7ebixUJHg1TTdcAXZ0AFi2Zzbw6tdKsmJkF16w1wDrb2WGIzhkcOcdDC9uTGOeUflLoNHCLZJ3k6yfT534RYPKv6nDrlwr7Oe6i_O92YBptvV4qXaOjxTl_/s1600/bookmarkmanager.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5475216805975960770" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip7TfeOoE2MwpURzQAYbcrm7ebixUJHg1TTdcAXZ0AFi2Zzbw6tdKsmJkF16w1wDrb2WGIzhkcOcdDC9uTGOeUflLoNHCLZJ3k6yfT534RYPKv6nDrlwr7Oe6i_O92YBptvV4qXaOjxTl_/s400/bookmarkmanager.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 313px;" /></a><br /><br />In recent weeks, we’ve been beta-testing <a href="http://blog.chromium.org/2010/03/bringing-improved-support-for-adobe.html">Adobe Flash Player integration into Chrome</a>. While Flash Player integration in the browser is not included by default in today’s stable release, we’re excited to enable this feature with the full release of Flash Player (version 10.1) soon.<br /><br />If you’re already using Chrome for Windows, Mac or Linux, you’ll be auto-updated to this latest release soon. You can also try out these new features on our speedy browser now, by downloading Chrome from <a href="//www.google.com/chrome">google.com/chrome</a>.<br /><br /><br /><span class="post-author">Posted by Brian Rakowski, Product Manager</span> <span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://plus.google.com/116899029375914044550' itemprop='url'/> </span> </script> <noscript> In our <a href="http://chrome.blogspot.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html">most recent beta release</a>, we fired up all engines to bring to life our <a href="//www.youtube.com/watch?v=nCgQDjiotG0&hd=1">fastest version</a> of Chrome to date. <br /><br />Today, we’re bringing all this beta goodness to the stable channel so that it’s available to all Chrome users. We’re particularly excited to bring Chrome for Mac and Linux out of beta, and introduce Chrome’s first stable release for Mac and Linux users. You can read more about the Mac and Linux stable releases on the <a href="http://googlemac.blogspot.com/2010/05/google-chrome-for-mac-ready-beta-now.html">Google Mac</a> and <a href="http://blog.chromium.org/2010/05/google-chrome-for-linux-goes-stable.html">Chromium</a> blogs respectively. <br /><br />Today’s stable release also comes with a host of new features. You’ll be able to synchronize not only <a href="http://chrome.blogspot.com/2009/11/bookmark-sync-and-more-speed-in-latest.html">bookmarks</a> across multiple computers, but also <a href="//www.google.com/support/chrome/bin/answer.py?answer=165138">browser preferences</a> -- including themes, homepage and startup settings, web content settings, preferred languages, and even page zoom settings. Meanwhile, for avid <a href="http://chrome.google.com/extensions">extensions</a> users, you can enable each extension to work in incognito mode through the <a href="//www.google.com/support/chrome/bin/answer.py?hl=en&answer=167997">extensions manager</a>. <br /><br />Our stable release also incorporates <a href="http://en.wikipedia.org/wiki/HTML5">HTML5</a> features such as <a href="http://en.wikipedia.org/wiki/W3C_Geolocation_API">Geolocation APIs</a>, <a href="http://dev.w3.org/html5/spec/Overview.html#appcache">App Cache</a>, <a href="http://en.wikipedia.org/wiki/Web_Sockets">web sockets</a>, and file <a href="http://dev.w3.org/html5/spec/Overview.html#dnd">drag-and-drop</a>. For a taste of HTML5’s powerful features, try browsing through websites developed in HTML5 such as scribd.com, <a href="http://gmailblog.blogspot.com/2010/04/drag-and-drop-attachments-onto-messages.html">dragging and dropping attachments</a> in Gmail, or by enabling the <a href="http://google-latlong.blogspot.com/2009/07/blue-circle-comes-to-your-desktop.html">geolocation functionality</a> in Google Maps. We’ve also given Chrome’s bookmark manager a facelift with HTML5:<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip7TfeOoE2MwpURzQAYbcrm7ebixUJHg1TTdcAXZ0AFi2Zzbw6tdKsmJkF16w1wDrb2WGIzhkcOcdDC9uTGOeUflLoNHCLZJ3k6yfT534RYPKv6nDrlwr7Oe6i_O92YBptvV4qXaOjxTl_/s1600/bookmarkmanager.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5475216805975960770" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip7TfeOoE2MwpURzQAYbcrm7ebixUJHg1TTdcAXZ0AFi2Zzbw6tdKsmJkF16w1wDrb2WGIzhkcOcdDC9uTGOeUflLoNHCLZJ3k6yfT534RYPKv6nDrlwr7Oe6i_O92YBptvV4qXaOjxTl_/s400/bookmarkmanager.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 313px;" /></a><br /><br />In recent weeks, we’ve been beta-testing <a href="http://blog.chromium.org/2010/03/bringing-improved-support-for-adobe.html">Adobe Flash Player integration into Chrome</a>. While Flash Player integration in the browser is not included by default in today’s stable release, we’re excited to enable this feature with the full release of Flash Player (version 10.1) soon.<br /><br />If you’re already using Chrome for Windows, Mac or Linux, you’ll be auto-updated to this latest release soon. You can also try out these new features on our speedy browser now, by downloading Chrome from <a href="//www.google.com/chrome">google.com/chrome</a>.<br /><br /><br /><span class="post-author">Posted by Brian Rakowski, Product Manager</span> <span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://plus.google.com/116899029375914044550' itemprop='url'/> </span> </noscript> </div> </div> <div class='share'> <span class='gplus-share social-wrapper' data-href='https://plus.google.com/share?url=https://chrome.googleblog.com/2010/05/new-chrome-stable-release-welcome-mac.html'> <img alt='Share on Google+' height='24' src='https://www.gstatic.com/images/branding/google_plus/2x/ic_w_post_gplus_black_24dp.png' width='24'/> </span> <span class='twitter-custom social-wrapper' data-href='http://twitter.com/share?text=Google Chrome Blog:A new Chrome stable release: Welcome, Mac and Linux!&url=https://chrome.googleblog.com/2010/05/new-chrome-stable-release-welcome-mac.html&via=googlechrome'> <img alt='Share on Twitter' height='24' src='https://www.gstatic.com/images/icons/material/system/2x/post_twitter_black_24dp.png' width='24'/> </span> <span class='fb-custom social-wrapper' data-href='https://www.facebook.com/sharer.php?u=https://chrome.googleblog.com/2010/05/new-chrome-stable-release-welcome-mac.html'> <img alt='Share on Facebook' height='24' src='https://www.gstatic.com/images/icons/material/system/2x/post_facebook_black_24dp.png' width='24'/> </span> </div> <div class='comment-container'> <i class='comment-img material-icons'>  </i> <span class='cmt_count_iframe_holder' data-count='0' data-onclick='' data-post-url='https://chrome.googleblog.com/2010/05/new-chrome-stable-release-welcome-mac.html' data-url='https://chrome.googleblog.com/2010/05/new-chrome-stable-release-welcome-mac.html' style='color: #4184F3;'></span> </div> <div class='post-footer'> <div class='cmt_iframe_holder' data-href='https://chrome.googleblog.com/2010/05/new-chrome-stable-release-welcome-mac.html' data-viewtype='FILTERED_POSTMOD'></div> <a href='https://plus.google.com/112374322230920073195' rel='author' style='display:none;'> Google </a> <div class='label-footer'> <span class='labels-caption'> Labels: </span> <span class='labels'> <a class='label' href='https://chrome.googleblog.com/search/label/Chrome%20Blog' rel='tag'> Chrome Blog </a> </span> </div> </div> </div> <div class='post' data-id='7179172496144236988' itemscope='' itemtype='http://schema.org/BlogPosting'> <h2 class='title' itemprop='name'> <a href='https://chrome.googleblog.com/2010/05/six-ways-to-find-right-chrome-extension.html' itemprop='url' title='Six ways to find the right Chrome Extension for you'> Six ways to find the right Chrome Extension for you </a> </h2> <div class='post-header'> <div class='published'> <span class='publishdate' itemprop='datePublished'> Friday, May 14, 2010 </span> </div> </div> <div class='post-body'> <div class='post-content' itemprop='articleBody'> <script type='text/template'> With so many Chrome extensions to choose from, exploring the extensions <a href="https://chrome.google.com/extensions">gallery</a> has been like a treasure hunt for me. Over the last few months, I've spent hours checking out new extensions and discovering cool ways to keep up with the latest <a href="http://chrome.blogspot.com/2010/04/keeping-track-of-world-with-chrome.html#links">news</a> or find better deals online. I'd like to share with you some useful extensions that I came across in six easy-to-use pages for <a href="https://chrome.google.com/extensions/featured/web_dev">web development</a>, <a href="https://chrome.google.com/extensions/featured/blogging">blogging</a>, <a href="https://chrome.google.com/extensions/featured/shopping">shopping</a>, <a href="https://chrome.google.com/extensions/featured/sports">sports</a>, <a href="https://chrome.google.com/extensions/featured/fun">fun</a> and <a href="https://chrome.google.com/extensions/featured/by_google">Google applications</a>.<div><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://chrome.google.com/extensions"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5471267198192970066" src="//4.bp.blogspot.com/_9Cs8xunYCwE/S-3Yh1uJ6VI/AAAAAAAAABQ/waPFm-jLszE/s320/Screenshot+of+nav.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 304px; height: 320px;"></a><br /><br />I always love finding a bargain online. For all of you who also like to shop smart, these <a href="https://chrome.google.com/extensions/featured/shopping">extensions</a> can make online online shopping faster and easier. You can track an item's price history with the <a href="https://chrome.google.com/extensions/detail/ghnomdcacenbmilgjigehppbamfndblo">Camelizer</a> extension or complement your bargain hunting with extensions from <a href="https://chrome.google.com/extensions/detail/ciagpekplgpbepdgggflgmahnjgiaced">Amazon</a>, <a href="https://chrome.google.com/extensions/detail/klhoeofncdoaefllgaacgnecchcphphb">Woot!</a> and <a href="https://chrome.google.com/extensions/detail/khhckppjhonfmcpegdjdibmngahahhck">eBay</a>.<br /><br />We also have <a href="https://chrome.google.com/extensions/featured/sports">extensions</a> dedicated to fans of sports from around the world. You can track live scores and commentary on <a href="https://chrome.google.com/extensions/detail/ijhlikjoigjegofbedmfmlcfkmhabldh">cricket</a>, <a href="https://chrome.google.com/extensions/detail/ahkdamcnpmhgfoolmfndfmcdpfgnklhj">rugby</a> and <a href="https://chrome.google.com/extensions/detail/apldjlconfahcmmjgfnhkodicjackagc">Formula 1</a> with extensions from ESPN. If you want an edge in your fantasy sports leagues, the <a href="https://chrome.google.com/extensions/detail/cnnckoodldcbgegkmlgponhofcngihnp">Pickemfirst</a> extension brings you news, game statistics and commentary of pro sports players currently displayed in your browser.<br /><br />Besides sports and shopping, these <a href="https://chrome.google.com/extensions/featured/blogging">blogging extensions</a> can help you write better blog posts and share web content more efficiently. You can quickly post to your blogs at <a href="https://chrome.google.com/extensions/detail/ibefpmlaihendejjlibjmjnmmllkcbhk">TypePad</a> or <a href="https://chrome.google.com/extensions/detail/pengoopmcjnbflcjbmoeodbmoflcgjlk">Blogger</a>. You can also get contextual suggestions of related articles, images, links and tags with <a href="https://chrome.google.com/extensions/detail/fejeknoakjeblidffkajbioncodnmhge">Zemanta</a>. <a href="https://chrome.google.com/extensions/detail/fcdjadjbdihbaodagojiomdljhjhjfho">After the Deadline</a> offers an extension that automatically checks your spelling and grammar (while optionally checking for cliches and double negatives!)<br /><br />In addition, we made it easier to find the extensions for <a href="https://chrome.google.com/extensions/featured/by_google">Google</a> applications you frequently use. These include extensions to preview <a href="https://chrome.google.com/extensions/detail/nnbmlagghjjcbdhgmkedmbmedengocbn">Google Docs</a> or to check your <a href="https://chrome.google.com/extensions/detail/ookhcbgokankfmjafalglpofmolfopek">Google Calendar</a> directly from your Google Chrome browser.<br /><br />For those of you who want to complement Google Chrome's <a href="http://chromium.org/devtools">developer tools</a> to create a customized development environment in Chrome, there are <a href="https://chrome.google.com/extensions/featured/web_dev">web development extensions</a> such as viewing <a href="https://chrome.google.com/extensions/detail/kfiahljocaflpaiopilgpiochncgdnhd">PHP</a> documentation, creating random <a href="https://chrome.google.com/extensions/detail/dmpfoncmmihgkooacnplecaopcefceam">dummy text</a> or testing your page at <a href="https://chrome.google.com/extensions/detail/idhfcdbheobinplaamokffboaccidbal">various resolutions</a>.<br /><br />Finally, if you want to play a prank on your co-workers or take a 5-minute break with a game, there are quite a few <a href="https://chrome.google.com/extensions/featured/fun">fun extensions</a> to brighten up your day.<br /><br />I hope you enjoy these pages. There are more than 4,000 extensions waiting to be discovered in the <a href="http://chrome.google.com/extensions">gallery</a>. Happy hunting!</div><br /><span class="post-author">Posted by Koh Kim, Associate Product Marketing Manager</span> <span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://plus.google.com/116899029375914044550' itemprop='url'/> </span> </script> <noscript> With so many Chrome extensions to choose from, exploring the extensions <a href="https://chrome.google.com/extensions">gallery</a> has been like a treasure hunt for me. Over the last few months, I've spent hours checking out new extensions and discovering cool ways to keep up with the latest <a href="http://chrome.blogspot.com/2010/04/keeping-track-of-world-with-chrome.html#links">news</a> or find better deals online. I'd like to share with you some useful extensions that I came across in six easy-to-use pages for <a href="https://chrome.google.com/extensions/featured/web_dev">web development</a>, <a href="https://chrome.google.com/extensions/featured/blogging">blogging</a>, <a href="https://chrome.google.com/extensions/featured/shopping">shopping</a>, <a href="https://chrome.google.com/extensions/featured/sports">sports</a>, <a href="https://chrome.google.com/extensions/featured/fun">fun</a> and <a href="https://chrome.google.com/extensions/featured/by_google">Google applications</a>.<div><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://chrome.google.com/extensions"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5471267198192970066" src="//4.bp.blogspot.com/_9Cs8xunYCwE/S-3Yh1uJ6VI/AAAAAAAAABQ/waPFm-jLszE/s320/Screenshot+of+nav.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 304px; height: 320px;"></a><br /><br />I always love finding a bargain online. For all of you who also like to shop smart, these <a href="https://chrome.google.com/extensions/featured/shopping">extensions</a> can make online online shopping faster and easier. You can track an item's price history with the <a href="https://chrome.google.com/extensions/detail/ghnomdcacenbmilgjigehppbamfndblo">Camelizer</a> extension or complement your bargain hunting with extensions from <a href="https://chrome.google.com/extensions/detail/ciagpekplgpbepdgggflgmahnjgiaced">Amazon</a>, <a href="https://chrome.google.com/extensions/detail/klhoeofncdoaefllgaacgnecchcphphb">Woot!</a> and <a href="https://chrome.google.com/extensions/detail/khhckppjhonfmcpegdjdibmngahahhck">eBay</a>.<br /><br />We also have <a href="https://chrome.google.com/extensions/featured/sports">extensions</a> dedicated to fans of sports from around the world. You can track live scores and commentary on <a href="https://chrome.google.com/extensions/detail/ijhlikjoigjegofbedmfmlcfkmhabldh">cricket</a>, <a href="https://chrome.google.com/extensions/detail/ahkdamcnpmhgfoolmfndfmcdpfgnklhj">rugby</a> and <a href="https://chrome.google.com/extensions/detail/apldjlconfahcmmjgfnhkodicjackagc">Formula 1</a> with extensions from ESPN. If you want an edge in your fantasy sports leagues, the <a href="https://chrome.google.com/extensions/detail/cnnckoodldcbgegkmlgponhofcngihnp">Pickemfirst</a> extension brings you news, game statistics and commentary of pro sports players currently displayed in your browser.<br /><br />Besides sports and shopping, these <a href="https://chrome.google.com/extensions/featured/blogging">blogging extensions</a> can help you write better blog posts and share web content more efficiently. You can quickly post to your blogs at <a href="https://chrome.google.com/extensions/detail/ibefpmlaihendejjlibjmjnmmllkcbhk">TypePad</a> or <a href="https://chrome.google.com/extensions/detail/pengoopmcjnbflcjbmoeodbmoflcgjlk">Blogger</a>. You can also get contextual suggestions of related articles, images, links and tags with <a href="https://chrome.google.com/extensions/detail/fejeknoakjeblidffkajbioncodnmhge">Zemanta</a>. <a href="https://chrome.google.com/extensions/detail/fcdjadjbdihbaodagojiomdljhjhjfho">After the Deadline</a> offers an extension that automatically checks your spelling and grammar (while optionally checking for cliches and double negatives!)<br /><br />In addition, we made it easier to find the extensions for <a href="https://chrome.google.com/extensions/featured/by_google">Google</a> applications you frequently use. These include extensions to preview <a href="https://chrome.google.com/extensions/detail/nnbmlagghjjcbdhgmkedmbmedengocbn">Google Docs</a> or to check your <a href="https://chrome.google.com/extensions/detail/ookhcbgokankfmjafalglpofmolfopek">Google Calendar</a> directly from your Google Chrome browser.<br /><br />For those of you who want to complement Google Chrome's <a href="http://chromium.org/devtools">developer tools</a> to create a customized development environment in Chrome, there are <a href="https://chrome.google.com/extensions/featured/web_dev">web development extensions</a> such as viewing <a href="https://chrome.google.com/extensions/detail/kfiahljocaflpaiopilgpiochncgdnhd">PHP</a> documentation, creating random <a href="https://chrome.google.com/extensions/detail/dmpfoncmmihgkooacnplecaopcefceam">dummy text</a> or testing your page at <a href="https://chrome.google.com/extensions/detail/idhfcdbheobinplaamokffboaccidbal">various resolutions</a>.<br /><br />Finally, if you want to play a prank on your co-workers or take a 5-minute break with a game, there are quite a few <a href="https://chrome.google.com/extensions/featured/fun">fun extensions</a> to brighten up your day.<br /><br />I hope you enjoy these pages. There are more than 4,000 extensions waiting to be discovered in the <a href="http://chrome.google.com/extensions">gallery</a>. Happy hunting!</div><br /><span class="post-author">Posted by Koh Kim, Associate Product Marketing Manager</span> <span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://plus.google.com/116899029375914044550' itemprop='url'/> </span> </noscript> </div> </div> <div class='share'> <span class='gplus-share social-wrapper' data-href='https://plus.google.com/share?url=https://chrome.googleblog.com/2010/05/six-ways-to-find-right-chrome-extension.html'> <img alt='Share on Google+' height='24' src='https://www.gstatic.com/images/branding/google_plus/2x/ic_w_post_gplus_black_24dp.png' width='24'/> </span> <span class='twitter-custom social-wrapper' data-href='http://twitter.com/share?text=Google Chrome Blog:Six ways to find the right Chrome Extension for you&url=https://chrome.googleblog.com/2010/05/six-ways-to-find-right-chrome-extension.html&via=googlechrome'> <img alt='Share on Twitter' height='24' src='https://www.gstatic.com/images/icons/material/system/2x/post_twitter_black_24dp.png' width='24'/> </span> <span class='fb-custom social-wrapper' data-href='https://www.facebook.com/sharer.php?u=https://chrome.googleblog.com/2010/05/six-ways-to-find-right-chrome-extension.html'> <img alt='Share on Facebook' height='24' src='https://www.gstatic.com/images/icons/material/system/2x/post_facebook_black_24dp.png' width='24'/> </span> </div> <div class='comment-container'> <i class='comment-img material-icons'>  </i> <span class='cmt_count_iframe_holder' data-count='0' data-onclick='' data-post-url='https://chrome.googleblog.com/2010/05/six-ways-to-find-right-chrome-extension.html' data-url='https://chrome.googleblog.com/2010/05/six-ways-to-find-right-chrome-extension.html' style='color: #4184F3;'></span> </div> <div class='post-footer'> <div class='cmt_iframe_holder' data-href='https://chrome.googleblog.com/2010/05/six-ways-to-find-right-chrome-extension.html' data-viewtype='FILTERED_POSTMOD'></div> <a href='https://plus.google.com/112374322230920073195' rel='author' style='display:none;'> Google </a> <div class='label-footer'> <span class='labels-caption'> Labels: </span> <span class='labels'> <a class='label' href='https://chrome.googleblog.com/search/label/Chrome%20Blog' rel='tag'> Chrome Blog </a> </span> </div> </div> </div> <div class='post' data-id='6015113107727289176' itemscope='' itemtype='http://schema.org/BlogPosting'> <h2 class='title' itemprop='name'> <a href='https://chrome.googleblog.com/2010/05/potato-gun-lightning-and-sonic-magic.html' itemprop='url' title='Potato gun, lightning, and sonic magic: Unconventional speed tests for the browser'> Potato gun, lightning, and sonic magic: Unconventional speed tests for the browser </a> </h2> <div class='post-header'> <div class='published'> <span class='publishdate' itemprop='datePublished'> Wednesday, May 5, 2010 </span> </div> </div> <div class='post-body'> <div class='post-content' itemprop='articleBody'> <script type='text/template'> Yesterday, we <a href="http://chrome.blogspot.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html">released a new beta</a> for Chrome, and teamed up with a few creative minds to bring Chrome’s speed to life with an early preview of a series of fun, unconventional speed tests for the browser. As promised in my blogpost, here’s a follow-up video of the full results!<br /><br /><object height="340" width="560"><param name="movie" value="//www.youtube.com/v/nCgQDjiotG0&hl=en_US&fs=1&hd=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="//www.youtube.com/v/nCgQDjiotG0&hl=en_US&fs=1&hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object><br /><br />(Watching web pages load at 2700 frames per second reveals unexpected artifacts. If you're interested in the technical details, read on in the <a href="//www.youtube.com/watch?v=nCgQDjiotG0&hd=1">video's description drop-down in YouTube</a>).<br /><br /><span class="post-author">Posted by Mads Ager, Software Engineer</span> <span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://plus.google.com/116899029375914044550' itemprop='url'/> </span> </script> <noscript> Yesterday, we <a href="http://chrome.blogspot.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html">released a new beta</a> for Chrome, and teamed up with a few creative minds to bring Chrome’s speed to life with an early preview of a series of fun, unconventional speed tests for the browser. As promised in my blogpost, here’s a follow-up video of the full results!<br /><br /><object height="340" width="560"><param name="movie" value="//www.youtube.com/v/nCgQDjiotG0&hl=en_US&fs=1&hd=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="//www.youtube.com/v/nCgQDjiotG0&hl=en_US&fs=1&hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object><br /><br />(Watching web pages load at 2700 frames per second reveals unexpected artifacts. If you're interested in the technical details, read on in the <a href="//www.youtube.com/watch?v=nCgQDjiotG0&hd=1">video's description drop-down in YouTube</a>).<br /><br /><span class="post-author">Posted by Mads Ager, Software Engineer</span> <span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://plus.google.com/116899029375914044550' itemprop='url'/> </span> </noscript> </div> </div> <div class='share'> <span class='gplus-share social-wrapper' data-href='https://plus.google.com/share?url=https://chrome.googleblog.com/2010/05/potato-gun-lightning-and-sonic-magic.html'> <img alt='Share on Google+' height='24' src='https://www.gstatic.com/images/branding/google_plus/2x/ic_w_post_gplus_black_24dp.png' width='24'/> </span> <span class='twitter-custom social-wrapper' data-href='http://twitter.com/share?text=Google Chrome Blog:Potato gun, lightning, and sonic magic: Unconventional speed tests for the browser&url=https://chrome.googleblog.com/2010/05/potato-gun-lightning-and-sonic-magic.html&via=googlechrome'> <img alt='Share on Twitter' height='24' src='https://www.gstatic.com/images/icons/material/system/2x/post_twitter_black_24dp.png' width='24'/> </span> <span class='fb-custom social-wrapper' data-href='https://www.facebook.com/sharer.php?u=https://chrome.googleblog.com/2010/05/potato-gun-lightning-and-sonic-magic.html'> <img alt='Share on Facebook' height='24' src='https://www.gstatic.com/images/icons/material/system/2x/post_facebook_black_24dp.png' width='24'/> </span> </div> <div class='comment-container'> <i class='comment-img material-icons'>  </i> <span class='cmt_count_iframe_holder' data-count='0' data-onclick='' data-post-url='https://chrome.googleblog.com/2010/05/potato-gun-lightning-and-sonic-magic.html' data-url='https://chrome.googleblog.com/2010/05/potato-gun-lightning-and-sonic-magic.html' style='color: #4184F3;'></span> </div> <div class='post-footer'> <div class='cmt_iframe_holder' data-href='https://chrome.googleblog.com/2010/05/potato-gun-lightning-and-sonic-magic.html' data-viewtype='FILTERED_POSTMOD'></div> <a href='https://plus.google.com/112374322230920073195' rel='author' style='display:none;'> Google </a> <div class='label-footer'> <span class='labels-caption'> Labels: </span> <span class='labels'> <a class='label' href='https://chrome.googleblog.com/search/label/Chrome%20Blog' rel='tag'> Chrome Blog </a> </span> </div> </div> </div> <div class='post' data-id='5476567874853788938' itemscope='' itemtype='http://schema.org/BlogPosting'> <h2 class='title' itemprop='name'> <a href='https://chrome.googleblog.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html' itemprop='url' title='Pedal to the Chrome metal: Our fastest beta to date for Windows, Mac and Linux'> Pedal to the Chrome metal: Our fastest beta to date for Windows, Mac and Linux </a> </h2> <div class='post-header'> <div class='published'> <span class='publishdate' itemprop='datePublished'> Tuesday, May 4, 2010 </span> </div> </div> <div class='post-body'> <div class='post-content' itemprop='articleBody'> <script type='text/template'> Here in <a href="//maps.google.com/maps?f=q&source=s_q&hl=en&geocode&q=Aarhus,+Denmark&sll=37.753575,-122.422987&sspn=0.013454,0.020986&ie=UTF8&hq&hnear=Aarhus+Municipality,+Denmark&z=12">Aarhus, Denmark</a> -- home of the V8 project, Chrome’s JavaScript engine -- we’ve been tuning, testing, and polishing the V8 engine to give Chrome a hefty boost in speed. <br /><br />Today’s new beta release incorporates one of Chrome’s most significant speed and performance increases to date, with 30% and 35% improvement on the <a href="http://v8.googlecode.com/svn/data/benchmarks/v5/run.html">V8</a> and <a href="http://www2.webkit.org/perf/sunspider-0.9/sunspider.html">SunSpider</a> benchmarks over the previous beta <a href="http://blog.chromium.org/2009/01/google-chrome-release-channels.html">channel</a> release. In fact, looking back in time, Chrome’s performance has improved by as much as 213% and 305% on these two benchmarks since our very first beta.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhmWsjF4Tkz4Py7Vw-I60NPKWcOmwse4HgvtkfELwbel0jql0MwoAAl6_v_ayr95AJ1HjiRiZNaAzbnQ0N325fQ1ym201qIW2UCTz_XNGYy0tqSEaluqht6dHweYV3NrtUL2t6Ufrd4E_/s1600/v8_benchmark_suite_-_version_5.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5467444964248594402" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhmWsjF4Tkz4Py7Vw-I60NPKWcOmwse4HgvtkfELwbel0jql0MwoAAl6_v_ayr95AJ1HjiRiZNaAzbnQ0N325fQ1ym201qIW2UCTz_XNGYy0tqSEaluqht6dHweYV3NrtUL2t6Ufrd4E_/s400/v8_benchmark_suite_-_version_5.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 347px; height: 238px;" /></a><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgcSYfWNClhYZWGuCLyELLSyNNJr9wWzfZ8SOQiF0Xuf2XUKHK9eWDesvTQBIYAgx6Rb6JN-VsFqwsS_BvoU0At3_24FZ-wRCY6Hv_VZTsQ4_DUnGfBtq4dpwbwfq6GIRsE8cuoIdPhiT2/s1600/sunspider_benchmark_-_version_0_9.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5467445090010977426" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgcSYfWNClhYZWGuCLyELLSyNNJr9wWzfZ8SOQiF0Xuf2XUKHK9eWDesvTQBIYAgx6Rb6JN-VsFqwsS_BvoU0At3_24FZ-wRCY6Hv_VZTsQ4_DUnGfBtq4dpwbwfq6GIRsE8cuoIdPhiT2/s400/sunspider_benchmark_-_version_0_9.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 350px; height: 238px;" /></a><br /><br />Today’s beta release also includes a handful of new features. Not too long ago, we <a href="http://chrome.blogspot.com/2009/11/bookmark-sync-and-more-speed-in-latest.html">introduced bookmark sync</a> into the browser, which allows you to keep your bookmarks synchronized on multiple computers using your Google Account. Beta users can now <a href="//www.google.com/support/chrome/bin/answer.py?answer=165138">synchronize not only bookmarks, but also browser preferences</a> including themes, homepage and startup settings, web content settings, and language. By popular demand especially from avid Chrome extensions users, you can now install and use Chrome extensions while in <a href="//www.google.com/support/chrome/bin/answer.py?answer=95464">incognito mode</a>.<br /><br />Under the hood, today’s release contains the goodness of some new <a href="http://en.wikipedia.org/wiki/HTML5">HTML5</a> features, namely <a href="http://en.wikipedia.org/wiki/W3C_Geolocation_API">Geolocation APIs</a>, <a href="http://dev.w3.org/html5/spec/Overview.html#appcache">App Cache</a>, <a href="http://en.wikipedia.org/wiki/Web_Sockets">web sockets</a>, and file <a href="http://dev.w3.org/html5/spec/Overview.html#dnd">drag-and-drop</a> capabilities. Additionally, this is the first Chrome beta that features <a href="http://blog.chromium.org/2010/03/bringing-improved-support-for-adobe.html">initial integration</a> of the <a href="http://en.wikipedia.org/wiki/Adobe_Flash_Player">Adobe Flash Player</a> plug-in with Chrome, so that you can browse a rich, dynamic web with added security and stability -- you’ll automatically receive security and feature updates for Flash Player with Chrome’s <a href="//www.youtube.com/watch?v=1oQQMJZL_u4">auto-update</a> mechanism. <br /><br />To try out all these new features, download Chrome on the Windows <a href="//www.google.com/intl/en/landing/chrome/beta/">beta channel</a>, or download the <a href="//www.google.com/chrome?platform=mac">Mac</a> or <a href="//www.google.com/chrome?platform=linux">Linux</a> betas.<br /><br />Lastly, with this beta’s crazy speed improvements, we designed a series of equally unconventional speed tests for the browser. While the V8 and SunSpider benchmarks have their strengths, we felt that more could be done to measure speed on the browser. Here’s an early preview of how we designed, built, and implemented these speed tests. Stay tuned for the full results; we’ll post them here tomorrow.<br /><br /><object height="340" width="560"><param name="movie" value="//www.youtube.com/v/_oarMXGq3gI&hl=en_US&fs=1&hd=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="//www.youtube.com/v/_oarMXGq3gI&hl=en_US&fs=1&hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object><br /><br />Watching web pages load at 2700 frames per second reveals unexpected artifacts. If you're interested in the technical details, read on in the <a href="//www.youtube.com/watch?v=_oarMXGq3gI">video's description drop-down in YouTube</a>.<br /><br /><br /><span class="post-author">Posted by Mads Ager, Software Engineer</span> <span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://plus.google.com/116899029375914044550' itemprop='url'/> </span> </script> <noscript> Here in <a href="//maps.google.com/maps?f=q&source=s_q&hl=en&geocode&q=Aarhus,+Denmark&sll=37.753575,-122.422987&sspn=0.013454,0.020986&ie=UTF8&hq&hnear=Aarhus+Municipality,+Denmark&z=12">Aarhus, Denmark</a> -- home of the V8 project, Chrome’s JavaScript engine -- we’ve been tuning, testing, and polishing the V8 engine to give Chrome a hefty boost in speed. <br /><br />Today’s new beta release incorporates one of Chrome’s most significant speed and performance increases to date, with 30% and 35% improvement on the <a href="http://v8.googlecode.com/svn/data/benchmarks/v5/run.html">V8</a> and <a href="http://www2.webkit.org/perf/sunspider-0.9/sunspider.html">SunSpider</a> benchmarks over the previous beta <a href="http://blog.chromium.org/2009/01/google-chrome-release-channels.html">channel</a> release. In fact, looking back in time, Chrome’s performance has improved by as much as 213% and 305% on these two benchmarks since our very first beta.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhmWsjF4Tkz4Py7Vw-I60NPKWcOmwse4HgvtkfELwbel0jql0MwoAAl6_v_ayr95AJ1HjiRiZNaAzbnQ0N325fQ1ym201qIW2UCTz_XNGYy0tqSEaluqht6dHweYV3NrtUL2t6Ufrd4E_/s1600/v8_benchmark_suite_-_version_5.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5467444964248594402" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhmWsjF4Tkz4Py7Vw-I60NPKWcOmwse4HgvtkfELwbel0jql0MwoAAl6_v_ayr95AJ1HjiRiZNaAzbnQ0N325fQ1ym201qIW2UCTz_XNGYy0tqSEaluqht6dHweYV3NrtUL2t6Ufrd4E_/s400/v8_benchmark_suite_-_version_5.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 347px; height: 238px;" /></a><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgcSYfWNClhYZWGuCLyELLSyNNJr9wWzfZ8SOQiF0Xuf2XUKHK9eWDesvTQBIYAgx6Rb6JN-VsFqwsS_BvoU0At3_24FZ-wRCY6Hv_VZTsQ4_DUnGfBtq4dpwbwfq6GIRsE8cuoIdPhiT2/s1600/sunspider_benchmark_-_version_0_9.png"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5467445090010977426" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgcSYfWNClhYZWGuCLyELLSyNNJr9wWzfZ8SOQiF0Xuf2XUKHK9eWDesvTQBIYAgx6Rb6JN-VsFqwsS_BvoU0At3_24FZ-wRCY6Hv_VZTsQ4_DUnGfBtq4dpwbwfq6GIRsE8cuoIdPhiT2/s400/sunspider_benchmark_-_version_0_9.png" style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 350px; height: 238px;" /></a><br /><br />Today’s beta release also includes a handful of new features. Not too long ago, we <a href="http://chrome.blogspot.com/2009/11/bookmark-sync-and-more-speed-in-latest.html">introduced bookmark sync</a> into the browser, which allows you to keep your bookmarks synchronized on multiple computers using your Google Account. Beta users can now <a href="//www.google.com/support/chrome/bin/answer.py?answer=165138">synchronize not only bookmarks, but also browser preferences</a> including themes, homepage and startup settings, web content settings, and language. By popular demand especially from avid Chrome extensions users, you can now install and use Chrome extensions while in <a href="//www.google.com/support/chrome/bin/answer.py?answer=95464">incognito mode</a>.<br /><br />Under the hood, today’s release contains the goodness of some new <a href="http://en.wikipedia.org/wiki/HTML5">HTML5</a> features, namely <a href="http://en.wikipedia.org/wiki/W3C_Geolocation_API">Geolocation APIs</a>, <a href="http://dev.w3.org/html5/spec/Overview.html#appcache">App Cache</a>, <a href="http://en.wikipedia.org/wiki/Web_Sockets">web sockets</a>, and file <a href="http://dev.w3.org/html5/spec/Overview.html#dnd">drag-and-drop</a> capabilities. Additionally, this is the first Chrome beta that features <a href="http://blog.chromium.org/2010/03/bringing-improved-support-for-adobe.html">initial integration</a> of the <a href="http://en.wikipedia.org/wiki/Adobe_Flash_Player">Adobe Flash Player</a> plug-in with Chrome, so that you can browse a rich, dynamic web with added security and stability -- you’ll automatically receive security and feature updates for Flash Player with Chrome’s <a href="//www.youtube.com/watch?v=1oQQMJZL_u4">auto-update</a> mechanism. <br /><br />To try out all these new features, download Chrome on the Windows <a href="//www.google.com/intl/en/landing/chrome/beta/">beta channel</a>, or download the <a href="//www.google.com/chrome?platform=mac">Mac</a> or <a href="//www.google.com/chrome?platform=linux">Linux</a> betas.<br /><br />Lastly, with this beta’s crazy speed improvements, we designed a series of equally unconventional speed tests for the browser. While the V8 and SunSpider benchmarks have their strengths, we felt that more could be done to measure speed on the browser. Here’s an early preview of how we designed, built, and implemented these speed tests. Stay tuned for the full results; we’ll post them here tomorrow.<br /><br /><object height="340" width="560"><param name="movie" value="//www.youtube.com/v/_oarMXGq3gI&hl=en_US&fs=1&hd=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="//www.youtube.com/v/_oarMXGq3gI&hl=en_US&fs=1&hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object><br /><br />Watching web pages load at 2700 frames per second reveals unexpected artifacts. If you're interested in the technical details, read on in the <a href="//www.youtube.com/watch?v=_oarMXGq3gI">video's description drop-down in YouTube</a>.<br /><br /><br /><span class="post-author">Posted by Mads Ager, Software Engineer</span> <span itemprop='author' itemscope='itemscope' itemtype='http://schema.org/Person'> <meta content='https://plus.google.com/116899029375914044550' itemprop='url'/> </span> </noscript> </div> </div> <div class='share'> <span class='gplus-share social-wrapper' data-href='https://plus.google.com/share?url=https://chrome.googleblog.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html'> <img alt='Share on Google+' height='24' src='https://www.gstatic.com/images/branding/google_plus/2x/ic_w_post_gplus_black_24dp.png' width='24'/> </span> <span class='twitter-custom social-wrapper' data-href='http://twitter.com/share?text=Google Chrome Blog:Pedal to the Chrome metal: Our fastest beta to date for Windows, Mac and Linux&url=https://chrome.googleblog.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html&via=googlechrome'> <img alt='Share on Twitter' height='24' src='https://www.gstatic.com/images/icons/material/system/2x/post_twitter_black_24dp.png' width='24'/> </span> <span class='fb-custom social-wrapper' data-href='https://www.facebook.com/sharer.php?u=https://chrome.googleblog.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html'> <img alt='Share on Facebook' height='24' src='https://www.gstatic.com/images/icons/material/system/2x/post_facebook_black_24dp.png' width='24'/> </span> </div> <div class='comment-container'> <i class='comment-img material-icons'>  </i> <span class='cmt_count_iframe_holder' data-count='0' data-onclick='' data-post-url='https://chrome.googleblog.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html' data-url='https://chrome.googleblog.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html' style='color: #4184F3;'></span> </div> <div class='post-footer'> <div class='cmt_iframe_holder' data-href='https://chrome.googleblog.com/2010/05/pedal-to-chrome-metal-our-fastest-beta.html' data-viewtype='FILTERED_POSTMOD'></div> <a href='https://plus.google.com/112374322230920073195' rel='author' style='display:none;'> Google </a> <div class='label-footer'> <span class='labels-caption'> Labels: </span> <span class='labels'> <a class='label' href='https://chrome.googleblog.com/search/label/Chrome%20Blog' rel='tag'> Chrome Blog </a> </span> </div> </div> </div> <div class='blog-pager' id='blog-pager'> <a class='home-link' href='https://chrome.googleblog.com/'> <i class='material-icons'>  </i> </a> <span id='blog-pager-newer-link'> <a class='blog-pager-newer-link' href='https://chrome.googleblog.com/search?updated-max=2010-08-19T15:00:00-07:00&max-results=7&reverse-paginate=true' id='Blog1_blog-pager-newer-link' title='Newer Posts'> <i class='material-icons'>  </i> </a> </span> <span id='blog-pager-older-link'> <a class='blog-pager-older-link' href='https://chrome.googleblog.com/search?updated-max=2010-05-04T08:31:00-07:00&max-results=7' id='Blog1_blog-pager-older-link' title='Older Posts'> <i class='material-icons'>  </i> </a> </span> </div> <div class='clear'></div> </div></div> </div> </div> <div class='col-right'> <div class='section' id='sidebar-top'><div class='widget HTML' data-version='1' id='HTML8'> <div class='widget-content'> <div class='searchBox'> <input type='text' title='Search This Blog' placeholder='Search blog ...' /> </div> </div> <div class='clear'></div> </div></div> <div id='aside'> <div class='section' id='sidebar'><div class='widget Label' data-version='1' id='Label1'> <div class='tab'> <img class='sidebar-icon' src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAYpJREFUeNrs2aFuwzAQBmAvKRkMKRjZA4QMDJaWFgyMjuzFRg37DIUlA3uFkoGQSaWzJU+tpri5O9+l/zSfdFJlpe59yTmyVedq1PjfcZMZ70NuQnaF8w8htyE/rABtpviXkLcK88c5HhLkMBfgVan43zfFBNGMjHVGT/s55KP2pAvidbGHd+nzKt1RKSLG3rKF1iPFv6UWiPke8i7kEqGdGsI1O+LYVdqJAjgirwkKYD0ytkJBUNbAMvX8V3q9PhUsYvU1sWD8SO/sQvx2ahxOiNoJCSBCoAHYCEQAC4EKICOQASQEOmAS8RcAFxFN5hiIiugpgC3wk9hQAHH/70EBHXUN7IER5EWMiBgo2+nzOKQv9SCAeEM/OQAkhE/ncccFICB87qzQMia5FsJfOui0zMnmRvipU1ormHQuxGTxUsAcCFLxJQBLBLn4UoAFglW8BkATwS5eC6CBEBWvCShBiIvXBkgQRcVbADiI4uKtABSESvGWgB9EzHt3+tNwyO0qa9SoIYtvAQYAqDJhaWWeMecAAAAASUVORK5CYII='/> <h2> Labels </h2> <i class='material-icons arrow'>  </i> </div> <div class='widget-content list-label-widget-content'> <ul> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/3d'> 3d </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/53'> 53 </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/accessibility'> accessibility </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/apps'> apps </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/chrome'> chrome </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/Chrome%20Blog'> Chrome Blog </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/chrome%20for%20a%20cause'> chrome for a cause </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/chrome%20notebook'> chrome notebook </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/chrome%20os'> chrome os </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/chrome%20web%20store'> chrome web store </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/chromebook'> chromebook </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/college%20basketball'> college basketball </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/cr-48'> cr-48 </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/demo%20lab'> demo lab </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/demolab'> demolab </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/extensions'> extensions </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/Flash'> Flash </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/google%20cloud%20print'> google cloud print </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/googlenew'> googlenew </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/holidays'> holidays </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/HTML5'> HTML5 </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/instant'> instant </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/lab%20tech'> lab tech </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/mac'> mac </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/web%20apps'> web apps </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/webgl'> webgl </a> </li> <li> <a dir='ltr' href='https://chrome.googleblog.com/search/label/webrtc'> webrtc </a> </li> </ul> <div class='clear'></div> </div> </div><div class='widget BlogArchive' data-version='1' id='BlogArchive1'> <div class='tab'> <i class='material-icons icon'>  </i> <h2> Archive </h2> <i class='material-icons arrow'>  </i> </div> <div class='widget-content'> <div id='ArchiveList'> <div id='BlogArchive1_ArchiveList'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class='intervalToggle'> <span class='new-toggle' href='javascript:void(0)'> <i class='material-icons arrow'>  </i> </span> <a class='toggle' href='javascript:void(0)' style='display: none'> <span class='zippy'> <i class='material-icons'>  </i>   </span> </a> <a class='post-count-link' href='https://chrome.googleblog.com/2016/'> 2016 </a> </div> <div class='items'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2016/09/'> Sep </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2016/08/'> Aug </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2016/05/'> May </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2016/04/'> Apr </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2016/03/'> Mar </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2016/01/'> Jan </a> </div> <div class='items'> </div> </li> </ul> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class='intervalToggle'> <span class='new-toggle' href='javascript:void(0)'> <i class='material-icons arrow'>  </i> </span> <a class='toggle' href='javascript:void(0)' style='display: none'> <span class='zippy'> <i class='material-icons'>  </i>   </span> </a> <a class='post-count-link' href='https://chrome.googleblog.com/2015/'> 2015 </a> </div> <div class='items'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/12/'> Dec </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/11/'> Nov </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/10/'> Oct </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/09/'> Sep </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/08/'> Aug </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/06/'> Jun </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/05/'> May </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/04/'> Apr </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/03/'> Mar </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/02/'> Feb </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2015/01/'> Jan </a> </div> <div class='items'> </div> </li> </ul> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class='intervalToggle'> <span class='new-toggle' href='javascript:void(0)'> <i class='material-icons arrow'>  </i> </span> <a class='toggle' href='javascript:void(0)' style='display: none'> <span class='zippy'> <i class='material-icons'>  </i>   </span> </a> <a class='post-count-link' href='https://chrome.googleblog.com/2014/'> 2014 </a> </div> <div class='items'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/12/'> Dec </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/11/'> Nov </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/10/'> Oct </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/09/'> Sep </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/08/'> Aug </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/07/'> Jul </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/06/'> Jun </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/05/'> May </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/04/'> Apr </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/03/'> Mar </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/02/'> Feb </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2014/01/'> Jan </a> </div> <div class='items'> </div> </li> </ul> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class='intervalToggle'> <span class='new-toggle' href='javascript:void(0)'> <i class='material-icons arrow'>  </i> </span> <a class='toggle' href='javascript:void(0)' style='display: none'> <span class='zippy'> <i class='material-icons'>  </i>   </span> </a> <a class='post-count-link' href='https://chrome.googleblog.com/2013/'> 2013 </a> </div> <div class='items'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/12/'> Dec </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/11/'> Nov </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/10/'> Oct </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/09/'> Sep </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/08/'> Aug </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/07/'> Jul </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/06/'> Jun </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/05/'> May </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/04/'> Apr </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/03/'> Mar </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/02/'> Feb </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2013/01/'> Jan </a> </div> <div class='items'> </div> </li> </ul> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class='intervalToggle'> <span class='new-toggle' href='javascript:void(0)'> <i class='material-icons arrow'>  </i> </span> <a class='toggle' href='javascript:void(0)' style='display: none'> <span class='zippy'> <i class='material-icons'>  </i>   </span> </a> <a class='post-count-link' href='https://chrome.googleblog.com/2012/'> 2012 </a> </div> <div class='items'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/12/'> Dec </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/11/'> Nov </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/10/'> Oct </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/09/'> Sep </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/08/'> Aug </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/07/'> Jul </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/06/'> Jun </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/05/'> May </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/04/'> Apr </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/03/'> Mar </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/02/'> Feb </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2012/01/'> Jan </a> </div> <div class='items'> </div> </li> </ul> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class='intervalToggle'> <span class='new-toggle' href='javascript:void(0)'> <i class='material-icons arrow'>  </i> </span> <a class='toggle' href='javascript:void(0)' style='display: none'> <span class='zippy'> <i class='material-icons'>  </i>   </span> </a> <a class='post-count-link' href='https://chrome.googleblog.com/2011/'> 2011 </a> </div> <div class='items'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/12/'> Dec </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/11/'> Nov </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/10/'> Oct </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/09/'> Sep </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/08/'> Aug </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/07/'> Jul </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/06/'> Jun </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/05/'> May </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/04/'> Apr </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/03/'> Mar </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/02/'> Feb </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2011/01/'> Jan </a> </div> <div class='items'> </div> </li> </ul> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate expanded'> <div class='intervalToggle'> <span class='new-toggle' href='javascript:void(0)'> <i class='material-icons arrow'>  </i> </span> <a class='toggle' href='javascript:void(0)' style='display: none'> <span class='zippy toggle-open'> <i class='material-icons'>  </i>   </span> </a> <a class='post-count-link' href='https://chrome.googleblog.com/2010/'> 2010 </a> </div> <div class='items'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/12/'> Dec </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/11/'> Nov </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/10/'> Oct </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/09/'> Sep </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/08/'> Aug </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/07/'> Jul </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/06/'> Jun </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate expanded'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/05/'> May </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/04/'> Apr </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/03/'> Mar </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/02/'> Feb </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2010/01/'> Jan </a> </div> <div class='items'> </div> </li> </ul> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class='intervalToggle'> <span class='new-toggle' href='javascript:void(0)'> <i class='material-icons arrow'>  </i> </span> <a class='toggle' href='javascript:void(0)' style='display: none'> <span class='zippy'> <i class='material-icons'>  </i>   </span> </a> <a class='post-count-link' href='https://chrome.googleblog.com/2009/'> 2009 </a> </div> <div class='items'> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/12/'> Dec </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/11/'> Nov </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/10/'> Oct </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/09/'> Sep </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/08/'> Aug </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/07/'> Jul </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/06/'> Jun </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/05/'> May </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/04/'> Apr </a> </div> <div class='items'> </div> </li> </ul> <ul class='hierarchy'> <li class='archivedate collapsed'> <div class=''> <a class='post-count-link' href='https://chrome.googleblog.com/2009/03/'> Mar </a> </div> <div class='items'> </div> </li> </ul> </div> </li> </ul> </div> </div> <div class='clear'></div> </div> </div><div class='widget HTML' data-version='1' id='HTML6'> <div class='widget-content'> <a href="http://chrome.blogspot.com/atom.xml"> <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAihJREFUeNrsWa9Pw0AU7viRMDFRBAkzJDMIBIhJJhCzk7NILIqMv4AEhdz+BCY3OYssAlGBoAJREpZwAlHEBO8lr8nSvNeVbu1dyX3JlzTrXfa+u/e9d7c5joWFhYVO1Fa8PwH2gK6m+BRwAvSlAdsrgr8E1jUuMH73GTAEzrkBWymTewZlihhLmgDXIAFuHgGVQOUF7OSYM1p6PgTuA1vAZlUEvAnPdapcMY0VICECekQ0XRfYrqoHsAGNgXfAoMomRiFDEhOZkkL3S88hMaB2LwXp0bj+ps2edpToZpjfoIDQtBeU+xjoDzP2G/gCPKZ5f8WsCAFJoJgOCcFdWSTeL9YQMSvTA1h9BkI5jaiXhLpSCL/8mVZY0UpyJ9ZdOkniu1dmJ96BpzQu9w6s28gcOq9j6pwLdR8/36NK5CQKwJSMrb2MhhSglBpt4UjsrdsnNu0B3J0HCozbCc4TjyY2srEgos/4RQljCzNxl4ireQD8FOq+T+W0mTB2g7njhlR+Sy2jsXFvU658U8YTbeaGpdIu7mWkEAq5ZtIjIhFZdtfX7QHckSvB2B6zC3VdAkZk0kAQwaXTk/CzTXK3wjIExCs6ZJpTnE4uY1KV+KzFzA3KTiFPENHJkOPcsfpLhwe4btoSuvUqAR+6TOxlCE6ZfKUsJLgsqGW8OpqAGx2X+sLxrwUog+JUeQRMDBIwyXOcnlPtPnL0/UsT/8LnOxYWFhZG4leAAQAAQHEaYuzHbAAAAABJRU5ErkJggg==" class="sidebar-icon" /> <h2>Feed</h2> </a> </div> <div class='clear'></div> </div></div> <div class='section' id='sidebar-bottom'><div class='widget HTML' data-version='1' id='HTML5'> <div class='widget-content'> <div class="followgooglewrapper"> <a href="http://plus.google.com/+chrome" rel="publisher" style="text-decoration:none;display:inline-block;color:#333;text-align:center; font:13px/16px arial,sans-serif;white-space:nowrap;"> <span style="display:inline-block;font-weight:bold;vertical-align:top;margin-right:5px; margin-top:0px;">Google</span><span style="display:inline-block;vertical-align:top;margin-right:13px; margin-top:0px;">on</span> <img src="//ssl.gstatic.com/images/icons/gplus-16.png" alt="Google+" style="border:0;width:16px;height:16px;"/></a> </div> <div style=" text-align: center;"><script src="https://apis.google.com/js/plusone.js"></script> <div class="g-ytsubscribe" data-channel="googlechrome" data-layout="default"></div></div> <div class="share followgooglewrapper"> <button data-href="https://twitter.com/intent/follow?original_referer=http://chrome.blogspot.in/&screen_name=googlechrome" onclick='sharingPopup(this);' id='twitter-share'><span class="twitter-follow">Follow @googlechrome</span></button> <script> function sharingPopup (button) { var url = button.getAttribute("data-href"); window.open( url,'popUpWindow','height=500,width=500,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes'); } </script> </div> <div class="fb-follow-button"> <a href="http://www.facebook.com/googlechrome" target="_blank"><img class="fb-follow" src="//3.bp.blogspot.com/-HoA5kIzCDV0/VVNMgZYYShI/AAAAAAAAHh0/7t0oglZ-RVU/s1600/fb.png">Follow</a> </div> </div> <div class='clear'></div> </div><div class='widget HTML' data-version='1' id='HTML1'> <h2 class='title'> All things Google Chrome </h2> <div class='widget-content'> <a href="//www.google.com/chrome/index.html?brand=CHNQ&utm_campaign=en&utm_source=en-et-chromeblog&utm_medium=et">Download Chrome</a><br /> <a href="https://www.google.com/intl/en/chrome/browser/mobile?brand=CHYE&utm_campaign=en&utm_source=en-et-chromeblog&utm_medium=et">Download Chrome for Mobile</a><br /> <a href="http://blog.chromium.org/">Chromium Blog</a><br /> <a href="http://www.chromium.org/">Chromium homepage</a> </div> <div class='clear'></div> </div></div> </div> </div> <div style='clear:both;'></div> </div> <!-- Footer --> <div class='footer-outer loading'> <div class='footer-inner'> <div class='footer-inner-2'> <div style='width:33%;float:left;'> <div class='section' id='footer-1'><div class='widget HTML' data-version='1' id='HTML2'> <h2 class='title'> Company-wide </h2> <div class='widget-content'> <ul> <li> <a href="//googleblog.blogspot.com/" title="Official Google">Official Google Blog</a> </li> <li> <a href="//googlepublicpolicy.blogspot.com/" title="Public Policy">Public Policy Blog</a> </li> <li> <a href="//googleforstudents.blogspot.com/" title="Student">Student Blog</a> </li> </ul> </div> <div class='clear'></div> </div></div> </div> <div style='width:33%;float:left;'> <div class='section' id='footer-2'><div class='widget HTML' data-version='1' id='HTML3'> <h2 class='title'> Products </h2> <div class='widget-content'> <ul> <li> <a href="//officialandroid.blogspot.com/" title="Android">Android Blog</a> </li> <li> <a href="//insidesearch.blogspot.com/" title="Inside Search">Inside Search Blog</a> </li> <li> <a href="//google-latlong.blogspot.com/" title="Lat Long">Lat Long Blog</a> </li> </ul> </div> <div class='clear'></div> </div></div> </div> <div style='width:33%;float:left;'> <div class='section' id='footer-3'><div class='widget HTML' data-version='1' id='HTML4'> <h2 class='title'> Developers </h2> <div class='widget-content'> <ul> <li> <a href="//googledevelopers.blogspot.com/" title="Developers">Developers Blog</a> </li> <li> <a href="http://blog.chromium.org/" title="Chromium">Chromium Blog</a> </li> <li> <a href="//android-developers.blogspot.com/" title="Android">Android Developers Blog</a> </li> </ul> </div> <div class='clear'></div> </div></div> </div> <div style='clear:both;'></div> </div> </div> </div> <div class='google-footer-outer loading'> <div id='google-footer'> <a href='//www.google.com/'> <img class='google-logo-dark' height='36' src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALgAAABICAYAAABFoT/eAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAACLVJREFUeNrsXd+L20YQ3vOprdLqiMXFXE2qB7dcwEcTSB7ykIc+9A/PQx/yEMq1TWhNuYIpJriNr7XpmZ5IxFEvmW2EKs3Ornb1w50PxIFP0kiz387OzM6uhGAwGAxGP3Ho+f7x7ri1O7LdccPqZjSNA4dEHsLfaHcEFedJom93x9Xu2OyOFTcBo6sED3fHZHeMEELrkAHJF0B8Rr+gDFsZ5n0luLTQ95AXs4W06D/tjpR50xtM4CjD0y48YGB4rnyZxNOzyA7zBHr+nLnDaJLg0mo/ALekCasg3Z4XbM0ZdTEgnDPeHY8bIne+Qz2GvwyGNwsuyT218KWvIIBMcwGpLiipcolecjMxfBDchNyS1EvxLiOSIecp31q6IJ/C3yrIrMqMm4jhg+AxkdwbIO3aUO4KjqqMjCT3uaazMBhWBJfuxH3CtRfiXf66DhSRZWbmlMnNaILgZxrXJQO/eO3wORZwvwm4JUxuhheCjzVBYAbW1ces45YDSoZrFNOEE835M8FT6oyeEnws8Fz3QnBxFKPHBMem4GU+m6fPGb0leCTwWcM5B36MPgeZI01gudyDdw3hPeXfo8L/rmCUWnuMMdqUL2WqWeRbhf+twfVsO7YagZGNC79fw7OthEVtkiJ4jJzTd3KPwf3CRqhhiTu23AP5sl0/0xiwISQXpNwLIJK87mHF+U8ddzzdmgKlGzlPYjyxGJQouIhNT4k9AqWEFkqfguIvagTWbcq3KW1WE3xS3m8NtA9WS451xofwjKT5kkDoK/b6mDk5FfXr1lWDL4BofZEv2/SRsK/EHGlGdBdu8QNRb8HMCFwt7Yy3DDI/QP7fx5z3VLhdlJEIs4rKNuXXJXdxZPdB7kfCzWqwCO4V1LHgLjInX3tQ1KzCR52Cz+vDj1dydeRuS74rcvs2Pi6fT5H8OaaUQPQPYcWwRSGXyhhscn5dpAnEFMkuEZetbfkTAnlSuH4DxisE+aMGeJAQ3lFl7C4LJE6QWCaCd583ORQ1jYAwjFctal7nOs2ZZvicwvlZx+RHGrcoAwKUVX8uwcc/9TT65INeDOr5shL9LDRB6QTeIy3zwfdh3WOi6axLCEhSjXU7F3h6LqggUtvyJxpynwu8tDkD98fXApOxRj8zoZ9MnGveYVIVZKaGrkBXCY65BCYNN9NkjpKOyQ81Q79JgdxS+Jn3SDTEXRI7SWzaiSTB32oI3nU3BvMfM0urhOVYgwKhuiAfc4tM07wXwm1ZRoQYSl2NUwiu01fEAHVcpixd745FvVz4dzUUc0o8rwoLy8ZSwU6CyFx1RP5II9+1bFPEFs9HWbNLiimDXE+vCm7u1CS47cofzD3aEhVY57mxRo5zlqdt+RFC1JUH2S7bcVXg4liTMakaBZZVxiTICRoivcn1sEUBlk24JmaC6kxUbYmWoqvyfck2xZGGnDFYa9MMzkYQ1ijkCX6qidybrgePiQ0QIQqoi6qRLeqQfIoRsEHaQJLBdHOnLGetSdm/IPcymJuS1PAnbQPH0MOw/39C1vL11DiLOqIsbDI8QcHvGiLnySi2qUXBicaqUSxN5LEB0g7Jt3ENXJLPJ5S1tnaZBoWbpRqrmjRE7qHmpSmNHdQcYrEUadoh+TbBnc9ri7iycI1kzPeNcLDIvbiqXpez9Tmdq6zGREPuzECBoxrPMiI2WtvyNwhJba2wy3JZ6ky5dD1lSvmZS3e4SPA1wcf1VTFHKX+cGwZzdUYcqpvUtvwrD/InDttVlyZeAKlNN5MKbAiurHhKIPlUuJvlTCCiDjSKSCsUmCFWbGLZwCESfK07JB8LvMYWVtw0D00JEHV8Mq2HkqPbE0oHLvvK2g0o8ETg+4cfwTlZDT9JDoWygu4uQQE/ivIvtcnfPkaCqhiupz7jWOAzqL/vjtcdkv9G4MVMt+EaylfuImiPAXEUjRF3pjjaHiPPZ6If9TGGAO4ZY0am6jOCb+DQ+ZCqLkIpOIPrdNfIjnFPY6nyFut7TS/fanrziOBOKMupKw94WaLMtuVnSFt9CPrWWdJE6PeltCX432DEBoh+5Dv8RRhdis8YAv9uyq4/JAwtlEApgBe9Cw9xDD3tdk4Jn0MDfiHwPHcRPxBePCMER3GuIx7kGlv9fkZ4V9lolx2Uv4X7hEj7qJ3LDoAMGbTRMRibu4L2xQ8bgt8AyU+Q+x7nYrvDnH4iuO5LxKsYwPVbkPMvKF9Zky9wXzRfVWizi62r9X5VHf55h+WHhDjGBZ4WRhyTr6z5SlCoLMxLSpBZFsQ9F80uQFbF/6aFWi+Ev51vzzsuX+msyzuQXXjUz8zEBy+zpq9yweXAoxJW4JbYrDS6gYDqGHxPl+TKeiBfxj9/EBIElPYeOA4y8/qRQfknjvSzgRgtq0Pw/M1eQeMdOSb2Bnrhr6Led+1vcp2x7oTFHMnedFW+Ivlty062BUt74oHgSj+vHepnhunn0JJAMtBZgDI/qmGtMujRv8DDpo47zBJ8UtPOuAR/7rKn8t9AJ0tBdmBAmJ/Fu71yxp4I3qh+DhyRqbi5Y1ShVPlSb8X7bRNcfgZFl+WRGYo7uecrWq1r8X5bhmzP5OdlDwsGRm1suSxkg5rYm7ConyGQ3Zl+DgSD8V/kPwrWBMG9YcBtyShBnTLdTiHgttw7qAW7cqh/ZnmPKr/6ignOaKsdyxbsToT5UkPsW00bJjijDXficcX/JsLs6w2BwGtherdckH3w/kNXRPVI0OqJQoHX42/66IMfMj/2huRjxIidgKV/W0JS+bsstDoTeAHcrI8E5zTh/sDkqxL5rZup55/3USlswfcHf4IrQplVDgW9XFlOqnwr6pVPMMEZTuC60EttvdzbLbaZ4PsFVa3nohhO+vW+yn/ZB2fUhpysmQrzBcTSai9EszuZMcEZ1lCFVrp9zGXhm69iLyY4oxFIa178lPe12I/P2DAYDAaDwWAwGAwGg8FgMBgMBoPBYDD2Cf8IMADDRGoQTe+E9AAAAABJRU5ErkJggg==' style='margin-top: -16px;' width='92'/> </a> <ul> <li> <a href='//www.google.com/'> Google </a> </li> <li> <a href='//www.google.com/policies/privacy/'> Privacy </a> </li> <li> <a href='//www.google.com/policies/terms/'> Terms </a> </li> </ul> </div> </div> <script type='text/javascript'> //<![CDATA[ // Social sharing popups. var postEl = document.getElementsByClassName('social-wrapper'); var postCount = postEl.length; for(i=0; i<postCount;i++){ postEl[i].addEventListener("click", function(event){ var postUrl = this.getAttribute("data-href"); window.open( postUrl,'popUpWindow','height=500,width=500,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes'); });} //]]> </script> <script type='text/javascript'> //<![CDATA[ var BreakpointHandler = function() { this.initted = false; this.isHomePage = false; this.isMobile = false; }; BreakpointHandler.prototype.finalizeSummary = function(summaryHtml, lastNode) { // Use $.trim for IE8 compatibility summaryHtml = $.trim(summaryHtml).replace(/(<br>|\s)+$/,''); if (lastNode.nodeType == 3) { var lastChar = summaryHtml.slice(-1); if (!lastChar.match(/[.”"?]/)) { if (!lastChar.match(/[A-Za-z]/)) { summaryHtml = summaryHtml.slice(0, -1); } summaryHtml += ' ...'; } } else if (lastNode.nodeType == 1 && (lastNode.nodeName == 'I' || lastNode.nodeName == 'A')) { summaryHtml += ' ...'; } return summaryHtml; }; BreakpointHandler.prototype.generateSummaryFromContent = function(content, numWords) { var seenWords = 0; var summaryHtml = ''; for (var i=0; i < content.childNodes.length; i++) { var node = content.childNodes[i]; var nodeText; if (node.nodeType == 1) { if (node.hasAttribute('data-about-pullquote')) { continue; } nodeText = node.textContent; if (nodeText === undefined) { // innerText for IE8 nodeText = node.innerText; } if (node.nodeName == 'DIV' || node.nodeName == 'B') { // Don't end early if we haven't seen enough words. if (seenWords < 10) { continue; } if (i > 0) { summaryHtml = this.finalizeSummary(summaryHtml, content.childNodes[i-1]); } break; } summaryHtml += node.outerHTML; } else if (node.nodeType == 3) { nodeText = node.nodeValue; summaryHtml += nodeText + ' '; } var words = nodeText.match(/\S+\s*/g); if (!words) { continue; } var remain = numWords - seenWords; if (words.length >= remain) { summaryHtml = this.finalizeSummary(summaryHtml, node); break; } seenWords += words.length; } return summaryHtml; }; BreakpointHandler.prototype.detect = function() { var match, pl = /\+/g, search = /([^&=]+)=?([^&]*)/g, decode = function (s) { return decodeURIComponent(s.replace(pl, " ")); }, query = window.location.search.substring(1); var urlParams = {}; while (match = search.exec(query)) urlParams[decode(match[1])] = decode(match[2]); this.isListPage = $('html').hasClass('list-page'); this.isMobile = urlParams['m'] === '1'; this.isHomePage = window.location.pathname == '/'; }; BreakpointHandler.prototype.initContent = function() { var self = this; $('.post').each(function(index) { var body = $(this).children('.post-body')[0]; var content = $(body).children('.post-content')[0]; $(content).addClass('post-original'); var data = $(content).children('script').html(); data = self.rewriteForSSL(data); // If exists, extract specified editor's preview. var match = data.match(/([\s\S]+?)<div data-is-preview.+?>([\s\S]+)<\/div>/m); if (match) { data = match[1]; } // Prevent big images from loading when they aren't needed. // This must be done as a pre-injection step, since image loading can't be // canceled once embedded into the DOM. if (self.isListPage && self.isMobile) { data = data.replace(/<(img|iframe) .+?>/g, ''); } // Insert template to be rendered as nodes. content.innerHTML = data; if (self.isListPage) { var summary = document.createElement('div'); $(summary).addClass('post-content'); $(summary).addClass('post-summary'); body.insertBefore(summary, content); if (match) { // Use provided summary. summary.innerHTML = match[2]; } else { // Generate a summary. // Summary generation relies on DOM, so it must occur after content is // inserted into the page. summary.innerHTML = self.generateSummaryFromContent(content, 30); } // Add read more link to summary. var titleAnchor = $(this).find('.title a')[0]; var link = titleAnchor.cloneNode(true); link.innerHTML = 'Read More'; $(link).addClass('read-more'); summary.appendChild(link); } }); // Firefox does not allow for proper styling of BR. if (navigator.userAgent.indexOf('Firefox') > -1) { $('.post-content br').replaceWith('<span class="space"></span>'); } $('.loading').removeClass('loading'); }; BreakpointHandler.prototype.process = function() { if (!this.initted) { var makeInsecureImageRegex = function(hosts) { var whitelist = hosts.join('|').replace(/\./g,'\\.'); // Normal image tags, plus input images (yes, this is possible!) return new RegExp('(<(img|input)[^>]+?src=("|\'))http:\/\/(' + whitelist +')', 'g'); }; this.sslImageRegex = makeInsecureImageRegex(BreakpointHandler.KNOWN_HTTPS_HOSTS); this.sslImageCurrentDomainRegex = makeInsecureImageRegex([window.location.hostname]); this.detect(); this.initContent(); this.initted = true; } }; BreakpointHandler.KNOWN_HTTPS_HOSTS = [ "www.google.org", "www.google.com", "services.google.com", "blogger.com", "draft.blogger.com", "www.blogger.com", "photos1.blogger.com", "photos2.blogger.com", "photos3.blogger.com", "blogblog.com", "img1.blogblog.com", "img2.blogblog.com", "www.blogblog.com", "www1.blogblog.com", "www2.blogblog.com", "0.bp.blogspot.com", "1.bp.blogspot.com", "2.bp.blogspot.com", "3.bp.blogspot.com", "4.bp.blogspot.com", "lh3.googleusercontent.com", "lh4.googleusercontent.com", "lh5.googleusercontent.com", "lh6.googleusercontent.com", "themes.googleusercontent.com", ]; BreakpointHandler.prototype.rewriteForSSL = function(html) { // Handle HTTP -> HTTPS source replacement of images, movies, and other embedded content. return html.replace(this.sslImageRegex, '$1https://$4') .replace(this.sslImageCurrentDomainRegex, '$1//$4') .replace(/(<(embed|iframe)[^>]+?src=("|'))http:\/\/([^"']*?(youtube|picasaweb\.google)\.com)/g, '$1https://$4') // Slideshow SWF takes a image host, so we need to rewrite that parameter. .replace(/(<embed[^>]+?feed=http(?=[^s]))/g, '$1s'); }; $(document).ready(function() { var handler = new BreakpointHandler(); handler.process(); // Top-level navigation. $(".BlogArchive .tab").click(function(ev) { ev.preventDefault(); $(this).parent().toggleClass('active'); $(this).siblings().slideToggle(300); }); $(".Label .tab").click(function(ev) { ev.preventDefault(); $(this).parent().toggleClass('active'); $(this).siblings().slideToggle(300); }); // Blog archive year expansion. $('.BlogArchive .intervalToggle').click(function(ev) { ev.preventDefault(); if ($(this).parent().hasClass('collapsed')) { $(this).parent().removeClass('collapsed'); $(this).parent().addClass('expanded'); } else { $(this).parent().removeClass('expanded'); $(this).parent().addClass('collapsed'); } }); // Reverse order of months. $('.BlogArchive .intervalToggle + div').each(function(_, items) { var year = $(this); year.children().each(function(_, month) { year.prepend(month); }); }); // Set anchors to open in new tab. $('.post-content img').parent().each(function(_, node) { if (node.nodeName == 'A') { $(this).attr('target', '_blank'); } }); // Process search requests. $('.searchBox input').on("keypress", function(ev) { if (ev.which == 13) { window.location.href = 'https://www.google.com/search?q=site%3A' + window.location.hostname + '%20' + encodeURIComponent ($(this).val()); } }); }); //]]> </script> <script type="text/javascript" src="https://www.blogger.com/static/v1/widgets/984859869-widgets.js"></script> <script type='text/javascript'> window['__wavt'] = 'AOuZoY4uYmUctxBBZJTEuAHLC2I6PN9qHA:1732740079126';_WidgetManager._Init('//www.blogger.com/rearrange?blogID\x3d2250394496987063687','//chrome.googleblog.com/2010/05/','2250394496987063687'); _WidgetManager._SetDataContext([{'name': 'blog', 'data': {'blogId': '2250394496987063687', 'title': 'Google Chrome Blog', 'url': 'https://chrome.googleblog.com/2010/05/', 'canonicalUrl': 'https://chrome.googleblog.com/2010/05/', 'homepageUrl': 'https://chrome.googleblog.com/', 'searchUrl': 'https://chrome.googleblog.com/search', 'canonicalHomepageUrl': 'https://chrome.googleblog.com/', 'blogspotFaviconUrl': 'https://chrome.googleblog.com/favicon.ico', 'bloggerUrl': 'https://www.blogger.com', 'hasCustomDomain': true, 'httpsEnabled': true, 'enabledCommentProfileImages': true, 'gPlusViewType': 'FILTERED_POSTMOD', 'adultContent': false, 'analyticsAccountNumber': 'UA-1870203-70', 'encoding': 'UTF-8', 'locale': 'en', 'localeUnderscoreDelimited': 'en', 'languageDirection': 'ltr', 'isPrivate': false, 'isMobile': false, 'isMobileRequest': false, 'mobileClass': '', 'isPrivateBlog': false, 'isDynamicViewsAvailable': true, 'feedLinks': '\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22Google Chrome Blog - Atom\x22 href\x3d\x22https://chrome.googleblog.com/feeds/posts/default\x22 /\x3e\n\x3clink rel\x3d\x22alternate\x22 type\x3d\x22application/rss+xml\x22 title\x3d\x22Google Chrome Blog - RSS\x22 href\x3d\x22https://chrome.googleblog.com/feeds/posts/default?alt\x3drss\x22 /\x3e\n\x3clink rel\x3d\x22service.post\x22 type\x3d\x22application/atom+xml\x22 title\x3d\x22Google Chrome Blog - Atom\x22 href\x3d\x22https://www.blogger.com/feeds/2250394496987063687/posts/default\x22 /\x3e\n', 'meTag': '', 'adsenseHostId': 'ca-host-pub-1556223355139109', 'adsenseHasAds': false, 'adsenseAutoAds': false, 'boqCommentIframeForm': true, 'loginRedirectParam': '', 'view': '', 'dynamicViewsCommentsSrc': '//www.blogblog.com/dynamicviews/4224c15c4e7c9321/js/comments.js', 'dynamicViewsScriptSrc': '//www.blogblog.com/dynamicviews/02de2df73990045b', 'plusOneApiSrc': 'https://apis.google.com/js/platform.js', 'disableGComments': true, 'interstitialAccepted': false, 'sharing': {'platforms': [{'name': 'Get link', 'key': 'link', 'shareMessage': 'Get link', 'target': ''}, {'name': 'Facebook', 'key': 'facebook', 'shareMessage': 'Share to Facebook', 'target': 'facebook'}, {'name': 'BlogThis!', 'key': 'blogThis', 'shareMessage': 'BlogThis!', 'target': 'blog'}, {'name': 'X', 'key': 'twitter', 'shareMessage': 'Share to X', 'target': 'twitter'}, {'name': 'Pinterest', 'key': 'pinterest', 'shareMessage': 'Share to Pinterest', 'target': 'pinterest'}, {'name': 'Email', 'key': 'email', 'shareMessage': 'Email', 'target': 'email'}], 'disableGooglePlus': true, 'googlePlusShareButtonWidth': 0, 'googlePlusBootstrap': '\x3cscript type\x3d\x22text/javascript\x22\x3ewindow.___gcfg \x3d {\x27lang\x27: \x27en\x27};\x3c/script\x3e'}, 'hasCustomJumpLinkMessage': false, 'jumpLinkMessage': 'Read more', 'pageType': 'archive', 'pageName': 'May 2010', 'pageTitle': 'Google Chrome Blog: May 2010'}}, {'name': 'features', 'data': {}}, {'name': 'messages', 'data': {'edit': 'Edit', 'linkCopiedToClipboard': 'Link copied to clipboard!', 'ok': 'Ok', 'postLink': 'Post Link'}}, {'name': 'template', 'data': {'name': 'custom', 'localizedName': 'Custom', 'isResponsive': false, 'isAlternateRendering': false, 'isCustom': true}}, {'name': 'view', 'data': {'classic': {'name': 'classic', 'url': '?view\x3dclassic'}, 'flipcard': {'name': 'flipcard', 'url': '?view\x3dflipcard'}, 'magazine': {'name': 'magazine', 'url': '?view\x3dmagazine'}, 'mosaic': {'name': 'mosaic', 'url': '?view\x3dmosaic'}, 'sidebar': {'name': 'sidebar', 'url': '?view\x3dsidebar'}, 'snapshot': {'name': 'snapshot', 'url': '?view\x3dsnapshot'}, 'timeslide': {'name': 'timeslide', 'url': '?view\x3dtimeslide'}, 'isMobile': false, 'title': 'Google Chrome Blog', 'description': 'The latest news from the Google Chrome team', 'url': 'https://chrome.googleblog.com/2010/05/', 'type': 'feed', 'isSingleItem': false, 'isMultipleItems': true, 'isError': false, 'isPage': false, 'isPost': false, 'isHomepage': false, 'isArchive': true, 'isLabelSearch': false, 'archive': {'year': 2010, 'month': 5, 'rangeMessage': 'Showing posts from May, 2010'}}}]); _WidgetManager._RegisterWidget('_HeaderView', new _WidgetInfo('Header1', 'header', document.getElementById('Header1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogView', new _WidgetInfo('Blog1', 'main', document.getElementById('Blog1'), {'cmtInteractionsEnabled': false}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML8', 'sidebar-top', document.getElementById('HTML8'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_LabelView', new _WidgetInfo('Label1', 'sidebar', document.getElementById('Label1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_BlogArchiveView', new _WidgetInfo('BlogArchive1', 'sidebar', document.getElementById('BlogArchive1'), {'languageDirection': 'ltr', 'loadingMessage': 'Loading\x26hellip;'}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML6', 'sidebar', document.getElementById('HTML6'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML5', 'sidebar-bottom', document.getElementById('HTML5'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML1', 'sidebar-bottom', document.getElementById('HTML1'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML2', 'footer-1', document.getElementById('HTML2'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML3', 'footer-2', document.getElementById('HTML3'), {}, 'displayModeFull')); _WidgetManager._RegisterWidget('_HTMLView', new _WidgetInfo('HTML4', 'footer-3', document.getElementById('HTML4'), {}, 'displayModeFull')); </script> </body> </html>