<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Developer blog</title>
	<atom:link href="http://marcinkliks.pl/wordpress/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://marcinkliks.pl/wordpress</link>
	<description>Blog szalonych nerdy programmers</description>
	<lastBuildDate>Fri, 29 Jan 2010 19:36:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Nowoczesne rozwiązania w przeglądarce Chrome</title>
		<link>http://marcinkliks.pl/wordpress/?p=17</link>
		<comments>http://marcinkliks.pl/wordpress/?p=17#comments</comments>
		<pubDate>Fri, 29 Jan 2010 19:34:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[rozwiązania]]></category>
		<category><![CDATA[technologie]]></category>

		<guid isPermaLink="false">http://marcinkliks.pl/wordpress/?p=17</guid>
		<description><![CDATA[ 
]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://docs.google.com/present/embed?id=ddxp6wq5_369ckmmk9hq&#038;autoStart=false&#038;loop=false" frameborder="0" width="410" height="342"></iframe> </p>
]]></content:encoded>
			<wfw:commentRss>http://marcinkliks.pl/wordpress/?feed=rss2&amp;p=17</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google chrome extension</title>
		<link>http://marcinkliks.pl/wordpress/?p=5</link>
		<comments>http://marcinkliks.pl/wordpress/?p=5#comments</comments>
		<pubDate>Sat, 05 Dec 2009 23:46:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Chromium]]></category>
		<category><![CDATA[Google Chrome]]></category>

		<guid isPermaLink="false">http://marcinkliks.pl/wordpress/?p=5</guid>
		<description><![CDATA[Rozszerzenia Chrome dla developerów]]></description>
			<content:encoded><![CDATA[<h2>Chromium browser</h2>
<p>Chromium to przeglądarka opensource rozwijająca się w oszałajamiącym tempie. Nie mówiąc już o narzędziach którymi tworzy się tą fajną przeglądarkę. Jak zapanować nad chaosem opensource? http://codereview.chromium.org .</p>
<p>Gdzie są info dla developerów Chromium? <a href="http://www.chromium.org/developers">http://www.chromium.org/developers</a></p>
<p>Od chwili startu lekko ponad rok temu zostały wydane 4 wersje(aktualna to: 4.0.263.0(dev). Brakującą funkcjonalnością tej szybkiej przeglądarki była do niedawna brak obsług rozszerzeń znanych z przeglądarki Firefox. Ta sytuacja się zmieniła w ostatnich buildach Chromium.</p>
<h2>Piszemy rozszerzenie(extension) do Chromium.</h2>
<p>Należy korzystać ze świeżej instalacji z kanału dev Chromium, mogą być najlepiej nightly builds np stąd:</p>
<p><a title="http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/33707/mini_installer.exe" href="http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/33707/mini_installer.exe" target="_blank">#mce_temp_url#</a></p>
<p>Po instalacji zabieramy się za tworzenie extension.</p>
<p>mkdir c:\extension</p>
<p>edytujemy plik manifestu</p>
<p>edit c:\extensions\manifest.json</p>
<p><code>{<br />
"author" : "Marcin vi4m Kliks ",<br />
"name": "Moje rozszerzenie",<br />
"version": "1.0",<br />
"description": "This extension allows you to do anything.",<br />
"toolstrips": [<br />
"strip.html"<br />
],<br />
"browser_action": {<br />
"default_icon": "icon.png",<br />
"popup"	: "popup.html"<br />
},<br />
"permissions": [<br />
"http://innastrona.org"<br />
]<br />
}</code></p>
<p>W katalogu tym wrzucamy jeszcze odpowiednio mała ikonę icon.png oraz pusty plik popup.html oraz pusty strip.html.  To wszystko &#8211; minalne rozszerzenie stworzone. Teraz uruchom chromium.exe następująco (modyfikacja skrótu w windows)</p>
<p>{PATH}\chromium.exe &#8211;enable-extensions &#8211;load-extension=&#8221;c:\extension&#8221;</p>
<p>Po restarcie przeglądarki widać załadowane rozszerzenie z ikoną blisko location bar</p>
<p><img class="alignnone size-medium wp-image-11" title="Widok po restarcie" src="http://marcinkliks.pl/wordpress/wp-content/uploads/2009/12/efekt-300x69.PNG" alt="Widok po restarcie" width="300" height="69" /></p>
<p>po kliknięciu wykona się kod z popup.html. Może to być dowolny kod xhtml+javascript.  Dodatkowo js ma dostęp do przestrzeni chrome.* które odpowiadają za api przeglądarki. Drugim bonusem jest możliwość wykonania cross site XHR, pod warunkiem że adres tej strony będzie zapisany w pliku manifestu w sekcji permissions &#8211; &#8220;http://innastrona.org&#8221; w naszym przypadku. Można zarejstrować dowolną ilość domen, ale muszą być wymienione jawnie. Trzeba przyznać, że Google jak zwykle proces tworzenia rozszerzeń uprościł do minimum.</p>
<h2 style="font-size: 1.5em;">Debugowanie rozszerzenia</h2>
<p>Rozszerzenie debugować można w Developer Tools przeglądarki, należy tylko odwołać się do określonego adresu &#8211; np</p>
<p><a href="chrome-extension://jikhaebpllfkfacdccmeonpkpfcnldna/popup.html">chrome-extension://jikhaebpllfkfacdccmeonpkpfcnldna/popup.html</a></p>
<div id="attachment_12" class="wp-caption alignnone" style="width: 310px"><img class="size-medium wp-image-12" title="Debugowanie rozszerzenia" src="http://marcinkliks.pl/wordpress/wp-content/uploads/2009/12/efekt2-300x210.png" alt="Debugowanie rozszerzenia" width="300" height="210" /><p class="wp-caption-text">Debugowanie rozszerzenia</p></div>
<p>Adres ID extensions odczytamy z listy Opcje-Rozszrzenia.</p>
<p>Voila!.</p>
<p>Można debugować i programować rozszerzenia popup.html.</p>
<p>strip.html to analogiczny pasek html pojawiający się w dolnej części przeglądarki, ale wygląda na to, ze developerzy chromium już wycofali się z tej funkcjonalności &#8211; w nowych buildach nie widać tego stripa (paska).</p>
<p>Smacznego kodowania.</p>
]]></content:encoded>
			<wfw:commentRss>http://marcinkliks.pl/wordpress/?feed=rss2&amp;p=5</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

