<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.webos-internals.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jcrawford</id>
	<title>WebOS Internals - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.webos-internals.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jcrawford"/>
	<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/wiki/Special:Contributions/Jcrawford"/>
	<updated>2026-04-20T06:36:16Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Resources&amp;diff=6113</id>
		<title>Resources</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Resources&amp;diff=6113"/>
		<updated>2009-10-02T19:54:15Z</updated>

		<summary type="html">&lt;p&gt;Jcrawford: /* Web Sites */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Web Sites==&lt;br /&gt;
Here's a list of websites with forums, tutorials, and general Palm Pre information.&lt;br /&gt;
&lt;br /&gt;
* [http://developer.palm.com/ Palm webOSdev] - Official Palm Pre Developer Site&lt;br /&gt;
* [http://www.PreCentral.net/ PreCentral] The most active Pre-centric forums and the largest source for homebrew apps. [[PreCentral|PreCentral]] Page has more details.&lt;br /&gt;
* [http://www.EverythingPre.com/ EverythingPre]&lt;br /&gt;
* [http://www.weboshelp.net/ webOShelp] - webOS Developer Site&lt;br /&gt;
* [http://www.PalmPre.org/ PalmPre] - Unofficial Palm Pre Fan site&lt;br /&gt;
* [http://www.webosboston.org/ WebOS Boston] User Group&lt;br /&gt;
&amp;lt;!--* howard forums - Good for a wide variety of general phone / carrier info--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programming Basics==&lt;br /&gt;
Sites with tutorials covering programming basics (HTML, CSS, Javascript)&lt;br /&gt;
&amp;lt;!-- TEMPLATE FOR LINKING TO SITE&lt;br /&gt;
* [LINK/ NAME] - DESCRIPTION&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
===HTML===&lt;br /&gt;
* [http://www.w3schools.com/htmL/ w3c HTML Tutorial]&lt;br /&gt;
* [http://www.htmldog.com/guides/htmlbeginner/ HTML Beginner Tutorial] &lt;br /&gt;
&lt;br /&gt;
===CSS===&lt;br /&gt;
* [http://www.w3schools.com/Css/default.asp/ w3c CSS Tutorial]&lt;br /&gt;
* [http://www.csstutorial.net/css_tutorial_part1.php/ The CSS Tutorial]&lt;br /&gt;
* [http://www.htmldog.com/guides/cssbeginner/ CSS Beginner Tutorial]&lt;br /&gt;
&lt;br /&gt;
===JavaScript ===&lt;br /&gt;
* [http://www.w3schools.com/JS/default.asp/ w3c JavaScript Tutorial]&lt;br /&gt;
* [https://developer.mozilla.org/en/A_re-introduction_to_JavaScript/A re-introduction to JavaScript]&lt;br /&gt;
* [http://www.webteacher.com/javascript/JavaScript for the Total Non-Programmer]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Books==&lt;br /&gt;
&amp;lt;!-- TEMPLATE FOR LINKING TO SITE&lt;br /&gt;
* [http://LINK/ NAME] - DESCRIPTION&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Palm webOS &lt;br /&gt;
&amp;lt;br&amp;gt;''The Insider's Guide to Developing Applications in JavaScript using the Palm Mojo™ Framework''&lt;br /&gt;
&amp;lt;br&amp;gt;By Mitch Allen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
JavaScript: The Good Parts &lt;br /&gt;
&amp;lt;br&amp;gt;''Unearthing the Excellence in JavaScript ''&lt;br /&gt;
&amp;lt;br&amp;gt;By Douglas Crockford&lt;/div&gt;</summary>
		<author><name>Jcrawford</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Resources&amp;diff=6112</id>
		<title>Resources</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Resources&amp;diff=6112"/>
		<updated>2009-10-02T19:53:33Z</updated>

		<summary type="html">&lt;p&gt;Jcrawford: /* Programming Basics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Web Sites==&lt;br /&gt;
Here's a list of websites with forums, tutorials, and general Palm Pre information.&lt;br /&gt;
&lt;br /&gt;
* [http://developer.palm.com/ Palm webOSdev] - Official Palm Pre Developer Site&lt;br /&gt;
* [http://www.PreCentral.net/ PreCentral] The most active Pre-centric forums and the largest source for homebrew apps. [[PreCentral|PreCentral]] Page has more details.&lt;br /&gt;
* [http://www.EverythingPre.com/ EverythingPre]&lt;br /&gt;
* [http://www.weboshelp.net/ webOShelp] - webOS Developer Site&lt;br /&gt;
* [http://www.PalmPre.org/ PalmPre] - Unofficial Palm Pre Fan site&lt;br /&gt;
&amp;lt;!--* howard forums - Good for a wide variety of general phone / carrier info--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programming Basics==&lt;br /&gt;
Sites with tutorials covering programming basics (HTML, CSS, Javascript)&lt;br /&gt;
&amp;lt;!-- TEMPLATE FOR LINKING TO SITE&lt;br /&gt;
* [LINK/ NAME] - DESCRIPTION&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
===HTML===&lt;br /&gt;
* [http://www.w3schools.com/htmL/ w3c HTML Tutorial]&lt;br /&gt;
* [http://www.htmldog.com/guides/htmlbeginner/ HTML Beginner Tutorial] &lt;br /&gt;
&lt;br /&gt;
===CSS===&lt;br /&gt;
* [http://www.w3schools.com/Css/default.asp/ w3c CSS Tutorial]&lt;br /&gt;
* [http://www.csstutorial.net/css_tutorial_part1.php/ The CSS Tutorial]&lt;br /&gt;
* [http://www.htmldog.com/guides/cssbeginner/ CSS Beginner Tutorial]&lt;br /&gt;
&lt;br /&gt;
===JavaScript ===&lt;br /&gt;
* [http://www.w3schools.com/JS/default.asp/ w3c JavaScript Tutorial]&lt;br /&gt;
* [https://developer.mozilla.org/en/A_re-introduction_to_JavaScript/A re-introduction to JavaScript]&lt;br /&gt;
* [http://www.webteacher.com/javascript/JavaScript for the Total Non-Programmer]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Books==&lt;br /&gt;
&amp;lt;!-- TEMPLATE FOR LINKING TO SITE&lt;br /&gt;
* [http://LINK/ NAME] - DESCRIPTION&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Palm webOS &lt;br /&gt;
&amp;lt;br&amp;gt;''The Insider's Guide to Developing Applications in JavaScript using the Palm Mojo™ Framework''&lt;br /&gt;
&amp;lt;br&amp;gt;By Mitch Allen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
JavaScript: The Good Parts &lt;br /&gt;
&amp;lt;br&amp;gt;''Unearthing the Excellence in JavaScript ''&lt;br /&gt;
&amp;lt;br&amp;gt;By Douglas Crockford&lt;/div&gt;</summary>
		<author><name>Jcrawford</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Resources&amp;diff=6111</id>
		<title>Resources</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Resources&amp;diff=6111"/>
		<updated>2009-10-02T19:52:57Z</updated>

		<summary type="html">&lt;p&gt;Jcrawford: /* Programming Basics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Web Sites==&lt;br /&gt;
Here's a list of websites with forums, tutorials, and general Palm Pre information.&lt;br /&gt;
&lt;br /&gt;
* [http://developer.palm.com/ Palm webOSdev] - Official Palm Pre Developer Site&lt;br /&gt;
* [http://www.PreCentral.net/ PreCentral] The most active Pre-centric forums and the largest source for homebrew apps. [[PreCentral|PreCentral]] Page has more details.&lt;br /&gt;
* [http://www.EverythingPre.com/ EverythingPre]&lt;br /&gt;
* [http://www.weboshelp.net/ webOShelp] - webOS Developer Site&lt;br /&gt;
* [http://www.PalmPre.org/ PalmPre] - Unofficial Palm Pre Fan site&lt;br /&gt;
&amp;lt;!--* howard forums - Good for a wide variety of general phone / carrier info--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programming Basics==&lt;br /&gt;
Sites with tutorials covering programming basics (HTML, CSS, Javascript)&lt;br /&gt;
&amp;lt;!-- TEMPLATE FOR LINKING TO SITE&lt;br /&gt;
* [LINK/ NAME] - DESCRIPTION&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
===HTML===&lt;br /&gt;
* [http://www.w3schools.com/htmL/ w3c HTML Tutorial]&lt;br /&gt;
* [http://www.htmldog.com/guides/htmlbeginner/ HTML Beginner Tutorial] &lt;br /&gt;
&lt;br /&gt;
===CSS===&lt;br /&gt;
* [http://www.w3schools.com/Css/default.asp/ w3c CSS Tutorial]&lt;br /&gt;
* [http://www.csstutorial.net/css_tutorial_part1.php/ The CSS Tutorial]&lt;br /&gt;
* [http://www.htmldog.com/guides/cssbeginner/ CSS Beginner Tutorial]&lt;br /&gt;
&lt;br /&gt;
===JavaScript ===&lt;br /&gt;
* [http://www.w3schools.com/JS/default.asp/ w3c JavaScript Tutorial]&lt;br /&gt;
* [https://developer.mozilla.org/en/A_re-introduction_to_JavaScript/A re-introduction to JavaScript]&lt;br /&gt;
* [http://www.webteacher.com/javascript/JavaScript for the Total Non-Programmer]&lt;br /&gt;
&lt;br /&gt;
===WebOS Development===&lt;br /&gt;
* [http://www.webosboston.org/ WebOS Boston User Group]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Books==&lt;br /&gt;
&amp;lt;!-- TEMPLATE FOR LINKING TO SITE&lt;br /&gt;
* [http://LINK/ NAME] - DESCRIPTION&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Palm webOS &lt;br /&gt;
&amp;lt;br&amp;gt;''The Insider's Guide to Developing Applications in JavaScript using the Palm Mojo™ Framework''&lt;br /&gt;
&amp;lt;br&amp;gt;By Mitch Allen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
JavaScript: The Good Parts &lt;br /&gt;
&amp;lt;br&amp;gt;''Unearthing the Excellence in JavaScript ''&lt;br /&gt;
&amp;lt;br&amp;gt;By Douglas Crockford&lt;/div&gt;</summary>
		<author><name>Jcrawford</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=MojoSDK_on_Fedora&amp;diff=5850</id>
		<title>MojoSDK on Fedora</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=MojoSDK_on_Fedora&amp;diff=5850"/>
		<updated>2009-09-18T18:13:18Z</updated>

		<summary type="html">&lt;p&gt;Jcrawford: /* Installing the Mojo SDK on Fedora 11 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Installing the Mojo SDK on Fedora 11===&lt;br /&gt;
&lt;br /&gt;
* Install VirtualBox RPM package available at:&lt;br /&gt;
[http://www.virtualbox.org/wiki/Linux_Downloads VirtualBox Linux Downloads]&lt;br /&gt;
&lt;br /&gt;
''NOTE: If you're running Fedora 64 bit, get the AMD64 version. ( Even if you have an Intel Processor ).&lt;br /&gt;
&lt;br /&gt;
* Install the RPM:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;rpm -ivh VirtualBox-&amp;lt;version&amp;gt;_fedora11-1.&amp;lt;platform&amp;gt;.rpm&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Download the Ubuntu deb package of the Mojo SDK from:&lt;br /&gt;
[http://developer.palm.com/index.php?option=com_sdkdownload&amp;amp;view=home Official PalmSDK Page]&lt;br /&gt;
&lt;br /&gt;
* Download 'alien' package conversion tool:&lt;br /&gt;
[http://packages.debian.org/unstable/source/alien Debian Alien utility]&lt;br /&gt;
&lt;br /&gt;
''You will need RPM building packages installed for the following method:&lt;br /&gt;
* Build an RPM of alien and install it:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;rpmbuild -tb alien_&amp;lt;version&amp;gt;.tar.gz&lt;br /&gt;
rpm -ivh ~/rpmbuild/RPMS/noarch/alien-&amp;lt;version&amp;gt;.rpm&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''If rpmbuild gives an error similar to:&lt;br /&gt;
error: File /download/pre/alien_8.77.tar.gz: No such file or directory&lt;br /&gt;
&lt;br /&gt;
You'll need to extract the archive manually and edit the alien.spec file.  Inside that file, find all instances of the old version number ( in my case 8.77 ) and replace it with the version number of the file you downloaded. ( in my case, 8.78 ).  Once this is done, regenerate the tar.gz file with the following syntax:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;tar -czf alien_8.78.tar.gz alien&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
''Once this completes, then build and install the RPM as above.&lt;br /&gt;
&lt;br /&gt;
* Use Alien to change the .deb file into a .tgz archive (the RPM feature of alien didn't work for me):&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;alien -tc palm_mojo_sdk-Ubuntu-&amp;lt;version&amp;gt;.deb&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Alien should report that the .tgz version is generated.&lt;br /&gt;
&lt;br /&gt;
* Extract the .tgz version:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;mkdir tmp&lt;br /&gt;
cd tmp&lt;br /&gt;
tar -xzf ../palm-sdk-&amp;lt;version&amp;gt;.tgz&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Copy the extracted files into place:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;cp -a opt/* /opt&lt;br /&gt;
cp -a usr/* /usr&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Run the installation script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;install/doinst.sh&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The script above should add a few entries into your /etc/hosts file.&lt;br /&gt;
&lt;br /&gt;
* Download the Novacom linux drivers linked on this page:&lt;br /&gt;
[http://www.webos-internals.org/wiki/Installing_novaterm_on_ubuntu_64-bit Palm Novacom Linux Driver Wiki Page]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* This too will be a .deb.  You will convert and install it the same way you did the SDK:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;alien -tc palm-novacom_&amp;lt;version&amp;gt;_i386.deb&lt;br /&gt;
mkdir novacom&lt;br /&gt;
cd novacom&lt;br /&gt;
tar -xzf ../palm-novacom-&amp;lt;version&amp;gt;.tgz&lt;br /&gt;
cd novacom&lt;br /&gt;
cp -a opt/* /opt&lt;br /&gt;
cp -a usr/* /usr&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''NOTE: If you are using Fedora 64bit, You'll need to install the 32bit version of libusb for the novacom driver to work.&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;yum install libusb.i586&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Copy the novacomd-upstart script into place:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;cp /opt/Palm/novacom/novacomd-upstart /etc/event.d/palm-novacomd&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Start the novacomd driver:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;start palm-novacomd&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* As your normal user account, launch the emulator.  The first launch will install it into VirtualBox.&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;/opt/PalmSDK/Current/bin/palm-emulator&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''For development, you should strongly consider using Eclipse and the plugins for Mojo.  Installation instructions of these plugins can be found at:&lt;br /&gt;
[http://developer.palm.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=1639 Official Palm Eclipse plugin Installation Guide]&lt;/div&gt;</summary>
		<author><name>Jcrawford</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Meetups&amp;diff=4983</id>
		<title>Meetups</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Meetups&amp;diff=4983"/>
		<updated>2009-08-30T20:30:00Z</updated>

		<summary type="html">&lt;p&gt;Jcrawford: /* Boston */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;People interested in meeting up should plop in their area and name so when we have critical mass it can be organized.&lt;br /&gt;
&lt;br /&gt;
See also [http://predevcamp.org/ predevcamp.org].&lt;br /&gt;
&lt;br /&gt;
== United States ==&lt;br /&gt;
&lt;br /&gt;
=== Arizona ===&lt;br /&gt;
==== Phoenix, AZ ====&lt;br /&gt;
# EvanDotPro&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== California ===&lt;br /&gt;
==== Fresno ====&lt;br /&gt;
# A2NY&lt;br /&gt;
&lt;br /&gt;
==== San Diego/Los Angeles ====&lt;br /&gt;
# JonVisc&lt;br /&gt;
# seigex (Inland Empire)&lt;br /&gt;
# hopspitfire&lt;br /&gt;
# hmagoo (desert)&lt;br /&gt;
&lt;br /&gt;
==== San Francisco/Bay Area/SJ ====&lt;br /&gt;
Since Palm, Inc. is located in the Bay Area, Palm employees may join us for some tech talk or tips and tricks.&lt;br /&gt;
&lt;br /&gt;
http://www.meetup.com/palm-webos/&lt;br /&gt;
&lt;br /&gt;
# rulethirty (organizer)&lt;br /&gt;
# Robi&lt;br /&gt;
# jblebrun&lt;br /&gt;
# simplyflipflops&lt;br /&gt;
# pEEf&lt;br /&gt;
# bzhou (eno in IRC, optware manager)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Colorado ===&lt;br /&gt;
==== Denver ====&lt;br /&gt;
# destinal&lt;br /&gt;
# rcanzlovar&lt;br /&gt;
# raeb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kentucky ===&lt;br /&gt;
==== Cincinnati/NKY ====&lt;br /&gt;
# xandrake__&lt;br /&gt;
# foamcoretrash&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Massachusetts ===&lt;br /&gt;
==== Boston ====&lt;br /&gt;
Please join us in the [http://www.webosboston.org/ WebOSBOSTON community - We have monthly meetings.]&lt;br /&gt;
# nebula (MIT campus area)&lt;br /&gt;
# jcrawford (Lynn MA area)  http://josephcrawford.com/&lt;br /&gt;
# [[User:FreeTim|FreeTim]]  (MIT campus area - in Kendall Sq.)&lt;br /&gt;
# djbclark Danny Clark &amp;lt;dclark@pobox.com&amp;gt; http://pobox.com/~dclark (MIT campus area)&lt;br /&gt;
# oc80z (MIT,Central Square for drinks)&lt;br /&gt;
# beingboston (Newton, Watertown area. Has T pass, can travel)&lt;br /&gt;
# trokair (Waltham area, can travel)&lt;br /&gt;
# r3compile&lt;br /&gt;
# asedeno (MIT)&lt;br /&gt;
&lt;br /&gt;
=== Minnesota ===&lt;br /&gt;
==== Minneapolis/St. Paul ====&lt;br /&gt;
# xluryan&lt;br /&gt;
# helfire&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Missouri ===&lt;br /&gt;
==== Kansas City ====&lt;br /&gt;
# xorg  (attending [http://kansascity.predevcamp.org/attendees/ KC predev camp] - a couple dozen have signed up and growing)&lt;br /&gt;
# [[User:Clebio|Clebio]] 12:51, 24 August 2009 (UTC)&lt;br /&gt;
# [[User:Ikyo|Ikyo]]&lt;br /&gt;
&lt;br /&gt;
=== Nevada ===&lt;br /&gt;
==== Las Vegas: [[wikipedia:DEF CON (convention)|Defcon]] 17 ====&lt;br /&gt;
# emkman&lt;br /&gt;
# pEEf&lt;br /&gt;
# destinal&lt;br /&gt;
# tharris-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== New York ===&lt;br /&gt;
==== Albany ====&lt;br /&gt;
# JackieRipper&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Oregon ===&lt;br /&gt;
==== Portland Area ====&lt;br /&gt;
# rck&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Texas ===&lt;br /&gt;
==== Austin ====&lt;br /&gt;
# HattCzech&lt;br /&gt;
==== Dallas ====&lt;br /&gt;
# HebrewzHammer&lt;br /&gt;
# [[user:X1011|X1011]] ([[wikipedia:University of Texas at Dallas|UTD]], attended [http://dallas.predevcamp.org/ preDevCamp])&lt;br /&gt;
&lt;br /&gt;
=== Washington ===&lt;br /&gt;
==== Seattle Area ====&lt;br /&gt;
# tictac&lt;br /&gt;
# BurntSky&lt;br /&gt;
# meshuga&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Wisconsin ===&lt;br /&gt;
==== Madison ====&lt;br /&gt;
# [[user:Christian.wilcox|christianwilcox]]&lt;/div&gt;</summary>
		<author><name>Jcrawford</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Meetups&amp;diff=4982</id>
		<title>Meetups</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Meetups&amp;diff=4982"/>
		<updated>2009-08-30T20:27:21Z</updated>

		<summary type="html">&lt;p&gt;Jcrawford: /* Boston */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;People interested in meeting up should plop in their area and name so when we have critical mass it can be organized.&lt;br /&gt;
&lt;br /&gt;
See also [http://predevcamp.org/ predevcamp.org].&lt;br /&gt;
&lt;br /&gt;
== United States ==&lt;br /&gt;
&lt;br /&gt;
=== Arizona ===&lt;br /&gt;
==== Phoenix, AZ ====&lt;br /&gt;
# EvanDotPro&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== California ===&lt;br /&gt;
==== Fresno ====&lt;br /&gt;
# A2NY&lt;br /&gt;
&lt;br /&gt;
==== San Diego/Los Angeles ====&lt;br /&gt;
# JonVisc&lt;br /&gt;
# seigex (Inland Empire)&lt;br /&gt;
# hopspitfire&lt;br /&gt;
# hmagoo (desert)&lt;br /&gt;
&lt;br /&gt;
==== San Francisco/Bay Area/SJ ====&lt;br /&gt;
Since Palm, Inc. is located in the Bay Area, Palm employees may join us for some tech talk or tips and tricks.&lt;br /&gt;
&lt;br /&gt;
http://www.meetup.com/palm-webos/&lt;br /&gt;
&lt;br /&gt;
# rulethirty (organizer)&lt;br /&gt;
# Robi&lt;br /&gt;
# jblebrun&lt;br /&gt;
# simplyflipflops&lt;br /&gt;
# pEEf&lt;br /&gt;
# bzhou (eno in IRC, optware manager)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Colorado ===&lt;br /&gt;
==== Denver ====&lt;br /&gt;
# destinal&lt;br /&gt;
# rcanzlovar&lt;br /&gt;
# raeb&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Kentucky ===&lt;br /&gt;
==== Cincinnati/NKY ====&lt;br /&gt;
# xandrake__&lt;br /&gt;
# foamcoretrash&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Massachusetts ===&lt;br /&gt;
==== Boston ====&lt;br /&gt;
Please join us in the [http://www.webosboston.org/ WebOSBOSTON community - We have monthly meetings.]&lt;br /&gt;
# nebula (MIT campus area)&lt;br /&gt;
# [[User:jcrawford|jcrawford]]  (Lynn MA area)  http://josephcrawford.com/&lt;br /&gt;
# [[User:FreeTim|FreeTim]]  (MIT campus area - in Kendall Sq.)&lt;br /&gt;
# djbclark Danny Clark &amp;lt;dclark@pobox.com&amp;gt; http://pobox.com/~dclark (MIT campus area)&lt;br /&gt;
# oc80z (MIT,Central Square for drinks)&lt;br /&gt;
# beingboston (Newton, Watertown area. Has T pass, can travel)&lt;br /&gt;
# trokair (Waltham area, can travel)&lt;br /&gt;
# r3compile&lt;br /&gt;
# asedeno (MIT)&lt;br /&gt;
&lt;br /&gt;
=== Minnesota ===&lt;br /&gt;
==== Minneapolis/St. Paul ====&lt;br /&gt;
# xluryan&lt;br /&gt;
# helfire&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Missouri ===&lt;br /&gt;
==== Kansas City ====&lt;br /&gt;
# xorg  (attending [http://kansascity.predevcamp.org/attendees/ KC predev camp] - a couple dozen have signed up and growing)&lt;br /&gt;
# [[User:Clebio|Clebio]] 12:51, 24 August 2009 (UTC)&lt;br /&gt;
# [[User:Ikyo|Ikyo]]&lt;br /&gt;
&lt;br /&gt;
=== Nevada ===&lt;br /&gt;
==== Las Vegas: [[wikipedia:DEF CON (convention)|Defcon]] 17 ====&lt;br /&gt;
# emkman&lt;br /&gt;
# pEEf&lt;br /&gt;
# destinal&lt;br /&gt;
# tharris-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== New York ===&lt;br /&gt;
==== Albany ====&lt;br /&gt;
# JackieRipper&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Oregon ===&lt;br /&gt;
==== Portland Area ====&lt;br /&gt;
# rck&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Texas ===&lt;br /&gt;
==== Austin ====&lt;br /&gt;
# HattCzech&lt;br /&gt;
==== Dallas ====&lt;br /&gt;
# HebrewzHammer&lt;br /&gt;
# [[user:X1011|X1011]] ([[wikipedia:University of Texas at Dallas|UTD]], attended [http://dallas.predevcamp.org/ preDevCamp])&lt;br /&gt;
&lt;br /&gt;
=== Washington ===&lt;br /&gt;
==== Seattle Area ====&lt;br /&gt;
# tictac&lt;br /&gt;
# BurntSky&lt;br /&gt;
# meshuga&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Wisconsin ===&lt;br /&gt;
==== Madison ====&lt;br /&gt;
# [[user:Christian.wilcox|christianwilcox]]&lt;/div&gt;</summary>
		<author><name>Jcrawford</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Messaging_Mods&amp;diff=810</id>
		<title>Messaging Mods</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Messaging_Mods&amp;diff=810"/>
		<updated>2009-07-20T13:27:32Z</updated>

		<summary type="html">&lt;p&gt;Jcrawford: /* Force Message send to an offline user without question dialog box. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;All files are located in '''/usr/palm/applications/com.palm.app.messaging/'''&lt;br /&gt;
&lt;br /&gt;
= Adding Timestamps to All Received Messages =&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
A number of users have requested adding timestamps to each message that arrives on the device.&lt;br /&gt;
Palm actually goes out of their way to group messages that have arrived during various time intervals,&lt;br /&gt;
but if you'd prefer to see a timestamp on each message, simply follow the instructions below.&lt;br /&gt;
&lt;br /&gt;
== Procedure ==&lt;br /&gt;
&lt;br /&gt;
# [[Portal:Accessing_Linux|Gain root access to your device]]&lt;br /&gt;
# Remount the file system as read/write&lt;br /&gt;
# cd to '''/usr/palm/applications/com.palm.app.messaging/app/controllers/'''&lt;br /&gt;
# Backup '''chatview-assistant.js''' (just to be safe)&lt;br /&gt;
# Open '''chatview-assistant.js''' and comment out the following lines:&lt;br /&gt;
#* 1169 - line that starts with: '''if(!ChatFlags.'''&lt;br /&gt;
#* 1177 - line that starts with: '''if(today-msg.'''&lt;br /&gt;
#* 1179 - first closing bracket on its own line: '''}'''&lt;br /&gt;
#* 1180 - second closing bracket on its own line: '''}'''&lt;br /&gt;
# Save the file and exit the editor&lt;br /&gt;
# Remount the file system as read-only&lt;br /&gt;
# Logout of your root session&lt;br /&gt;
# Reboot the device&lt;br /&gt;
&lt;br /&gt;
You should now see a full timestamp on all received messages.&lt;br /&gt;
&lt;br /&gt;
== Acknowledgements ==&lt;br /&gt;
&lt;br /&gt;
Thanks to [[User:tk102|tk102]] and [[User:scuba_steve|scuba_steve]] on [http://www.precentral.net/  PreCentral] for the mod.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Make the messaging app create a new card for each conversation =&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
The message app can be a pain when you have multiple conversations going on. You often have to swipe back and then pick someone else. &lt;br /&gt;
It gets annoying fast. This modification modifies the messaging application so that a new card is created whenever you click into a conversation.&lt;br /&gt;
&lt;br /&gt;
== Procedure ==&lt;br /&gt;
&lt;br /&gt;
Edit '''/usr/palm/applications/com.palm.app.messaging/app/controllers/listview-assistant.js''' and replace the launchChatView function with the following function:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
launchChatView: function(chatThreadId) {&lt;br /&gt;
    //Need to jump to that stage if it exists&lt;br /&gt;
    var stageController = Mojo.Controller.appController.getStageController(&amp;quot;messaging&amp;quot;+chatThreadId);&lt;br /&gt;
        if (stageController) {&lt;br /&gt;
            stageController.activate();&lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
    var params = {name: 'messaging' + chatThreadId,&lt;br /&gt;
            lightweight: Mojo.Controller.appInfo.lwStages&lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    var callback = function(controller) {&lt;br /&gt;
        controller.pushScene('chatview',chatThreadId,{&lt;br /&gt;
                    focusWindow: true&lt;br /&gt;
                });        &lt;br /&gt;
    };&lt;br /&gt;
&lt;br /&gt;
    Mojo.Controller.getAppController().createStageWithCallback(params, callback); //doesnt create ifit exists sooo&lt;br /&gt;
  },&lt;br /&gt;
&lt;br /&gt;
  clearListBadgeForChatThreadId: function(chatThreadId) {&lt;br /&gt;
    var badgeContainers = [&amp;quot;buddyBageContainer&amp;quot;,&amp;quot;historyBageContainer&amp;quot;];&lt;br /&gt;
    var listItem;&lt;br /&gt;
    for (var i = 0; i &amp;lt; badgeContainers.length; i++) {&lt;br /&gt;
        listItem = this.controller.get(badgeContainers[i] + chatThreadId);&lt;br /&gt;
        if (listItem &amp;amp;&amp;amp; !listItem.hasClassName('hide-unread-count')) {&lt;br /&gt;
            listItem.addClassName('hide-unread-count');&lt;br /&gt;
        }&lt;br /&gt;
    }    &lt;br /&gt;
  },&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now in '''/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js''', comment out lines 246 and 247.&lt;br /&gt;
This change will ensure that if you use the &amp;quot;back gesture&amp;quot; in a chat, the application doesn't bring you back to the conversation list...or do anything else.&lt;br /&gt;
&lt;br /&gt;
To &amp;quot;comment out&amp;quot; a line, add // at the beginning. Example:&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
printf(&amp;quot;This is code&amp;quot;);&lt;br /&gt;
//printf(&amp;quot;This is commented out&amp;quot;);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Concerns ==&lt;br /&gt;
There is some delay in creating the new cards. I'm not sure why though.&lt;br /&gt;
As stated above, the cards are only opened when you click into the conversation.  Responding to a notification will result in the reuse of the buddy list window, and you have disabled the back gesture.&lt;br /&gt;
&lt;br /&gt;
== Acknolwedgements ==&lt;br /&gt;
&lt;br /&gt;
Thanks to [[User:mikedg|mikedg]] for the mod.&lt;br /&gt;
&lt;br /&gt;
[[User:chris_phelps|chris_phelps]] is continuing to work on this modification to get it working more completely.&lt;br /&gt;
The first step is to clean up the other launchChatNNN functionality in app-assistant.js which accepts Luna System calls from the notification dashboard items which are created when a new message is received on the phone. These code modifications are being tested currently, and will be posted when we figure out how to clear the new message counters in the main listview-assistant.js.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Character Counter =&lt;br /&gt;
&lt;br /&gt;
One of the features I liked about my old Treo was the character counter built-in to the messaging application. I thought it would be useful on the Pre, so I modified the messaging application to show the current character count. I made this a separate page from the other modifications because it requires many code changes. Maybe the other messaging modifications could be rolled into this page as well.&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
''This modification is the same for both files, just inserted on different lines.''&amp;lt;br&amp;gt;&lt;br /&gt;
'''app/controllers/chatview-assistant.js''' Line 157:&amp;lt;br&amp;gt;&lt;br /&gt;
'''app/controllers/compose-assistant.js''' Line 115:&lt;br /&gt;
&amp;lt;code lang=&amp;quot;JavaScript&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
},&lt;br /&gt;
charCounter: {&lt;br /&gt;
	charCountContainer: this.controller.get('charCounterContainer'),&lt;br /&gt;
	charCountElement: this.controller.get('charCounter'),&lt;br /&gt;
	setTextFieldValueFn: this.setTextFieldValue.bind(this)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''app/utilities/CharacterCounter.js''' Line 40:&lt;br /&gt;
&amp;lt;code lang=&amp;quot;JavaScript&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
var charCounterUI = {&lt;br /&gt;
	containerElement: null,&lt;br /&gt;
	valueElement: null&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Line 188:&lt;br /&gt;
&amp;lt;code lang=&amp;quot;JavaScript&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
var setCurrentCharCount = function(newCharCount) {&lt;br /&gt;
	if(charCounterUI.valueElement) {&lt;br /&gt;
		if (newCharCount &amp;gt; 0)&lt;br /&gt;
			charCounterUI.valueElement.update(newCharCount);&lt;br /&gt;
		else&lt;br /&gt;
			charCounterUI.valueElement.update('');&lt;br /&gt;
	}&lt;br /&gt;
	if(charCounterUI.containerElement) {&lt;br /&gt;
		if (newCharCount == 0) {&lt;br /&gt;
			if (charCounterUI.containerElement.visible())&lt;br /&gt;
				charCounterUI.containerElement.hide();&lt;br /&gt;
		} else {&lt;br /&gt;
			if (!charCounterUI.containerElement.visible())&lt;br /&gt;
				charCounterUI.containerElement.show();&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Line 286:&lt;br /&gt;
&amp;lt;code lang=&amp;quot;JavaScript&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
if(params.charCounter) {&lt;br /&gt;
	charCounterUI.containerElement = params.charCounter.charCountContainer;&lt;br /&gt;
	charCounterUI.valueElement = params.charCounter.charCountElement;&lt;br /&gt;
	if(params.charCounter.setTextFieldValueFn) {&lt;br /&gt;
		setTextFieldValueFn = params.charCounter.setTextFieldValueFn;&lt;br /&gt;
	}						&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Line 331:&lt;br /&gt;
&amp;lt;code lang=&amp;quot;JavaScript&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
setCurrentCharCount(rawCharacterData.count);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Again, same code for both files, inserted on different lines.''&amp;lt;br&amp;gt;&lt;br /&gt;
'''app/views/chatview/chatview-scene.html''' Line 25:&amp;lt;br&amp;gt;&lt;br /&gt;
'''app/views/compose/compose-scene.html''' Line 8:&lt;br /&gt;
&amp;lt;code lang=&amp;quot;HTML&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;charCounterContainer&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;div id=&amp;quot;charCounter&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''stylesheets/messaging.css''' Line 839:&lt;br /&gt;
&amp;lt;code lang=&amp;quot;CSS&amp;quot;&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
#messageContainer #charCounterContainer {&lt;br /&gt;
	line-height: 20px;&lt;br /&gt;
	display:block;&lt;br /&gt;
	height: 20px;&lt;br /&gt;
	border-width: 0px 10px 0px 9px;&lt;br /&gt;
	-webkit-border-image: url(../images/message-segment-badge.png) 0 10 0 9 stretch stretch;&lt;br /&gt;
	position: absolute;&lt;br /&gt;
	z-index: 3;&lt;br /&gt;
	top: 2px;&lt;br /&gt;
	left: 2px;&lt;br /&gt;
}&lt;br /&gt;
#messageContainer #charCounterContainer #charCounter {&lt;br /&gt;
	font-size: 12px;&lt;br /&gt;
	font-weight: bold;&lt;br /&gt;
	color: #679BC2;&lt;br /&gt;
	margin: 0px -4px 3px -3px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
If you don't like the location of the character counter (I have it configured for the top left of the text area), you can modify the #charCounterContainer section in the messaging.css above.&lt;br /&gt;
&lt;br /&gt;
== Use ==&lt;br /&gt;
&lt;br /&gt;
This will require LunaSysMgr to be restarted. A rescan will not work. After you've made the modifications listed above, run the following command:&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
pkill LunaSysMgr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Credits ==&lt;br /&gt;
&lt;br /&gt;
* [[User:HattCzech|HattCzech]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Force Message send to an offline user without question dialog box. =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mount -o remount,rw /&lt;br /&gt;
sudo vi /usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js&lt;br /&gt;
/forceSendIfOffline =&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Change the line to true (below) , writequit , remount, reload , enjoy &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
forceSendIfOffline = true; &lt;br /&gt;
:wq &lt;br /&gt;
sudo mount -o remount,ro /&lt;br /&gt;
sudo stop LunaSysMgr ; sudo start LunaSysMgr&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jcrawford</name></author>
	</entry>
</feed>