<?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=VictorKruger</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=VictorKruger"/>
	<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/wiki/Special:Contributions/VictorKruger"/>
	<updated>2026-04-15T09:53:41Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Camera_Shutter_Sound_On-Off_Button&amp;diff=6042</id>
		<title>Patch Camera Shutter Sound On-Off Button</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Camera_Shutter_Sound_On-Off_Button&amp;diff=6042"/>
		<updated>2009-09-30T15:51:14Z</updated>

		<summary type="html">&lt;p&gt;VictorKruger: added notiation at the top stating that this patch works with version 1.2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
&lt;br /&gt;
Edit: This appears to work with version 1.2, When i applied this patch there was some fuzzing that occurred but when i loaded up my camera app everything worked.&lt;br /&gt;
 &lt;br /&gt;
Needed to try something to start playing with the Pre, so I decided to add a button to selectively turn on and off the shutter sound in the camera app.&lt;br /&gt;
All of the normal precautions and methods for modifying the existing apps apply here.  I've tested this and it works fine on my phone, but use at your own risk.&lt;br /&gt;
NOTE: I'm not a great graphic artist, so the buttons are kinda crappy.  If someone feels like creating some new ones, please do and post them here.  Also, I'm not entirely fond of the button location, but it seemed to fit pretty well...feel free to change the location of the button in your own version.&lt;br /&gt;
&lt;br /&gt;
Here is the .png of the new icons used:&lt;br /&gt;
&lt;br /&gt;
[[Image:Menu-shutter-sound.png]]&lt;br /&gt;
&lt;br /&gt;
Second set of icons: http://www.statestdesign.com/images/menu-shutter-sound.png&lt;br /&gt;
&lt;br /&gt;
Place this file in:  /usr/palm/applications/com.palm.app.camera/images&lt;br /&gt;
&lt;br /&gt;
Diffs of the 3 existing files that need to be modified:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
--- /usr/palm/applications/com.palm.app.camera/app/controllers/capture-assistant.js	Tue Jun 16 20:52:18 2009&lt;br /&gt;
+++ /Camera - Shutter Sound/capture-assistant.js	Sat Jun 27 15:23:23 2009&lt;br /&gt;
@@ -77,6 +77,10 @@&lt;br /&gt;
 		this.controller.get('flashButtonState').observe(Mojo.Event.tap, function(){&lt;br /&gt;
 			this._handleFlashButton();&lt;br /&gt;
 		}.bind(this));&lt;br /&gt;
+		&lt;br /&gt;
+		this.controller.get('shutterSoundButtonState').observe(Mojo.Event.tap, function(){&lt;br /&gt;
+			this._handleShutterSoundButton();&lt;br /&gt;
+		}.bind(this));&lt;br /&gt;
 &lt;br /&gt;
 		this.onKeyPressHandler = this.onKeyPress.bindAsEventListener(this);&lt;br /&gt;
 		Mojo.listen(this.controller.sceneElement, Mojo.Event.keypress, this.onKeyPressHandler);&lt;br /&gt;
@@ -136,7 +140,12 @@&lt;br /&gt;
 		if (undefined === this.flashState){&lt;br /&gt;
 			var prefFlashState = +this.cameraControl.prefs[CameraControl.PREFS.FLASH];&lt;br /&gt;
 			this.setFlashState(prefFlashState);&lt;br /&gt;
-		}		&lt;br /&gt;
+		}	&lt;br /&gt;
+		&lt;br /&gt;
+		if (undefined === this.shutterSoundState){&lt;br /&gt;
+			var prefShutterSoundState = this.cameraControl.prefs[CameraControl.PREFS.SOUNDS];&lt;br /&gt;
+			this.setShutterSoundState(prefShutterSoundState);&lt;br /&gt;
+		}	&lt;br /&gt;
 &lt;br /&gt;
 		try {&lt;br /&gt;
 			var initialOrientation = PalmSystem.screenOrientation;&lt;br /&gt;
@@ -607,6 +616,45 @@&lt;br /&gt;
 		} &lt;br /&gt;
 &lt;br /&gt;
 		llog(&amp;quot;Set Flash Mode to &amp;quot;+camera.flash);&lt;br /&gt;
+	},&lt;br /&gt;
+	&lt;br /&gt;
+	/**&lt;br /&gt;
+	 * Click handler for the shutter sound button.&lt;br /&gt;
+	 *  &lt;br /&gt;
+	 * @param {Event} event  The click event&lt;br /&gt;
+	 */&lt;br /&gt;
+	_handleShutterSoundButton: function(event){&lt;br /&gt;
+		if (this.shutterSoundState == 'enabled'){&lt;br /&gt;
+			this.shutterSoundState = 'disabled';&lt;br /&gt;
+		}&lt;br /&gt;
+		else {&lt;br /&gt;
+			this.shutterSoundState = 'enabled';&lt;br /&gt;
+		}&lt;br /&gt;
+&lt;br /&gt;
+		this.setShutterSoundState(this.shutterSoundState);&lt;br /&gt;
+	},&lt;br /&gt;
+		&lt;br /&gt;
+	setShutterSoundState: function(state){&lt;br /&gt;
+		if ((state != 'disabled') &amp;amp;&amp;amp; (state != 'enabled')) {&lt;br /&gt;
+			/*&lt;br /&gt;
+			var elemC = this.controller.get('sagar_console');&lt;br /&gt;
+			if (elemC) {&lt;br /&gt;
+				elemC.innerHTML = state;&lt;br /&gt;
+			}&lt;br /&gt;
+			*/&lt;br /&gt;
+			llog(&amp;quot;Requested shutter sound state is out of range (&amp;quot;+state+&amp;quot;)&amp;quot;);&lt;br /&gt;
+			return;&lt;br /&gt;
+		}&lt;br /&gt;
+&lt;br /&gt;
+		this.shutterSoundState = state;&lt;br /&gt;
+		CameraPrefs.updatePref(this.cameraControl.prefs, CameraControl.PREFS.SOUNDS, state);&lt;br /&gt;
+	&lt;br /&gt;
+		if (this.shutterSoundState == 'enabled') {&lt;br /&gt;
+			this.controller.get('shutterSoundButtonState').className = &amp;quot;shutter-sound-button shutter-sound-on&amp;quot;;&lt;br /&gt;
+		}&lt;br /&gt;
+		else if (this.shutterSoundState == 'disabled') {&lt;br /&gt;
+			this.controller.get('shutterSoundButtonState').className = &amp;quot;shutter-sound-button shutter-sound-off&amp;quot;;&lt;br /&gt;
+		}&lt;br /&gt;
 	},&lt;br /&gt;
 &lt;br /&gt;
 	/**&lt;br /&gt;
&lt;br /&gt;
--- /usr/palm/applications/com.palm.app.camera/app/views/capture/capture-scene.html	Tue Jun 16 20:52:18 2009&lt;br /&gt;
+++ /Camera - Shutter Sound/capture-scene.html	Sat Jun 27 15:23:47 2009&lt;br /&gt;
@@ -14,6 +14,8 @@&lt;br /&gt;
 		&amp;lt;div id=&amp;quot;captureSpinner&amp;quot; class=&amp;quot;capture-spinner&amp;quot; x-mojo-element=&amp;quot;Spinner&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;		&lt;br /&gt;
 		&amp;lt;div class=&amp;quot;capture-button&amp;quot; id=&amp;quot;captureButton&amp;quot;&amp;gt;&lt;br /&gt;
 		&amp;lt;/div&amp;gt;&lt;br /&gt;
+		&amp;lt;div class=&amp;quot;shutter-sound-button shutter-sound-off&amp;quot; id=&amp;quot;shutterSoundButtonState&amp;quot;&amp;gt;&lt;br /&gt;
+		&amp;lt;/div&amp;gt;&lt;br /&gt;
 		&amp;lt;div class=&amp;quot;flash-button flash-off&amp;quot; id=&amp;quot;flashButtonState&amp;quot;&amp;gt;&lt;br /&gt;
 		&amp;lt;/div&amp;gt;&lt;br /&gt;
 	&amp;lt;/div&amp;gt;&lt;br /&gt;
@@ -23,7 +25,7 @@&lt;br /&gt;
 			&lt;br /&gt;
 		&amp;lt;/div&amp;gt;&lt;br /&gt;
 	&amp;lt;/div&amp;gt;&lt;br /&gt;
-	&amp;lt;!-- &amp;lt;div id=&amp;quot;sagar_console&amp;quot; style=&amp;quot;z-index: 100; position: fixed; top: 10px; left: 10px; width: 90px; height: 20px; background-color: #000000; color: #8080ff; font-family: sans-serif; font-size: 12px; display: none;&amp;quot; &amp;gt;Hello!&amp;lt;/div&amp;gt; --&amp;gt;&lt;br /&gt;
+	&amp;lt;!--&amp;lt;div id=&amp;quot;sagar_console&amp;quot; style=&amp;quot;z-index: 100; position: fixed; top: 10px; left: 10px; width: 90px; height: 20px; background-color: #000000; color: #8080ff; font-family: sans-serif; font-size: 12px; display: none;&amp;quot; &amp;gt;Hello!&amp;lt;/div&amp;gt; --&amp;gt;&lt;br /&gt;
 	&amp;lt;div id=&amp;quot;gpsMeter&amp;quot; style=&amp;quot;z-index: 100; position: fixed; top: 10px; right: 10px; width: 90px; height: 20px; background-color: #a0a0a0; display: none&amp;quot; &amp;gt;&amp;lt;/div&amp;gt; --&amp;gt;&lt;br /&gt;
 	&lt;br /&gt;
 	&amp;lt;div id=&amp;quot;palmScrim&amp;quot; class=&amp;quot;palm-scrim&amp;quot; style=&amp;quot;z-index: 1001; display: none;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
--- /usr/palm/applications/com.palm.app.camera/stylesheets/camera.css	Tue Jun 16 20:52:18 2009&lt;br /&gt;
+++ /Camera - Shutter Sound/camera.css	Sat Jun 27 14:57:27 2009&lt;br /&gt;
@@ -116,6 +116,28 @@&lt;br /&gt;
 		z-index: 20;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
+.shutter-sound-button,&lt;br /&gt;
+.shutter-sound-button.shutter-sound-off {&lt;br /&gt;
+		width: 50px;&lt;br /&gt;
+		height: 50px;&lt;br /&gt;
+		background: url(../images/menu-shutter-sound.png) 0 0 no-repeat;&lt;br /&gt;
+		position: absolute;&lt;br /&gt;
+		left: 188px;&lt;br /&gt;
+		top: 15px;&lt;br /&gt;
+}&lt;br /&gt;
+&lt;br /&gt;
+.shutter-sound-button.shutter-sound-on:active {&lt;br /&gt;
+		background-position: 0px -50px;&lt;br /&gt;
+}&lt;br /&gt;
+&lt;br /&gt;
+.shutter-sound-button.shutter-sound-on {&lt;br /&gt;
+		background-position: 0px -100px;&lt;br /&gt;
+}&lt;br /&gt;
+&lt;br /&gt;
+.shutter-sound-button.shutter-sound-on:active {&lt;br /&gt;
+		background-position: 0px -150px;&lt;br /&gt;
+}&lt;br /&gt;
+&lt;br /&gt;
 /* Photo Roll */&lt;br /&gt;
 &lt;br /&gt;
 .photo-roll {&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Couple of screenshots of what it looks like:&lt;br /&gt;
&lt;br /&gt;
[[Image:Cameramod-SoundOn.png]]&lt;br /&gt;
[[Image:Cameramod-SoundOff.png]]&lt;/div&gt;</summary>
		<author><name>VictorKruger</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Portal:Patches_to_webOS&amp;diff=6041</id>
		<title>Portal:Patches to webOS</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Portal:Patches_to_webOS&amp;diff=6041"/>
		<updated>2009-09-30T15:49:09Z</updated>

		<summary type="html">&lt;p&gt;VictorKruger: Added camera shutter sound to 1.2 OK as it worked when i patched the camera app.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__notoc__&lt;br /&gt;
{{portal-header&lt;br /&gt;
|This page lists patches to webOS existing apps which modify the behavior as shipped.  '''Note''' that these patches may be version specific and may be broken by future webOS updates.  Proceed with caution. If you get one that works please move it under the correct column, alphabetically, and title the page:&lt;br /&gt;
'''&amp;quot;Patch [application] [description]&amp;quot;''' (for application specific patches) &amp;lt;br&amp;gt;&lt;br /&gt;
'''&amp;quot;Patch webOS [description]&amp;quot;''' (for patches not part of a specific application)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Each page should contain at least the basic headings&lt;br /&gt;
*1. '''Introduction''': A brief description to introduce people to the patch.&lt;br /&gt;
**1.1 '''Usage''':An explanation if it is needed on how to use the modification see Add/Delete Pages in the Launcher as an example.&lt;br /&gt;
*2. '''Editing Process''': Step by step instructions to manually edit. &lt;br /&gt;
*3. '''Patching Process''': Details for making the edits with a patch file and pointing people to the [[Applying Patches]] page if the patch is also provided in the webos-internals gitorious repository.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{portal-three-columns&lt;br /&gt;
|column1= &lt;br /&gt;
===webOS Update Information===&lt;br /&gt;
* [[Update 1.2.0|Update 1.2]]&lt;br /&gt;
* [[Update 1.1.0|Update 1.1]]&lt;br /&gt;
* [[Update 1.0.4|Update 1.0.4]] &lt;br /&gt;
* [[Update 1.0.3|Update 1.0.3]]&lt;br /&gt;
&lt;br /&gt;
===Patches that Need Work===&lt;br /&gt;
* [[Bugs]]&lt;br /&gt;
&lt;br /&gt;
|column2=&lt;br /&gt;
===Patch Ideas to be Created or in Progress===&lt;br /&gt;
&lt;br /&gt;
* [[More_Calculator_Functions|Accessing additional built-in calculator functions]]&lt;br /&gt;
* [[Add_Ability_To_Choose_Snooze_Length|Add Ability to Choose Snooze Length]]&lt;br /&gt;
* [[Add_Icon_To_Quick_Launcher|Add an icon to the quick launcher]]&lt;br /&gt;
* [[Changing Clipboard Data From The Shell|Changing Clipboard Data from the Shell]]&lt;br /&gt;
* [[Development_%26_Tweak_Ideas | Development &amp;amp; Tweaking Ideas]]&lt;br /&gt;
* [[Longer Vibrate|Longer Vibrate]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|column3=&lt;br /&gt;
===Notes===&lt;br /&gt;
These modifications lack a patch process, please add one to the details to the page and have it added to the webOS-internals gitorious repository. Info for the repository is on [[Applying Patches]].&lt;br /&gt;
&lt;br /&gt;
*Empty&lt;br /&gt;
}}&lt;br /&gt;
{{portal-three-columns&lt;br /&gt;
|column1= &lt;br /&gt;
==Patches to webOS apps==&lt;br /&gt;
===webOS 1.2 OK===&lt;br /&gt;
++ Indicates needs to be added to the git repository. Please help add them and remove the notation when added.&lt;br /&gt;
&lt;br /&gt;
* ++[[Patch Browser Global Search Addons|Browser: Global Search Addons]]&lt;br /&gt;
* [[Patch Camera Easy Shutter Sound Off|Camera: Easy Shutter Sound Off]]&lt;br /&gt;
* [[Patch Camera Shutter Sound On-Off Button|Camera: Shutter Sound On-Off Button]]&lt;br /&gt;
* [[Patch Clock Enabling the Hidden Theme|Clock: Enabling the Hidden Theme]]&lt;br /&gt;
* [[Patch Email Confirm Deletion|Email: Confirm Deletion]]&lt;br /&gt;
* [[Patch Email Change Default Font for Replies-Forwards from Navy to Black|Email: Change Default Font for Replies/Forwards from Navy to Black]]&lt;br /&gt;
* ++[[Patch Email DeleteAll|Email: Delete All]]&lt;br /&gt;
* [[Patch Launcher Add or Delete Pages|Launcher: Add/Delete Pages]]&lt;br /&gt;
* ++[[Patch Launcher Hide-Delete The NASCAR App|Launcher: Hide/Delete The NASCAR App]]&lt;br /&gt;
* ++[[Patch Launcher Hide Media Sync Option|Launcher: Hide Media Sync Option]]&lt;br /&gt;
* [[Patch Launcher Reset Scroll on Page Change|Launcher: Reset Scroll on Page Change]]&lt;br /&gt;
* [[Patch Launcher Unhide the DeveloperMode App|Launcher: Unhide the DeveloperMode App]]&lt;br /&gt;
* [[Patch Launcher To Allow More Icons Per Row|Launcher: Allows More Icons Per Row]]&lt;br /&gt;
* [[Patch Messaging Character Counter|Messaging: Character Counter]]&lt;br /&gt;
* ++[[Patch Messaging Display Full Status Messages|Messaging: Display Full Status Messages]] &lt;br /&gt;
* [[Patch Messaging Change &amp;quot;Enter Key&amp;quot; To Create Newline|Messaging: Change &amp;quot;Enter Key&amp;quot; To Create Newline]]&lt;br /&gt;
* [[Patch Messaging New Cards For Each Conversation|Messaging: New Cards For Each Conversation]]&lt;br /&gt;
* [[Patch Messaging Adding Timestamps to All Received Messages|Messaging: Adding Timestamps to All Received Messages]]&lt;br /&gt;
* ++[[Patch MediaPlayer Ignore 'A', 'An', and 'The' In Artist and Album names|Music Player: Ignore 'A', 'An', and 'The' in Artist and Album Names]]&lt;br /&gt;
* ++[[Patch Phone Edit Dialer Theme|Phone: Edit Dialer Theme]]&lt;br /&gt;
* ++[[Patch Phone Show Call Duration in the Call Log|Phone: Show Call Duration in the Call Log]]&lt;br /&gt;
&lt;br /&gt;
===Fixed in 1.2 - No longer needed===&lt;br /&gt;
* [[Patch Amazon Download Music over EVDO|Amazon: Download Music over EVDO]]&lt;br /&gt;
* [[Patch Browser Downloading Files|Browser: Downloading Files]] &lt;br /&gt;
* [[Patch MediaPlayer Bookmarking|Music Player: Bookmarking - Works in 1.2 for podcast, speech, spoken word, netcast, or audiobook genre tags only]]&lt;br /&gt;
&lt;br /&gt;
===webOS 1.1 OK===&lt;br /&gt;
&lt;br /&gt;
* [[Patch Browser Delete Individual History Items|Browser: Delete Individual History Items]]&lt;br /&gt;
* [[Patch Calendar Show All-Day Events in Month View|Calendar: Show All-Day Events in Month View]] &lt;br /&gt;
* ++[[Patch Camera 10 Second Countdown Timer|Camera: 10 Second Countdown Timer]]&lt;br /&gt;
* [[Patch Camera Shutter Sound On-Off Button|Camera: Shutter Sound On-Off Button]]&lt;br /&gt;
* [[Patch Camera Using Volume Buttons to Take a Picture|Camera: Using Volume Buttons to Take a Picture]]&lt;br /&gt;
* ++[[Patch Clock Changing Alarm Button Order and Snooze Duration|Clock: Changing Alarm Button Order and Snooze Duration]]&lt;br /&gt;
* ++[[Patch Email Change &amp;quot;Running Late&amp;quot; Message|Email: Change &amp;quot;Running Late&amp;quot; Message]]&lt;br /&gt;
* [[Patch Email DeleteAll|Email: Delete All]]&lt;br /&gt;
* ++[[Patch Messaging Force Offline Send Without Dialog|Messaging: Force Offline Send Without Dialog]]&lt;br /&gt;
* [[Patch Messaging Forward Messages|Messaging: Forward Messages]]&lt;br /&gt;
* [[Patch Messaging Jump Forward, Backward One Word at a Time|Messaging: Jump Forward, Backward One Word at a Time]]&lt;br /&gt;
* [[Patch Messaging Landscape Orientation|Messaging: Landscape Orientation]]&lt;br /&gt;
* [[Patch Messaging Sounds|Messaging: Message Sound]]&lt;br /&gt;
* ++[[Patch MCraig Enabling Personals Category|mCraig: Enabling Personals Category]]&lt;br /&gt;
* ++[[Patch PDF Viewer Change Orientation|PDF Viewer: Change Orientation]]&lt;br /&gt;
* [[Patch Phone Disable Various Call Sounds|Phone: Disable Various Call Sounds]]&lt;br /&gt;
* ++[[Patch Phone Editing the Lock Screen|Phone: Editing the Lock Screen]]&lt;br /&gt;
* [[Patch Tasks Always Show Details of New Tasks|Tasks: Always Show Details of New Tasks]]&lt;br /&gt;
* ++[[Patch WebOS Bypassing Lock Screen|Unlock: Bypass the Passcode Entry Screen]]&lt;br /&gt;
&lt;br /&gt;
===Fixed in 1.1 - No longer needed===&lt;br /&gt;
* [[Patch Email Fix Broken Formatting|Email: Fix Broken Formatting for E-mails]]&lt;br /&gt;
&lt;br /&gt;
===Not 1.1 compatible===&lt;br /&gt;
* [[Patch Camera Remote View|Camera: Remote View]]&lt;br /&gt;
* [[Patch Email Enable Landscape Viewing|Email: Enable Landscape Viewing]] &lt;br /&gt;
* [[Patch Email Fix Attachments|Email: Fix Attachments]]&lt;br /&gt;
* [[Patch Sudoku Disable Zooming|Sudoku: Disable Zooming]]&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
|column2=&lt;br /&gt;
==Patches not part of a specific app==&lt;br /&gt;
===webOS 1.2 OK===&lt;br /&gt;
* [[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* [[On Screen Keyboard]]&lt;br /&gt;
* [[Patch webOS Disable Charging Event Sounds|Disable Charging Event Sounds]]&lt;br /&gt;
* [[Patch webOS Turning Off Dialpad Noise|Turning Off Dialpad Noise]]&lt;br /&gt;
* [[Patch webOS Add Words to AutoCorrect Dictionary|Modify AutoCorrect Dictionary]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
&lt;br /&gt;
===webOS 1.1 OK===&lt;br /&gt;
&lt;br /&gt;
++ Indicates needs to be added to the git repository. Please help add them and remove the notation when added.&lt;br /&gt;
&lt;br /&gt;
* ++[[Patch webOS Boot Themes|Boot Themes]]&lt;br /&gt;
* ++[[Patch webOS Brightness|Brightness]]&lt;br /&gt;
* ++[[Patch webOS Bypassing Activation|Bypassing Activation]]&lt;br /&gt;
* ++[[Patch webOS Change Carrier String|Change Carrier String]]&lt;br /&gt;
* ++[[Change_the_default_notification.wav_Sound|Change the Default notification.wav Sound]]&lt;br /&gt;
* [[Patch webOS Changing the &amp;quot;Turn off after X&amp;quot; time|Changing the &amp;quot;Turn off after X&amp;quot; Time]]&lt;br /&gt;
* ++[[Patch webOS CPU Frequency or Voltage Scaling|CPU Frequency or Voltage Scaling]]&lt;br /&gt;
* ++[[Patch webOS GPS Tracking|GPS Tracking]]&lt;br /&gt;
* ++[[Patch webOS Graphics|Graphics]]&lt;br /&gt;
* ++[[Patch webOS Hourly Chime|Hourly Chime]] &lt;br /&gt;
* ++[[Patch webOS Keep Phone Awake While in Remote Session|Keep Phone Awake While in Remote Session]]&lt;br /&gt;
* [[Patch webOS Logging Information from Within Scripts|Logging Information from Within Scripts]]&lt;br /&gt;
* [[Patch webOS Modifying a Stock App While Keeping the Original|Modifying a Stock App While Keeping the Original]] &lt;br /&gt;
* [[Patch webOS Radio Power Switch|Radio Power Switch]]&lt;br /&gt;
* ++[[Patch webOS Random Wallpaper Switching|Random Wallpaper Switching]]&lt;br /&gt;
* [[Patch webOS Reverse Tunnel|Reverse Tunnel]] &lt;br /&gt;
* [[Patch webOS Show Actual Battery Percentage | Show Actual Battery Percentage]]&lt;br /&gt;
* [[Screenlock On When Connected|Stay On While Connected]]&lt;br /&gt;
* [[Make USB Partition Writable via SFTP|Make USB Partition writable via SFTP]]&lt;br /&gt;
&lt;br /&gt;
===Fixed in 1.1 - No longer needed===&lt;br /&gt;
* Empty&lt;br /&gt;
&lt;br /&gt;
===Not 1.1 compatible===&lt;br /&gt;
* [[Patch webOS Email App Patch to Prompt for IPK Installation|Email App Patch to Prompt for IPK Installation]] &lt;br /&gt;
&lt;br /&gt;
|column3=&lt;br /&gt;
==== The following have not been checked for compatibility with webOS 1.1. ====&lt;br /&gt;
&lt;br /&gt;
* [[Browser_Plugins|Browser Plugins]]&lt;br /&gt;
* [[Camera Mod Alternate Sound Disable]]&lt;br /&gt;
* [[Changes_Alert/Notification_Sounds|Changes Alert/Notification Sounds]]&lt;br /&gt;
* [[Myavatar In Messaging App|Myavatar In Messaging App]] &lt;br /&gt;
* [[Photos Slideshow|Photos Slideshow]] &lt;br /&gt;
&lt;br /&gt;
==== The following are deprecated.  They have been replaced with methods which are easier or are moot in 1.1 ====&lt;br /&gt;
&lt;br /&gt;
* [[Installing Homebrew Apps With A Rooted Pre|Installing Homebrew Apps With A Linux Accessed Pre]]  &lt;br /&gt;
* [[Packaging Homebrew Apps for Stock Pre without Rooting|Packaging Homebrew Apps for Stock Pre without Accessing Linux]] &lt;br /&gt;
* [[Modifying Stock Applications|Modifying Stock Applications]] &lt;br /&gt;
&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>VictorKruger</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Application:Terminal&amp;diff=5751</id>
		<title>Application:Terminal</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Application:Terminal&amp;diff=5751"/>
		<updated>2009-09-15T15:58:09Z</updated>

		<summary type="html">&lt;p&gt;VictorKruger: added notiation of change in address to put in conf file&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{application&lt;br /&gt;
|name=Terminal&lt;br /&gt;
|type=webOS&lt;br /&gt;
|version=Version: Alpha 0.2.2 &amp;lt;br /&amp;gt;(26 Aug 2009)&lt;br /&gt;
|tag=Utilities&lt;br /&gt;
|screenshot=Application_Terminal.jpg&lt;br /&gt;
|description=&lt;br /&gt;
&lt;br /&gt;
== Summary == &lt;br /&gt;
&lt;br /&gt;
Terminal is a mojo applicaton for the Pre which runs a full VT-100 or Linux terminal in a mojo scene.  Terminal relies on a custom written plugin developed from community research which allows the mojo app to talk to the back end.  It can be used for local operation to run your Pre, or can reach out from the Pre to other computers.  &lt;br /&gt;
&lt;br /&gt;
== Status ==&lt;br /&gt;
&lt;br /&gt;
This is alpha software.  Consider yourself lucky if it works at all.  Many people have put many hours of hard work in to get just this far - respect that effort when making comments and suggestions.&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
If you have installed [[Application:Preware|Preware]], WebOS Internal's over the air installer, you can simply choose and install the Terminal Plugin and then choose and install Terminal from the available applications.  &lt;br /&gt;
&lt;br /&gt;
If you have installed WebOS Quick Install to your PC, you can select and install the Terminal Plugin Terminal by pressing the third button, choosing the appropriate WebOS Internals Feed from the pull down, choose Terminal, download and install.  &lt;br /&gt;
&lt;br /&gt;
Install the plugin FIRST before installing the terminal application. Detailed command line installation instrutions can be found below.&lt;br /&gt;
&lt;br /&gt;
== License ==&lt;br /&gt;
&lt;br /&gt;
Please be aware that org.webosinternals.terminal and org.webosinternals.termplugin are licensed under the GPLv2.&lt;br /&gt;
&lt;br /&gt;
They cannot be used by a closed source application.  If you want to use them in a non-GPLv2 but otherwise open source application, please contact the authors.&lt;br /&gt;
&lt;br /&gt;
== Operating notes ==&lt;br /&gt;
&lt;br /&gt;
Non-obvious keys:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Table&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;&lt;br /&gt;
{{{!}} border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
{{!}}Desired&lt;br /&gt;
{{!}}On Pre&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Delete&lt;br /&gt;
{{!}}Gesture area - .&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Insert&lt;br /&gt;
{{!}}Gesture area - 0&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Home&lt;br /&gt;
{{!}}Gesture area - 1&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Up&lt;br /&gt;
{{!}}Gesture area - 2&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}PgUp&lt;br /&gt;
{{!}}Gesture area - 3&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Left&lt;br /&gt;
{{!}}Gesture area - 4&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Right&lt;br /&gt;
{{!}}Gesture area - 6 &lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}End&lt;br /&gt;
{{!}}Gesture area - 7&lt;br /&gt;
{{!}}}&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;  &amp;lt;/TD&amp;gt;&amp;lt;TD&amp;gt;&lt;br /&gt;
{{{!}} border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;4&amp;quot;&lt;br /&gt;
{{!}}Desired&lt;br /&gt;
{{!}}On Pre&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Down&lt;br /&gt;
{{!}}Gesture area - 8&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}PgDn&lt;br /&gt;
{{!}}Gesture area - 9&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Control&lt;br /&gt;
{{!}}Sym&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Esc&lt;br /&gt;
{{!}}Orange-Space&lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Pipe&lt;br /&gt;
{{!}}Orange-Period (&amp;quot;.&amp;quot; key) &lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}Tab&lt;br /&gt;
{{!}}Sym-I &lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}&amp;lt;&lt;br /&gt;
{{!}}Shift-, &lt;br /&gt;
{{!}}-&lt;br /&gt;
{{!}}&amp;gt;&lt;br /&gt;
{{!}}Shift-.&lt;br /&gt;
{{!}}}&lt;br /&gt;
&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;/Table&amp;gt;&lt;br /&gt;
*   (Sym is Control and Control I is the standard tab code)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rotating the pre will take the terminal to landscape mode.  The keyboard will not rotate with you.  Attempting to physically force the keyboard to rotate to the proper orientation for landscape mode is known to bork a Pre.  :)&lt;br /&gt;
&lt;br /&gt;
Support for both &amp;quot;linux&amp;quot; and &amp;quot;vt100&amp;quot; term types should now be supported, so an export TERM line should no longer be needed.  If you find your screen filling with gibberish that looks like ANSI codes, however, make sure you're using 0.1.4 or later version, and report here or in the IRC channel what you were running in the terminal that caused the issue.&lt;br /&gt;
&lt;br /&gt;
If you do see odd behavior, you can force the more compatible vt100 terminal type by typing: &lt;br /&gt;
&lt;br /&gt;
export TERM=vt100&lt;br /&gt;
&lt;br /&gt;
(followed by enter)  Note that the case of that command is important.&lt;br /&gt;
&lt;br /&gt;
=== Recent enhancements ===&lt;br /&gt;
&lt;br /&gt;
* Prompt for login to enhance security / protect against rogue applications embedding termplugin  (more convenient and equally secure method being developed for future release)&lt;br /&gt;
&lt;br /&gt;
* Color!&lt;br /&gt;
&lt;br /&gt;
* Arrow keys, hold a finger on the gesture area so that the white LED lights up, and use the numbers area as if it were a direction pad  (ie 2, 4, 6, 8,  correspond to  up, left, right, down,  respectively)&lt;br /&gt;
&lt;br /&gt;
* Several performance enhancements&lt;br /&gt;
&lt;br /&gt;
* Screen scrolls automagically (no more flicking to keep up)&lt;br /&gt;
&lt;br /&gt;
* Comma / underscore key bugs fixed&lt;br /&gt;
&lt;br /&gt;
* Preferences are now saved&lt;br /&gt;
&lt;br /&gt;
=== Known bugs ===&lt;br /&gt;
&lt;br /&gt;
* The command 'reset' does not work; running it actually messed up the state of the terminal (ex. backspace no longer works).&lt;br /&gt;
* Some ansiFlags are not being used (ex. blink, italics etc. don't have any visual effect)&lt;br /&gt;
* The keybindings need to be redefinable.&lt;br /&gt;
&lt;br /&gt;
Remember, this is early alpha software.  You're lucky it works at all.&lt;br /&gt;
&lt;br /&gt;
Reported issues:&lt;br /&gt;
&lt;br /&gt;
* Doesn't display a return in nano properly unless the screen is rotated&lt;br /&gt;
* No action after running exit in session should restart and ask for a new login&lt;br /&gt;
&lt;br /&gt;
Some limitations:  Many keys are not implemented.  We're working on it, maybe even as you read this. :)&lt;br /&gt;
&lt;br /&gt;
Y and U:   Y and U in the emulator return the same raw keycode due to a bug in the emulator.  However we're obtaining the key values a better way now so terminal should no longer be susceptible to this flaw.&lt;br /&gt;
&lt;br /&gt;
== Repository ==&lt;br /&gt;
&lt;br /&gt;
Terminal is housed in the Applications section of the Webos-internals repository at Gitorious.  http://gitorious.org/webos-internals.   &lt;br /&gt;
&lt;br /&gt;
Source code for the Mojo app can be browsed at http://gitorious.org/webos-internals/applications/trees/master/terminal&lt;br /&gt;
&lt;br /&gt;
Source code for the plugin can be browsed at http://gitorious.org/webos-internals/applications/trees/master/termplugin&lt;br /&gt;
&lt;br /&gt;
For commit permission to the project, contact destinal on #webos-internals or email [[mailto:predestinal@gmail.com predestinal@gmail.com]]&lt;br /&gt;
&lt;br /&gt;
==Command Line Installation ==&lt;br /&gt;
&lt;br /&gt;
'''This procedure is only for those very comfortable with the Linux command line. Everyone else should use the installation instructions above.''' Do not stray from or vary these instructions.  If you don't do it all, in precisely the right order, with zero mistakes, it's not going to work. Copy &amp;amp; Paste will be your friend.&lt;br /&gt;
&lt;br /&gt;
'''You need to be logged in as root with a writeable filesystem.'''  Instructions for both those things can be found elsewhere on this wiki.&lt;br /&gt;
&lt;br /&gt;
==== The first time you install terminal you must do all these steps: ====&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
mkdir -p /var/etc/ipkg/&lt;br /&gt;
ln -s /etc/ipkg/arch.conf /var/etc/ipkg/&lt;br /&gt;
echo &amp;quot;src/gz all http://ipkg.preware.org/feeds/preware/all&amp;quot; &amp;gt; /var/etc/ipkg/preware.conf&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* If you are on the Pre, type:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
echo &amp;quot;src/gz armv7 http://ipkg.preware.org/feeds/preware/armv7&amp;quot; &amp;gt;&amp;gt; /var/etc/ipkg/preware.conf&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
09/15/2009 The address has changed to http://ipkg.preware.org/feeds/webos-internals/arm7&lt;br /&gt;
&lt;br /&gt;
* If you are on the Emulator, type:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
echo &amp;quot;src/gz i686 http://ipkg.preware.org/feeds/preware/i686&amp;quot; &amp;gt;&amp;gt; /var/etc/ipkg/preware.conf&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
09/15/2009 The address has changed to http://ipkg.preware.org/feeds/webos-internals/i686&lt;br /&gt;
&lt;br /&gt;
Then type:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
/usr/bin/ipkg -o /var update&lt;br /&gt;
/usr/bin/ipkg -o /var install org.webosinternals.terminal&lt;br /&gt;
sh /var/usr/lib/ipkg/info/org.webosinternals.termplugin.postinst&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then refresh the GUI to show your new app:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
luna-send -n 1 palm://com.palm.applicationManager/rescan {}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you performed an upgrade and aren't seeing the changes, restart the GUI service:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
initctl stop LunaSysMgr &amp;amp;&amp;amp; initctl start LunaSysMgr&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the above two fail to show the results you're expecting, reboot the device.&lt;br /&gt;
&lt;br /&gt;
=== Updating ===&lt;br /&gt;
&lt;br /&gt;
==== After your first install, only the following is required to upgrade to a new version. ====&lt;br /&gt;
&lt;br /&gt;
'''You need to be logged in as root with a writeable filesystem.'''  Instructions for both those things can be found elsewhere on this wiki.&lt;br /&gt;
&lt;br /&gt;
From a shell:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
/usr/bin/ipkg -o /var update&lt;br /&gt;
/usr/bin/ipkg -o /var upgrade&lt;br /&gt;
reboot&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Other PreWare Applications ===&lt;br /&gt;
&lt;br /&gt;
'''You need to be logged in as root with a writeable filesystem.'''  Instructions for both those things can be found elsewhere on this wiki.&lt;br /&gt;
&lt;br /&gt;
Note that you can use the same commands to install other applications from PreWare:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
/usr/bin/ipkg -o /var update&lt;br /&gt;
/usr/bin/ipkg -o /var list&lt;br /&gt;
/usr/bin/ipkg -o /var install &amp;lt;package&amp;gt; # choose a package from the list&lt;br /&gt;
/usr/bin/ipkg -o /var remove &amp;lt;package&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Removal ===&lt;br /&gt;
&lt;br /&gt;
'''You need to be logged in as root with a writeable filesystem.'''  Instructions for both those things can be found elsewhere on this wiki.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
/usr/bin/ipkg -o /var remove org.webosinternals.terminal&lt;br /&gt;
sh /var/usr/lib/ipkg/info/org.webosinternals.termplugin.prerm&lt;br /&gt;
/usr/bin/ipkg -o /var remove org.webosinternals.termplugin&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then refresh the GUI to remove the icon:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
luna-send -n 1 palm://com.palm.applicationManager/rescan {}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you aren't seeing the icon removed, restart the GUI service:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
initctl stop LunaSysMgr &amp;amp;&amp;amp; initctl start LunaSysMgr&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the above two fail to show the results you're expecting, reboot the device.&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>VictorKruger</name></author>
	</entry>
</feed>