<?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=IMGrant</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=IMGrant"/>
	<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/wiki/Special:Contributions/IMGrant"/>
	<updated>2026-05-04T14:36:07Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Portal:Patches_to_webOS&amp;diff=7736</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=7736"/>
		<updated>2009-12-08T11:13:05Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Removed ++ from Launcher Reset ... patches now they're in the repo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__notoc__&lt;br /&gt;
{{portal-header&lt;br /&gt;
|If you need info on how to properly update webOS, see [[Portal:Updating webOS Versions|Updating webOS Versions]].&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;***THIS PAGE IS OUT OF DATE, PLEASE HELP IN REORGANIZING IT***&amp;lt;/nowiki&amp;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;
For patches that aren't listed here you'll also want to check out the gitorious repository at http://gitorious.org/webos-internals/modifications/trees/master&lt;br /&gt;
&lt;br /&gt;
Please refer to '''[[MIT_Open_Source_License_-_webOS-Patches| MIT Open Source License - webOS-Patches]]''' for important information regarding patches and licensing.&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.3.1|Update 1.3.1]]&lt;br /&gt;
* [[Update 1.2.1|Update 1.2.1]]&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;
* [[Remove/Reduce Drag Radius]]&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;
==Current Patches==&lt;br /&gt;
===webOS 1.3.1 OK===&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* ++[[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* ++[[Patch_Email_Change_Default_Font_for_Replies-Forwards_from_Navy_to_Black|Email: Change default font on replies/forwards from dark blue to black]]&lt;br /&gt;
* [[Patch Email DeleteAll|Email: Delete All Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&lt;br /&gt;
* [[Patch Change Carrier String|Change Carrier String]]&lt;br /&gt;
* [[Patch Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Patch Launcher Reset Scroll on Page Change|Launcher: Reset Scroll on Page Change]]&lt;br /&gt;
* [[Patch Launcher Reset to First Page|Launcher: Reset to First Page]]&lt;br /&gt;
* [[Patch Launcher Reset to Middle Page|Launcher: Reset to Middle Page]]&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch webOS Browser: Show All Bookmarks (Not just first 12)]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
* [[Patch webOS BypassPINLock]]&lt;br /&gt;
===webOS 1.2.1 OK===&lt;br /&gt;
* ++[[Patch Browser Global Search Addons|Browser: Global Search Addons]]&lt;br /&gt;
* [[Patch Browser Delete Individual History Items|Browser: Delete Individual History Items]]&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* [[Patch Clock Enabling the Hidden Theme|Clock: Enabling the Hidden Theme]]&lt;br /&gt;
* ++[[Patch Clock Change Alarm Button Order|Clock: Change Alarm Button Order]]&lt;br /&gt;
* ++[[Patch Clock Change Alarm Snooze Length|Clock: Change Alarm Snooze Length]]&lt;br /&gt;
* [[Patch Camera Easy Shutter Sound Off|Camera: Easy Shutter Sound Off]] - Called: Sound Toggle - Green (and Grey)&lt;br /&gt;
** also [[Patch Camera Shutter Sound On-Off Button|Camera: Shutter Sound On-Off Button]]&lt;br /&gt;
** also [[Camera Mod Alternate Sound Disable]]&lt;br /&gt;
* [[Patch Camera Using Volume Buttons to Take a Picture|Camera: Using Volume Buttons to Take a Picture]]&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 Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Enable Landscape Viewing|Email: Enable Landscape Viewing]] &lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&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 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 Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Myavatar In Messaging App|Messaging: Avatar In Messaging App]] &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 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 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]] - Three Options: Builtin, Clean, and Fancy&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Messaging Sounds|Messaging: Message Sound]] - Called SMS Tone Per Contact&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 PDF Viewer Change Orientation|PDF Viewer: Change Orientation]]&lt;br /&gt;
* [[Patch Phone Show Call Duration in the Call Log|Phone: Show Call Duration in the Call Log]]&lt;br /&gt;
* [[Patch Phone Disable Various Call Sounds|Phone: Disable Various Call Sounds]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch Tasks Always Show Details of New Tasks|Tasks: Always Show Details of New Tasks]]&lt;br /&gt;
* ++[[Patch Youtube Landscape Orientation|Youtube: Landscape Orientation]]&lt;br /&gt;
&lt;br /&gt;
===webOS Patches===&lt;br /&gt;
* [[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* [[On Screen Keyboard]]&lt;br /&gt;
* [[Patch webOS Brightness|Brightness]]&lt;br /&gt;
* [[Change_the_default_notification.wav_Sound|Change the Default notification.wav Sound]] - use SMS Tone Per Contact&lt;br /&gt;
** Also [[Changes_Alert/Notification_Sounds|Changes Alert/Notification Sounds]]&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 Disable Charging Event Sounds|Disable Charging Event Sounds]]&lt;br /&gt;
* [[Patch webOS Workaround for Touchstone Charging Event Problem|Workaround for Touchstone Charging Event Problem]]&lt;br /&gt;
* [[Patch webOS Add Words to AutoCorrect Dictionary|Modify AutoCorrect Dictionary]]&lt;br /&gt;
* [[Patch webOS Radio Power Switch|Radio Power Switch]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
* [[Patch webOS Show Actual Battery Percentage | Show Actual Battery Percentage]]&lt;br /&gt;
* [[Patch webOS Turning Off Dialpad Noise|Turning Off Dialpad Noise]]&lt;br /&gt;
&lt;br /&gt;
|column2=&lt;br /&gt;
&lt;br /&gt;
==Previous Patches==&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;
* ++[[Patch Phone Edit Dialer Theme|Phone: Edit Dialer Theme]]&lt;br /&gt;
* [[Patch MediaPlayer Bookmarking|Music Player: Bookmarking]] only works in 1.2.1 podcast, speech, spoken word, netcast, or audiobook genres&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;
&lt;br /&gt;
===webOS 1.1 OK===&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 Email Change &amp;quot;Running Late&amp;quot; Message|Email: Change &amp;quot;Running Late&amp;quot; Message]]&lt;br /&gt;
* ++[[Patch MCraig Enabling Personals Category|mCraig: Enabling Personals Category]]&lt;br /&gt;
* ++[[Patch Phone Editing the Lock Screen|Phone: Editing the Lock Screen]]&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 Fix Attachments|Email: Fix Attachments]]&lt;br /&gt;
* [[Patch Sudoku Disable Zooming|Sudoku: Disable Zooming]]&lt;br /&gt;
&lt;br /&gt;
===webOS 1.1 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;
* ++[[Patch webOS Boot Themes|Boot Themes]]&lt;br /&gt;
* ++[[Patch webOS Bypassing Activation|Bypassing Activation]]&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 Random Wallpaper Switching|Random Wallpaper Switching]]&lt;br /&gt;
* [[Patch webOS Reverse Tunnel|Reverse Tunnel]] &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;
* [[Browser_Plugins|Browser Plugins]]&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>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7735</id>
		<title>Patch Launcher Reset to First Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7735"/>
		<updated>2009-12-08T11:11:13Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Fixed a bug in the patch.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
By default, the Launcher maintains the last page opened when you return to it. If you most frequently use apps on the first page of the Launcher, you have to swipe back to the first page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the first page every time it opens. It also resets the scroll position of all pages, so that when you re-open the Launcher, all pages will be scrolled to the top (previously it only did this if the Reset Scroll Position patch was also installed, I abandoned that idea. Apologies if anyone really wants the reset page behaviour without the reset scroll feature - check out the page history for older versions or adjust the patch accordingly).&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the beginning of the onDeactivate method around line 170:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines at the bottom of the onDeactivate method so that is now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
&lt;br /&gt;
		/* Reset launcher to first page */&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
		&lt;br /&gt;
		/* Jump scroll position back to top for all pages */&lt;br /&gt;
		var numPages=this.pagesModel.getNumPages();&lt;br /&gt;
		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
			var scroller = this.getPageScroller(i);&lt;br /&gt;
			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository yet, but is has been submitted. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-first-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-first-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.orig	Sat Dec  5 11:48:12 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Thu Dec  3 19:42:03 2009&lt;br /&gt;
@@ -183,6 +183,16 @@&lt;br /&gt;
 		delete this.launchRequest;&lt;br /&gt;
 		&lt;br /&gt;
 		this.removeLaunchFeedback();&lt;br /&gt;
+	&lt;br /&gt;
+		&lt;br /&gt;
+		/* Reset launcher to first page */&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
+		&lt;br /&gt;
+		/* Jump scroll position back to top for all pages */&lt;br /&gt;
+		var numPages=this.pagesModel.getNumPages();&lt;br /&gt;
+		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
+			var scroller = this.getPageScroller(i);&lt;br /&gt;
+			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
+		}&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	onResize: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Support==&lt;br /&gt;
The [http://forums.precentral.net/webos-patches/217638-patch-reset-launcher-first-middle-page.html discussion thread at the PreCentral.net forums] is the best place to ask any questions.&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_Middle_Page&amp;diff=7707</id>
		<title>Patch Launcher Reset to Middle Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_Middle_Page&amp;diff=7707"/>
		<updated>2009-12-06T19:57:11Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Added PreCentral forums link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
By default, the Launcher maintains the last page opened when you return to it. If you most frequently use apps on a certain page of the Launcher, you have to swipe back to that page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the middle page every time it opens. This works best if you have an odd number of pages (like the default 3), then you have the same number of pages to the left, and to the right, thus minimizing the number of swipes required to get to the first or last page.&lt;br /&gt;
It also resets the scroll position of all pages, so that when you re-open the Launcher, all pages will be scrolled to the top (previously it only did this if the Reset Scroll Position patch was also installed, I abandoned that idea. Apologies if anyone really wants the reset page behaviour without the reset scroll feature - check out the page history for older versions or adjust the patch accordingly).&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the beginning of the onDeactivate method around line 170:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines at the bottom of the onDeactivate method so that is now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
&lt;br /&gt;
		/**&lt;br /&gt;
		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
		 * this will be the lower side of the mid-point.&lt;br /&gt;
		 */&lt;br /&gt;
		var numPages=this.pagesModel.getNumPages();&lt;br /&gt;
		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
		&lt;br /&gt;
		/* Reset launcher to middle page */&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
		&lt;br /&gt;
		/* Jump scroll position back to top for all pages */&lt;br /&gt;
		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
			var scroller = this.getPageScroller(i);&lt;br /&gt;
			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the buildPages method that begins around line 510:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* build out the pages for all applications */&lt;br /&gt;
	buildPages: function() {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.enable(false);&lt;br /&gt;
		&lt;br /&gt;
		this.deleteAllPages();&lt;br /&gt;
		&lt;br /&gt;
		var location = {page: 0, position: 0};&lt;br /&gt;
		for (var i=0, numPages=this.pagesModel.getNumPages(); i&amp;lt;numPages; i++) {&lt;br /&gt;
			// create a new page&lt;br /&gt;
			this.insertPage(i);&lt;br /&gt;
			&lt;br /&gt;
			// insert all the applications for this page into the page container&lt;br /&gt;
			var page = this.pagesModel.getPage(i);&lt;br /&gt;
			location.page = i;&lt;br /&gt;
			for (var j=0; j&amp;lt;page.length; j++) {&lt;br /&gt;
				location.position = j;&lt;br /&gt;
				this.insertApp(location, this.pagesModel.getAppInfo(page[j]));&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.enable(true);&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines to the bottom of the buildPages method so that it now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* build out the pages for all applications */&lt;br /&gt;
	buildPages: function() {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.enable(false);&lt;br /&gt;
		&lt;br /&gt;
		this.deleteAllPages();&lt;br /&gt;
		&lt;br /&gt;
		var location = {page: 0, position: 0};&lt;br /&gt;
		for (var i=0, numPages=this.pagesModel.getNumPages(); i&amp;lt;numPages; i++) {&lt;br /&gt;
			// create a new page&lt;br /&gt;
			this.insertPage(i);&lt;br /&gt;
			&lt;br /&gt;
			// insert all the applications for this page into the page container&lt;br /&gt;
			var page = this.pagesModel.getPage(i);&lt;br /&gt;
			location.page = i;&lt;br /&gt;
			for (var j=0; j&amp;lt;page.length; j++) {&lt;br /&gt;
				location.position = j;&lt;br /&gt;
				this.insertApp(location, this.pagesModel.getAppInfo(page[j]));&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.enable(true);&lt;br /&gt;
		&lt;br /&gt;
		/**&lt;br /&gt;
		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
		 * this will be the lower side of the mid-point.&lt;br /&gt;
		 */&lt;br /&gt;
		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
		&lt;br /&gt;
		/* Set launcher to middle page */&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository yet, but is has been submitted. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-middle-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-midle-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.orig	Sat Dec  5 11:48:12 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Thu Dec  3 19:42:03 2009&lt;br /&gt;
@@ -183,6 +183,22 @@&lt;br /&gt;
 		delete this.launchRequest;&lt;br /&gt;
 		&lt;br /&gt;
 		this.removeLaunchFeedback();&lt;br /&gt;
+	&lt;br /&gt;
+		/**&lt;br /&gt;
+		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
+		 * this will be the lower side of the mid-point.&lt;br /&gt;
+		 */&lt;br /&gt;
+		var numPages=this.pagesModel.getNumPages();&lt;br /&gt;
+		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
+		&lt;br /&gt;
+		/* Reset launcher to middle page */&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
+		&lt;br /&gt;
+		/* Jump scroll position back to top for all pages */&lt;br /&gt;
+		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
+			var scroller = this.getPageScroller(i);&lt;br /&gt;
+			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
+		}&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	onResize: function(event) {&lt;br /&gt;
@@ -529,6 +545,15 @@&lt;br /&gt;
 		}&lt;br /&gt;
 		&lt;br /&gt;
 		this.globalSearchAssistant.enable(true);&lt;br /&gt;
+		&lt;br /&gt;
+		/**&lt;br /&gt;
+		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
+		 * this will be the lower side of the mid-point.&lt;br /&gt;
+		 */&lt;br /&gt;
+		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
+		&lt;br /&gt;
+		/* Set launcher to middle page */&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	/* re-acquires the set of page elements the scroller needs to snap */&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Support==&lt;br /&gt;
&lt;br /&gt;
The [http://forums.precentral.net/webos-patches/217638-patch-reset-launcher-first-middle-page.html discussion thread at the PreCentral.net forums] is the best place to ask any questions.&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7706</id>
		<title>Patch Launcher Reset to First Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7706"/>
		<updated>2009-12-06T19:56:11Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Added PreCentral forums link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
By default, the Launcher maintains the last page opened when you return to it. If you most frequently use apps on the first page of the Launcher, you have to swipe back to the first page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the first page every time it opens. It also resets the scroll position of all pages, so that when you re-open the Launcher, all pages will be scrolled to the top (previously it only did this if the Reset Scroll Position patch was also installed, I abandoned that idea. Apologies if anyone really wants the reset page behaviour without the reset scroll feature - check out the page history for older versions or adjust the patch accordingly).&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the beginning of the onDeactivate method around line 170:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines at the bottom of the onDeactivate method so that is now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
&lt;br /&gt;
		/* Reset launcher to first page */&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
		&lt;br /&gt;
		/* Jump scroll position back to top for all pages */&lt;br /&gt;
		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
			var scroller = this.getPageScroller(i);&lt;br /&gt;
			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository yet, but is has been submitted. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-first-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-first-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.orig	Sat Dec  5 11:48:12 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Thu Dec  3 19:42:03 2009&lt;br /&gt;
@@ -183,6 +183,16 @@&lt;br /&gt;
 		delete this.launchRequest;&lt;br /&gt;
 		&lt;br /&gt;
 		this.removeLaunchFeedback();&lt;br /&gt;
+	&lt;br /&gt;
+		&lt;br /&gt;
+		/* Reset launcher to first page */&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
+		&lt;br /&gt;
+		/* Jump scroll position back to top for all pages */&lt;br /&gt;
+		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
+			var scroller = this.getPageScroller(i);&lt;br /&gt;
+			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
+		}&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	onResize: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Support==&lt;br /&gt;
The [http://forums.precentral.net/webos-patches/217638-patch-reset-launcher-first-middle-page.html discussion thread at the PreCentral.net forums] is the best place to ask any questions.&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Portal:Patches_to_webOS&amp;diff=7660</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=7660"/>
		<updated>2009-12-05T13:56:53Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Added '++' to Reset Scroll on Page Change, since I updated that patch, so the new version is not in the repository (yet).&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__notoc__&lt;br /&gt;
{{portal-header&lt;br /&gt;
|If you need info on how to properly update webOS, see [[Portal:Updating webOS Versions|Updating webOS Versions]].&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;***THIS PAGE IS OUT OF DATE, PLEASE HELP IN REORGANIZING IT***&amp;lt;/nowiki&amp;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;
For patches that aren't listed here you'll also want to check out the gitorious repository at http://gitorious.org/webos-internals/modifications/trees/master&lt;br /&gt;
&lt;br /&gt;
Please refer to '''[[MIT_Open_Source_License_-_webOS-Patches| MIT Open Source License - webOS-Patches]]''' for important information regarding patches and licensing.&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.3.1|Update 1.3.1]]&lt;br /&gt;
* [[Update 1.2.1|Update 1.2.1]]&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;
* [[Remove/Reduce Drag Radius]]&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;
==Current Patches==&lt;br /&gt;
===webOS 1.3.1 OK===&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* ++[[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* ++[[Patch_Email_Change_Default_Font_for_Replies-Forwards_from_Navy_to_Black|Email: Change default font on replies/forwards from dark blue to black]]&lt;br /&gt;
* [[Patch Email DeleteAll|Email: Delete All Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&lt;br /&gt;
* [[Patch Change Carrier String|Change Carrier String]]&lt;br /&gt;
* [[Patch Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* ++[[Patch Launcher Reset Scroll on Page Change|Launcher: Reset Scroll on Page Change]]&lt;br /&gt;
* ++[[Patch Launcher Reset to First Page|Launcher: Reset to First Page]]&lt;br /&gt;
* ++[[Patch Launcher Reset to Middle Page|Launcher: Reset to Middle Page]]&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch webOS Browser: Show All Bookmarks (Not just first 12)]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
* [[Patch webOS BypassPINLock]]&lt;br /&gt;
===webOS 1.2.1 OK===&lt;br /&gt;
* ++[[Patch Browser Global Search Addons|Browser: Global Search Addons]]&lt;br /&gt;
* [[Patch Browser Delete Individual History Items|Browser: Delete Individual History Items]]&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* [[Patch Clock Enabling the Hidden Theme|Clock: Enabling the Hidden Theme]]&lt;br /&gt;
* ++[[Patch Clock Change Alarm Button Order|Clock: Change Alarm Button Order]]&lt;br /&gt;
* ++[[Patch Clock Change Alarm Snooze Length|Clock: Change Alarm Snooze Length]]&lt;br /&gt;
* [[Patch Camera Easy Shutter Sound Off|Camera: Easy Shutter Sound Off]] - Called: Sound Toggle - Green (and Grey)&lt;br /&gt;
** also [[Patch Camera Shutter Sound On-Off Button|Camera: Shutter Sound On-Off Button]]&lt;br /&gt;
** also [[Camera Mod Alternate Sound Disable]]&lt;br /&gt;
* [[Patch Camera Using Volume Buttons to Take a Picture|Camera: Using Volume Buttons to Take a Picture]]&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 Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Enable Landscape Viewing|Email: Enable Landscape Viewing]] &lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&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 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 Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Myavatar In Messaging App|Messaging: Avatar In Messaging App]] &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 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 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]] - Three Options: Builtin, Clean, and Fancy&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Messaging Sounds|Messaging: Message Sound]] - Called SMS Tone Per Contact&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 PDF Viewer Change Orientation|PDF Viewer: Change Orientation]]&lt;br /&gt;
* [[Patch Phone Show Call Duration in the Call Log|Phone: Show Call Duration in the Call Log]]&lt;br /&gt;
* [[Patch Phone Disable Various Call Sounds|Phone: Disable Various Call Sounds]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch Tasks Always Show Details of New Tasks|Tasks: Always Show Details of New Tasks]]&lt;br /&gt;
* ++[[Patch Youtube Landscape Orientation|Youtube: Landscape Orientation]]&lt;br /&gt;
&lt;br /&gt;
===webOS Patches===&lt;br /&gt;
* [[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* [[On Screen Keyboard]]&lt;br /&gt;
* [[Patch webOS Brightness|Brightness]]&lt;br /&gt;
* [[Change_the_default_notification.wav_Sound|Change the Default notification.wav Sound]] - use SMS Tone Per Contact&lt;br /&gt;
** Also [[Changes_Alert/Notification_Sounds|Changes Alert/Notification Sounds]]&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 Disable Charging Event Sounds|Disable Charging Event Sounds]]&lt;br /&gt;
* [[Patch webOS Workaround for Touchstone Charging Event Problem|Workaround for Touchstone Charging Event Problem]]&lt;br /&gt;
* [[Patch webOS Add Words to AutoCorrect Dictionary|Modify AutoCorrect Dictionary]]&lt;br /&gt;
* [[Patch webOS Radio Power Switch|Radio Power Switch]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
* [[Patch webOS Show Actual Battery Percentage | Show Actual Battery Percentage]]&lt;br /&gt;
* [[Patch webOS Turning Off Dialpad Noise|Turning Off Dialpad Noise]]&lt;br /&gt;
&lt;br /&gt;
|column2=&lt;br /&gt;
&lt;br /&gt;
==Previous Patches==&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;
* ++[[Patch Phone Edit Dialer Theme|Phone: Edit Dialer Theme]]&lt;br /&gt;
* [[Patch MediaPlayer Bookmarking|Music Player: Bookmarking]] only works in 1.2.1 podcast, speech, spoken word, netcast, or audiobook genres&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;
&lt;br /&gt;
===webOS 1.1 OK===&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 Email Change &amp;quot;Running Late&amp;quot; Message|Email: Change &amp;quot;Running Late&amp;quot; Message]]&lt;br /&gt;
* ++[[Patch MCraig Enabling Personals Category|mCraig: Enabling Personals Category]]&lt;br /&gt;
* ++[[Patch Phone Editing the Lock Screen|Phone: Editing the Lock Screen]]&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 Fix Attachments|Email: Fix Attachments]]&lt;br /&gt;
* [[Patch Sudoku Disable Zooming|Sudoku: Disable Zooming]]&lt;br /&gt;
&lt;br /&gt;
===webOS 1.1 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;
* ++[[Patch webOS Boot Themes|Boot Themes]]&lt;br /&gt;
* ++[[Patch webOS Bypassing Activation|Bypassing Activation]]&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 Random Wallpaper Switching|Random Wallpaper Switching]]&lt;br /&gt;
* [[Patch webOS Reverse Tunnel|Reverse Tunnel]] &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;
* [[Browser_Plugins|Browser Plugins]]&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>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_Scroll_on_Page_Change&amp;diff=7659</id>
		<title>Patch Launcher Reset Scroll on Page Change</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_Scroll_on_Page_Change&amp;diff=7659"/>
		<updated>2009-12-05T13:55:47Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: A new version of the patch that is compatible with the Wrap Pages patch - it modifies different parts of the file now.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
If you have many apps on a page, you may have to scroll to see some of those. The launcher maintains the scroll state (the amount you have scrolled) on each page, which means when you return to a page, you are still at the location that you last scrolled to. This can be annoying. For example, it can make it difficult to train your muscle memory because, when repeating the same steps, the app you want is not always at the same location on the screen. This patch resets the scroll of each page back to the top when it goes out of view.&lt;br /&gt;
&lt;br /&gt;
Update Dec '09: I've changed the way the patch is implemented, this new version is now compatible with the Wrap Pages patch.&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the end of the setup method, around line 98:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
		// setup the initial dimensions for launcher/global-search&lt;br /&gt;
		this.adjustLayout();&lt;br /&gt;
	},&lt;br /&gt;
	&lt;br /&gt;
	ready: function() {		&lt;br /&gt;
		this.globalSearchAssistant.ready();&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the lines below to the end of the setup method (that is, make sure they're inside the '},' before the ready method on line 102), so that it now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
		// setup the initial dimensions for launcher/global-search&lt;br /&gt;
		this.adjustLayout();&lt;br /&gt;
&lt;br /&gt;
		// add a separate listener for resetting the scroll position on page changes, and also on deactivate&lt;br /&gt;
		Mojo.listen($('launcher_root'), Mojo.Event.propertyChange, this.resetScrollPosition.bindAsEventListener(this));&lt;br /&gt;
		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.resetScrollPosition.bindAsEventListener(this));&lt;br /&gt;
	},&lt;br /&gt;
	&lt;br /&gt;
	ready: function() {		&lt;br /&gt;
		this.globalSearchAssistant.ready();&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following method somewhere else in the file, I suggest just below the ready method and before the deleteAllPages method, around line 105 (don't forget the comma after the closing brace, unless you add it right at the end of the class, as the last method):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	resetScrollPosition: function(event) {&lt;br /&gt;
		var pageIndex = (event.type === 'mojo-event-deactivate') ? this.activePageIndex : event.value;&lt;br /&gt;
		var scroller = this.getPageScroller(pageIndex);&lt;br /&gt;
		if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
An older version of the patch is in the git/Preware repository, hopefully this version will be submitted soon. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-scroll.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-scroll.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.orig	Sat Dec  5 11:48:12 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Thu Dec  3 19:42:03 2009&lt;br /&gt;
@@ -98,5 +98,9 @@&lt;br /&gt;
 		// setup the initial dimensions for launcher/global-search&lt;br /&gt;
 		this.adjustLayout();&lt;br /&gt;
+		&lt;br /&gt;
+		// add a separate listener for resetting the scroll position on page changes, and also on deactivate&lt;br /&gt;
+		Mojo.listen($('launcher_root'), Mojo.Event.propertyChange, this.resetScrollPosition.bindAsEventListener(this));&lt;br /&gt;
+		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.resetScrollPosition.bindAsEventListener(this));&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	ready: function() {	&lt;br /&gt;
@@ -188,6 +188,12 @@&lt;br /&gt;
 	onResize: function(event) {&lt;br /&gt;
 		this.adjustLayout();&lt;br /&gt;
 	},&lt;br /&gt;
 &lt;br /&gt;
+	resetScrollPosition: function(event) {&lt;br /&gt;
+		var pageIndex = (event.type === 'mojo-event-deactivate') ? this.activePageIndex : event.value;&lt;br /&gt;
+		var scroller = this.getPageScroller(pageIndex);&lt;br /&gt;
+		if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
+	},&lt;br /&gt;
+&lt;br /&gt;
 	/* remove page data and their corresponding HTML */&lt;br /&gt;
 	deleteAllPages: function() {&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_Middle_Page&amp;diff=7658</id>
		<title>Patch Launcher Reset to Middle Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_Middle_Page&amp;diff=7658"/>
		<updated>2009-12-05T13:42:22Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Updated patch, now longer relies on Reset Scroll Position patch to reset scroll.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
By default, the Launcher maintains the last page opened when you return to it. If you most frequently use apps on a certain page of the Launcher, you have to swipe back to that page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the middle page every time it opens. This works best if you have an odd number of pages (like the default 3), then you have the same number of pages to the left, and to the right, thus minimizing the number of swipes required to get to the first or last page.&lt;br /&gt;
It also resets the scroll position of all pages, so that when you re-open the Launcher, all pages will be scrolled to the top (previously it only did this if the Reset Scroll Position patch was also installed, I abandoned that idea. Apologies if anyone really wants the reset page behaviour without the reset scroll feature - check out the page history for older versions or adjust the patch accordingly).&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the beginning of the onDeactivate method around line 170:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines at the bottom of the onDeactivate method so that is now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
&lt;br /&gt;
		/**&lt;br /&gt;
		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
		 * this will be the lower side of the mid-point.&lt;br /&gt;
		 */&lt;br /&gt;
		var numPages=this.pagesModel.getNumPages();&lt;br /&gt;
		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
		&lt;br /&gt;
		/* Reset launcher to middle page */&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
		&lt;br /&gt;
		/* Jump scroll position back to top for all pages */&lt;br /&gt;
		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
			var scroller = this.getPageScroller(i);&lt;br /&gt;
			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the buildPages method that begins around line 510:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* build out the pages for all applications */&lt;br /&gt;
	buildPages: function() {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.enable(false);&lt;br /&gt;
		&lt;br /&gt;
		this.deleteAllPages();&lt;br /&gt;
		&lt;br /&gt;
		var location = {page: 0, position: 0};&lt;br /&gt;
		for (var i=0, numPages=this.pagesModel.getNumPages(); i&amp;lt;numPages; i++) {&lt;br /&gt;
			// create a new page&lt;br /&gt;
			this.insertPage(i);&lt;br /&gt;
			&lt;br /&gt;
			// insert all the applications for this page into the page container&lt;br /&gt;
			var page = this.pagesModel.getPage(i);&lt;br /&gt;
			location.page = i;&lt;br /&gt;
			for (var j=0; j&amp;lt;page.length; j++) {&lt;br /&gt;
				location.position = j;&lt;br /&gt;
				this.insertApp(location, this.pagesModel.getAppInfo(page[j]));&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.enable(true);&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines to the bottom of the buildPages method so that it now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* build out the pages for all applications */&lt;br /&gt;
	buildPages: function() {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.enable(false);&lt;br /&gt;
		&lt;br /&gt;
		this.deleteAllPages();&lt;br /&gt;
		&lt;br /&gt;
		var location = {page: 0, position: 0};&lt;br /&gt;
		for (var i=0, numPages=this.pagesModel.getNumPages(); i&amp;lt;numPages; i++) {&lt;br /&gt;
			// create a new page&lt;br /&gt;
			this.insertPage(i);&lt;br /&gt;
			&lt;br /&gt;
			// insert all the applications for this page into the page container&lt;br /&gt;
			var page = this.pagesModel.getPage(i);&lt;br /&gt;
			location.page = i;&lt;br /&gt;
			for (var j=0; j&amp;lt;page.length; j++) {&lt;br /&gt;
				location.position = j;&lt;br /&gt;
				this.insertApp(location, this.pagesModel.getAppInfo(page[j]));&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.enable(true);&lt;br /&gt;
		&lt;br /&gt;
		/**&lt;br /&gt;
		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
		 * this will be the lower side of the mid-point.&lt;br /&gt;
		 */&lt;br /&gt;
		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
		&lt;br /&gt;
		/* Set launcher to middle page */&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository yet, but is has been submitted. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-middle-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-midle-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.orig	Sat Dec  5 11:48:12 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Thu Dec  3 19:42:03 2009&lt;br /&gt;
@@ -183,6 +183,22 @@&lt;br /&gt;
 		delete this.launchRequest;&lt;br /&gt;
 		&lt;br /&gt;
 		this.removeLaunchFeedback();&lt;br /&gt;
+	&lt;br /&gt;
+		/**&lt;br /&gt;
+		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
+		 * this will be the lower side of the mid-point.&lt;br /&gt;
+		 */&lt;br /&gt;
+		var numPages=this.pagesModel.getNumPages();&lt;br /&gt;
+		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
+		&lt;br /&gt;
+		/* Reset launcher to middle page */&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
+		&lt;br /&gt;
+		/* Jump scroll position back to top for all pages */&lt;br /&gt;
+		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
+			var scroller = this.getPageScroller(i);&lt;br /&gt;
+			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
+		}&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	onResize: function(event) {&lt;br /&gt;
@@ -529,6 +545,15 @@&lt;br /&gt;
 		}&lt;br /&gt;
 		&lt;br /&gt;
 		this.globalSearchAssistant.enable(true);&lt;br /&gt;
+		&lt;br /&gt;
+		/**&lt;br /&gt;
+		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
+		 * this will be the lower side of the mid-point.&lt;br /&gt;
+		 */&lt;br /&gt;
+		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
+		&lt;br /&gt;
+		/* Set launcher to middle page */&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	/* re-acquires the set of page elements the scroller needs to snap */&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7657</id>
		<title>Patch Launcher Reset to First Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7657"/>
		<updated>2009-12-05T13:37:15Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Updated patch, now longer relies on Reset Scroll Position patch to reset scroll.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
By default, the Launcher maintains the last page opened when you return to it. If you most frequently use apps on the first page of the Launcher, you have to swipe back to the first page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the first page every time it opens. It also resets the scroll position of all pages, so that when you re-open the Launcher, all pages will be scrolled to the top (previously it only did this if the Reset Scroll Position patch was also installed, I abandoned that idea. Apologies if anyone really wants the reset page behaviour without the reset scroll feature - check out the page history for older versions or adjust the patch accordingly).&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the beginning of the onDeactivate method around line 170:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines at the bottom of the onDeactivate method so that is now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
		&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
&lt;br /&gt;
		/* Reset launcher to first page */&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
		&lt;br /&gt;
		/* Jump scroll position back to top for all pages */&lt;br /&gt;
		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
			var scroller = this.getPageScroller(i);&lt;br /&gt;
			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository yet, but is has been submitted. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-first-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-first-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.orig	Sat Dec  5 11:48:12 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Thu Dec  3 19:42:03 2009&lt;br /&gt;
@@ -183,6 +183,16 @@&lt;br /&gt;
 		delete this.launchRequest;&lt;br /&gt;
 		&lt;br /&gt;
 		this.removeLaunchFeedback();&lt;br /&gt;
+	&lt;br /&gt;
+		&lt;br /&gt;
+		/* Reset launcher to first page */&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
+		&lt;br /&gt;
+		/* Jump scroll position back to top for all pages */&lt;br /&gt;
+		for (var i=0; i&amp;lt;numPages; i++) {&lt;br /&gt;
+			var scroller = this.getPageScroller(i);&lt;br /&gt;
+			if (scroller &amp;amp;&amp;amp; scroller.mojo) { scroller.mojo.revealTop(); }&lt;br /&gt;
+		}&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	onResize: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7534</id>
		<title>Patch Launcher Reset to First Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7534"/>
		<updated>2009-11-30T11:52:49Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
The Launcher maintains the last page opened when you return to it. If you most frequently use apps on the first page of the Launcher, you have to swipe back to the first page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the first page every time it opens. This works best in combination with the [[Patch Launcher Reset Scroll on Page Change]] patch to ensure the page is also always scrolled to the top.&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the 'Mojo.listen' handlers in the setup method around line 70 (setup begins at line 67 in webOS 1.3.1):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Insert a new listener in between the existing two so that it now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
		Mojo.listen(this.controller.document, Mojo.Event.activate, this.onActivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the beginning of the onDeactivate method around line 170 (onDeactivate begins at line 171 in webOS 1.3.1):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines before onDeactivate so that is now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* set launcher page to override last used page */&lt;br /&gt;
	onActivate: function(event) {		&lt;br /&gt;
		// set launcher to first page&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
		&lt;br /&gt;
		/** &lt;br /&gt;
		 * If Bsiegel's 'Reset Scroll Position' patch is installed&lt;br /&gt;
		 * then this does what it says on the tin for the middle page.&lt;br /&gt;
		 */&lt;br /&gt;
		event.value = 0;	/* Fudge this because onPageChange expects a&lt;br /&gt;
					 * mojo-property-change event but it's actually&lt;br /&gt;
					 * getting mojo-event-deactivate.&lt;br /&gt;
					 */&lt;br /&gt;
		this.onPageChange(event);&lt;br /&gt;
	},&lt;br /&gt;
&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository yet, but is has been submitted. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-first-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-first-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.webosinternals.orig	Sat Nov 28 01:54:57 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Mon Nov 30 03:15:43 2009&lt;br /&gt;
@@ -67,6 +67,7 @@&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
+		Mojo.listen(this.controller.document, Mojo.Event.activate, this.onActivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
 		&lt;br /&gt;
 		this.pagesModel = new LauncherPages({&lt;br /&gt;
@@ -167,6 +168,22 @@&lt;br /&gt;
 		this.updatePageIndicators();&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
+	/* set launcher page to override last used page */&lt;br /&gt;
+	onActivate: function(event) {		&lt;br /&gt;
+		// set launcher to first page&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
+		&lt;br /&gt;
+		/** &lt;br /&gt;
+		 * If Bsiegel's 'Reset Scroll Position' patch is installed&lt;br /&gt;
+		 * then this does what it says on the tin for the middle page.&lt;br /&gt;
+		 */&lt;br /&gt;
+		event.value = 0;	/* Fudge this because onPageChange expects a&lt;br /&gt;
+					 * mojo-property-change event but it's actually&lt;br /&gt;
+					 * getting mojo-event-deactivate.&lt;br /&gt;
+					 */&lt;br /&gt;
+		this.onPageChange(event);&lt;br /&gt;
+	},&lt;br /&gt;
+&lt;br /&gt;
 	/* clean and hide global search */&lt;br /&gt;
 	onDeactivate: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_Middle_Page&amp;diff=7533</id>
		<title>Patch Launcher Reset to Middle Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_Middle_Page&amp;diff=7533"/>
		<updated>2009-11-30T11:52:08Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: New page: {{template:patch}} ==Introduction==  The Launcher maintains the last page opened when you return to it. If you most frequently use apps on a certain page of the Launcher, you have to swipe...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
The Launcher maintains the last page opened when you return to it. If you most frequently use apps on a certain page of the Launcher, you have to swipe back to that page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the middle page every time it opens. This works best if you have an odd number of pages (like the default 3), then you have the same number of pages to the left, and to the right, thus minimizing the number of swipes required to get to the first or last page.&lt;br /&gt;
This also works best in combination with the [[Patch Launcher Reset Scroll on Page Change]] patch to ensure the page is also always scrolled to the top.&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the 'Mojo.listen' handlers in the setup method around line 70 (setup begins at line 67 in webOS 1.3.1):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Insert a new listener in between the existing two so that it now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
		Mojo.listen(this.controller.document, Mojo.Event.activate, this.onActivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the beginning of the onDeactivate method around line 170 (onDeactivate begins at line 171 in webOS 1.3.1):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines before onDeactivate so that is now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* set launcher page to override last used page */&lt;br /&gt;
	onActivate: function(event) {		&lt;br /&gt;
		/**&lt;br /&gt;
		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
		 * this will be the lower side of the mid-point.&lt;br /&gt;
		 */&lt;br /&gt;
		var numPages=this.pagesModel.getNumPages();&lt;br /&gt;
		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
		&lt;br /&gt;
		// set launcher to middle page&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
		&lt;br /&gt;
		/** &lt;br /&gt;
		 * If Bsiegel's 'Reset Scroll Position' patch is installed&lt;br /&gt;
		 * then this does what it says on the tin for the middle page.&lt;br /&gt;
		 */&lt;br /&gt;
		event.value = middlePage;	/* Fudge this because onPageChange expects a&lt;br /&gt;
						 * mojo-property-change event but it's actually&lt;br /&gt;
						 * getting mojo-event-deactivate.&lt;br /&gt;
						 */&lt;br /&gt;
		this.onPageChange(event);&lt;br /&gt;
	},&lt;br /&gt;
&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository yet, but is has been submitted. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-middle-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-midle-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.webosinternals.orig	Sat Nov 28 01:54:57 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Mon Nov 30 03:14:42 2009&lt;br /&gt;
@@ -67,6 +67,7 @@&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
+		Mojo.listen(this.controller.document, Mojo.Event.activate, this.onActivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
 		&lt;br /&gt;
 		this.pagesModel = new LauncherPages({&lt;br /&gt;
@@ -167,6 +168,29 @@&lt;br /&gt;
 		this.updatePageIndicators();&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
+	/* set launcher page to override last used page */&lt;br /&gt;
+	onActivate: function(event) {&lt;br /&gt;
+		/**&lt;br /&gt;
+		 * Calculate middle page. For an even number of pages,&lt;br /&gt;
+		 * this will be the lower side of the mid-point.&lt;br /&gt;
+		 */&lt;br /&gt;
+		var numPages=this.pagesModel.getNumPages();&lt;br /&gt;
+		var middlePage = (numPages % 2) ? (numPages - 1) / 2: numPages / 2 - 1;&lt;br /&gt;
+		&lt;br /&gt;
+		// set launcher to middle page&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(middlePage, false);&lt;br /&gt;
+		&lt;br /&gt;
+		/** &lt;br /&gt;
+		 * If Bsiegel's 'Reset Scroll Position' patch is installed&lt;br /&gt;
+		 * then this does what it says on the tin for the middle page.&lt;br /&gt;
+		 */&lt;br /&gt;
+		event.value = middlePage;	/* Fudge this because onPageChange expects a&lt;br /&gt;
+						 * mojo-property-change event but it's actually&lt;br /&gt;
+						 * getting mojo-event-deactivate.&lt;br /&gt;
+						 */&lt;br /&gt;
+		this.onPageChange(event);&lt;br /&gt;
+	},&lt;br /&gt;
+&lt;br /&gt;
 	/* clean and hide global search */&lt;br /&gt;
 	onDeactivate: function(event) {&lt;br /&gt;
 	&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Portal:Patches_to_webOS&amp;diff=7532</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=7532"/>
		<updated>2009-11-30T11:31:08Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Added link for Reset to Middle Page patch for Launcher&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__notoc__&lt;br /&gt;
{{portal-header&lt;br /&gt;
|If you need info on how to properly update webOS, see [[Portal:Updating webOS Versions|Updating webOS Versions]].&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;***THIS PAGE IS OUT OF DATE, PLEASE HELP IN REORGANIZING IT***&amp;lt;/nowiki&amp;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;
For patches that aren't listed here you'll also want to check out the gitorious repository at http://gitorious.org/webos-internals/modifications/trees/master&lt;br /&gt;
&lt;br /&gt;
Please refer to '''[[MIT_Open_Source_License_-_webOS-Patches| MIT Open Source License - webOS-Patches]]''' for important information regarding patches and licensing.&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.3.1|Update 1.3.1]]&lt;br /&gt;
* [[Update 1.2.1|Update 1.2.1]]&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;
* [[Remove/Reduce Drag Radius]]&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;
==Current Patches==&lt;br /&gt;
===webOS 1.3.1 OK===&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* ++[[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* ++[[Patch_Email_Change_Default_Font_for_Replies-Forwards_from_Navy_to_Black|Email: Change default font on replies/forwards from dark blue to black]]&lt;br /&gt;
* [[Patch Email DeleteAll|Email: Delete All Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&lt;br /&gt;
* [[Patch Change Carrier String|Change Carrier String]]&lt;br /&gt;
* [[Patch Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Patch Launcher Reset Scroll on Page Change|Launcher: Reset Scroll on Page Change]]&lt;br /&gt;
* ++[[Patch Launcher Reset to First Page|Launcher: Reset to First Page]]&lt;br /&gt;
* ++[[Patch Launcher Reset to Middle Page|Launcher: Reset to Middle Page]]&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch webOS Browser: Show All Bookmarks (Not just first 12)]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
* [[Patch webOS BypassPINLock]]&lt;br /&gt;
===webOS 1.2.1 OK===&lt;br /&gt;
* ++[[Patch Browser Global Search Addons|Browser: Global Search Addons]]&lt;br /&gt;
* [[Patch Browser Delete Individual History Items|Browser: Delete Individual History Items]]&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* [[Patch Clock Enabling the Hidden Theme|Clock: Enabling the Hidden Theme]]&lt;br /&gt;
* ++[[Patch Clock Change Alarm Button Order|Clock: Change Alarm Button Order]]&lt;br /&gt;
* [[Patch Clock Change Alarm Snooze Length|Clock: Change Alarm Snooze Length]] - Called: Snnoze Duration Selection&lt;br /&gt;
* [[Patch Camera Easy Shutter Sound Off|Camera: Easy Shutter Sound Off]] - Called: Sound Toggle - Green (and Grey)&lt;br /&gt;
** also [[Patch Camera Shutter Sound On-Off Button|Camera: Shutter Sound On-Off Button]]&lt;br /&gt;
** also [[Camera Mod Alternate Sound Disable]]&lt;br /&gt;
* [[Patch Camera Using Volume Buttons to Take a Picture|Camera: Using Volume Buttons to Take a Picture]]&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 Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Enable Landscape Viewing|Email: Enable Landscape Viewing]] &lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&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 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 Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Myavatar In Messaging App|Messaging: Avatar In Messaging App]] &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 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 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]] - Three Options: Builtin, Clean, and Fancy&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Messaging Sounds|Messaging: Message Sound]] - Called SMS Tone Per Contact&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 PDF Viewer Change Orientation|PDF Viewer: Change Orientation]]&lt;br /&gt;
* [[Patch Phone Show Call Duration in the Call Log|Phone: Show Call Duration in the Call Log]]&lt;br /&gt;
* [[Patch Phone Disable Various Call Sounds|Phone: Disable Various Call Sounds]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch Tasks Always Show Details of New Tasks|Tasks: Always Show Details of New Tasks]]&lt;br /&gt;
* ++[[Patch Youtube Landscape Orientation|Youtube: Landscape Orientation]]&lt;br /&gt;
&lt;br /&gt;
===webOS Patches===&lt;br /&gt;
* [[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* [[On Screen Keyboard]]&lt;br /&gt;
* [[Patch webOS Brightness|Brightness]]&lt;br /&gt;
* [[Change_the_default_notification.wav_Sound|Change the Default notification.wav Sound]] - use SMS Tone Per Contact&lt;br /&gt;
** Also [[Changes_Alert/Notification_Sounds|Changes Alert/Notification Sounds]]&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 Disable Charging Event Sounds|Disable Charging Event Sounds]]&lt;br /&gt;
* [[Patch webOS Workaround for Touchstone Charging Event Problem|Workaround for Touchstone Charging Event Problem]]&lt;br /&gt;
* [[Patch webOS Add Words to AutoCorrect Dictionary|Modify AutoCorrect Dictionary]]&lt;br /&gt;
* [[Patch webOS Radio Power Switch|Radio Power Switch]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
* [[Patch webOS Show Actual Battery Percentage | Show Actual Battery Percentage]]&lt;br /&gt;
* [[Patch webOS Turning Off Dialpad Noise|Turning Off Dialpad Noise]]&lt;br /&gt;
&lt;br /&gt;
|column2=&lt;br /&gt;
&lt;br /&gt;
==Previous Patches==&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;
* ++[[Patch Phone Edit Dialer Theme|Phone: Edit Dialer Theme]]&lt;br /&gt;
* [[Patch MediaPlayer Bookmarking|Music Player: Bookmarking]] only works in 1.2.1 podcast, speech, spoken word, netcast, or audiobook genres&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;
&lt;br /&gt;
===webOS 1.1 OK===&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 Email Change &amp;quot;Running Late&amp;quot; Message|Email: Change &amp;quot;Running Late&amp;quot; Message]]&lt;br /&gt;
* ++[[Patch MCraig Enabling Personals Category|mCraig: Enabling Personals Category]]&lt;br /&gt;
* ++[[Patch Phone Editing the Lock Screen|Phone: Editing the Lock Screen]]&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 Fix Attachments|Email: Fix Attachments]]&lt;br /&gt;
* [[Patch Sudoku Disable Zooming|Sudoku: Disable Zooming]]&lt;br /&gt;
&lt;br /&gt;
===webOS 1.1 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;
* ++[[Patch webOS Boot Themes|Boot Themes]]&lt;br /&gt;
* ++[[Patch webOS Bypassing Activation|Bypassing Activation]]&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 Random Wallpaper Switching|Random Wallpaper Switching]]&lt;br /&gt;
* [[Patch webOS Reverse Tunnel|Reverse Tunnel]] &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;
* [[Browser_Plugins|Browser Plugins]]&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>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7531</id>
		<title>Patch Launcher Reset to First Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7531"/>
		<updated>2009-11-30T11:30:19Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Updated patch, no real functional change but now it works like the reset to middle page patch.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
The Launcher maintains the last page opened when you return to it. If you most frequently use apps on the first page of the Launcher, you have to swipe back to the first page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the first page every time it's closed (in readiness for when it's next opened).&lt;br /&gt;
This works best in combination with the [[Patch Launcher Reset Scroll on Page Change]] patch to ensure the page is also always scrolled to the top.&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the 'Mojo.listen' handlers in the setup method around line 70 (setup begins at line 67 in webOS 1.3.1):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Insert a new listener in between the existing two so that it now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
		Mojo.listen(this.controller.document, Mojo.Event.activate, this.onActivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the beginning of the onDeactivate method around line 170 (onDeactivate begins at line 171 in webOS 1.3.1):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines before onDeactivate so that is now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* set launcher page to override last used page */&lt;br /&gt;
	onActivate: function(event) {		&lt;br /&gt;
		// set launcher to first page&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
		&lt;br /&gt;
		/** &lt;br /&gt;
		 * If Bsiegel's 'Reset Scroll Position' patch is installed&lt;br /&gt;
		 * then this does what it says on the tin for the middle page.&lt;br /&gt;
		 */&lt;br /&gt;
		event.value = 0;	/* Fudge this because onPageChange expects a&lt;br /&gt;
					 * mojo-property-change event but it's actually&lt;br /&gt;
					 * getting mojo-event-deactivate.&lt;br /&gt;
					 */&lt;br /&gt;
		this.onPageChange(event);&lt;br /&gt;
	},&lt;br /&gt;
&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository yet, but is has been submitted. Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. You can also apply it using webOS Quick Install. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-first-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-first-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.webosinternals.orig	Sat Nov 28 01:54:57 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Mon Nov 30 03:15:43 2009&lt;br /&gt;
@@ -67,6 +67,7 @@&lt;br /&gt;
 	setup: function() {&lt;br /&gt;
 		&lt;br /&gt;
 		Mojo.listen(this.controller.document, Mojo.Event.deactivate, this.onDeactivate.bindAsEventListener(this));&lt;br /&gt;
+		Mojo.listen(this.controller.document, Mojo.Event.activate, this.onActivate.bindAsEventListener(this));&lt;br /&gt;
 		Mojo.listen(this.controller.window, 'resize', this.onResize.bindAsEventListener(this));&lt;br /&gt;
 		&lt;br /&gt;
 		this.pagesModel = new LauncherPages({&lt;br /&gt;
@@ -167,6 +168,22 @@&lt;br /&gt;
 		this.updatePageIndicators();&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
+	/* set launcher page to override last used page */&lt;br /&gt;
+	onActivate: function(event) {		&lt;br /&gt;
+		// set launcher to first page&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(0, false);&lt;br /&gt;
+		&lt;br /&gt;
+		/** &lt;br /&gt;
+		 * If Bsiegel's 'Reset Scroll Position' patch is installed&lt;br /&gt;
+		 * then this does what it says on the tin for the middle page.&lt;br /&gt;
+		 */&lt;br /&gt;
+		event.value = 0;	/* Fudge this because onPageChange expects a&lt;br /&gt;
+					 * mojo-property-change event but it's actually&lt;br /&gt;
+					 * getting mojo-event-deactivate.&lt;br /&gt;
+					 */&lt;br /&gt;
+		this.onPageChange(event);&lt;br /&gt;
+	},&lt;br /&gt;
+&lt;br /&gt;
 	/* clean and hide global search */&lt;br /&gt;
 	onDeactivate: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7476</id>
		<title>Patch Launcher Reset to First Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.webos-internals.org/index.php?title=Patch_Launcher_Reset_to_First_Page&amp;diff=7476"/>
		<updated>2009-11-27T16:56:51Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Copied from Patch Launcher Reset Scroll on Page Change and edited accordingly.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{template:patch}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
The Launcher maintains the last page opened when you return to it. If you most frequently use apps on the first page of the Launcher, you have to swipe back to the first page if the last app you launched was on another page.&lt;br /&gt;
This patch resets the Launcher to the first page every time it's closed (in readiness for when it's next opened).&lt;br /&gt;
This works best in combination with the [[Patch Launcher Reset Scroll on Page Change]] patch to ensure the page is also always scrolled to the top.&lt;br /&gt;
&lt;br /&gt;
==Editing Process==&lt;br /&gt;
&lt;br /&gt;
* SSH in.&lt;br /&gt;
* Remount the filesystem as read/write:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Load launcher-assistant.js in vi:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo vi /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Locate the text 'this.removeLaunchFeedback();' in the onDeactivate method around line 185 (onDeactivate begins at line 171 in webOS 1.3.1, 'this.removeLaunchFeedback();' is the last line of that method):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
	&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Add the following lines below so that onDeactivate now looks like this:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
	/* clean and hide global search */&lt;br /&gt;
	onDeactivate: function(event) {&lt;br /&gt;
	&lt;br /&gt;
		this.globalSearchAssistant.deactivate();&lt;br /&gt;
		&lt;br /&gt;
		this.reorderController.cancel();&lt;br /&gt;
		&lt;br /&gt;
		if (this.appDialog) {&lt;br /&gt;
			this.appDialog.mojo.close();&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		SystemManagerService.showQuickLaunch(true);&lt;br /&gt;
		&lt;br /&gt;
		delete this.launchRequest;&lt;br /&gt;
		&lt;br /&gt;
		this.removeLaunchFeedback();&lt;br /&gt;
		&lt;br /&gt;
		/* Reset launcher to first page for next time */&lt;br /&gt;
		$('launcher_root').mojo.setSnapIndex(0, true);&lt;br /&gt;
		&lt;br /&gt;
		/* &lt;br /&gt;
		 * If Bsiegel's 'Reset Scroll Position' patch is installed&lt;br /&gt;
		 * then this does what it says on the tin for the first page.&lt;br /&gt;
		 */&lt;br /&gt;
		event.value = 0; /* fudge this because onPageChange expects a&lt;br /&gt;
				  * mojo-property-change event but it's actually&lt;br /&gt;
				  * getting mojo-event-deactivate.&lt;br /&gt;
				  */&lt;br /&gt;
		this.onPageChange(event);&lt;br /&gt;
		&lt;br /&gt;
	},&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Save the file and quit vi.&lt;br /&gt;
* Remount the filesystem as read only - this should reboot your Pre:&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sudo rootfs_open -w&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Patch Process==&lt;br /&gt;
&lt;br /&gt;
The patch is not in the webos-internals gitorious repository - if anybody can help with uploading that, it would be much appreciated (it's my first patch!). Until then, you can copy and paste the source below. Visit [[Applying Patches]] for info on how to use it. To apply the patch, follow the instructions above, and after remounting the filesystem as read/write, do the following:&lt;br /&gt;
&lt;br /&gt;
* Apply the patch (In this example, I have the patch file located in my home directory under '''patches'''):&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /&lt;br /&gt;
sudo patch -p0 --backup-if-mismatch &amp;lt; ~/patches/reset-to-first-page.patch&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&amp;lt;blockquote&amp;gt;&lt;br /&gt;
This is what you should see if it ran properly:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
patching file /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
* Remount the filesystem as read only as described above.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Patch Source (reset-to-first-page.patch)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;diff&amp;quot;&amp;gt;&lt;br /&gt;
--- /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js.webosinternals.orig	Fri Nov 27 08:29:40 2009&lt;br /&gt;
+++ /usr/lib/luna/system/luna-applauncher/app/controllers/launcher-assistant.js	Fri Nov 27 08:31:23 2009&lt;br /&gt;
@@ -183,6 +183,20 @@&lt;br /&gt;
 		delete this.launchRequest;&lt;br /&gt;
 		&lt;br /&gt;
 		this.removeLaunchFeedback();&lt;br /&gt;
+		&lt;br /&gt;
+		/* Reset launcher to first page for next time */&lt;br /&gt;
+		$('launcher_root').mojo.setSnapIndex(0, true);&lt;br /&gt;
+		&lt;br /&gt;
+		/* &lt;br /&gt;
+		 * If Bsiegel's 'Reset Scroll Position' patch is installed&lt;br /&gt;
+		 * then this does what it says on the tin for the first page.&lt;br /&gt;
+		 */&lt;br /&gt;
+		event.value = 0; /* fudge this because onPageChange expects a&lt;br /&gt;
+				  * mojo-property-change event but it's actually&lt;br /&gt;
+				  * getting mojo-event-deactivate.&lt;br /&gt;
+				  */&lt;br /&gt;
+		this.onPageChange(event);&lt;br /&gt;
+		&lt;br /&gt;
 	},&lt;br /&gt;
 	&lt;br /&gt;
 	onResize: function(event) {&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Portal:Patches_to_webOS&amp;diff=7475</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=7475"/>
		<updated>2009-11-27T16:45:42Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Added link for Reset to First Page patch for Launcher&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__notoc__&lt;br /&gt;
{{portal-header&lt;br /&gt;
|If you need info on how to properly update webOS, see [[Portal:Updating webOS Versions|Updating webOS Versions]].&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;***THIS PAGE IS OUT OF DATE, PLEASE HELP IN REORGANIZING IT***&amp;lt;/nowiki&amp;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;
For patches that aren't listed here you'll also want to check out the gitorious repository at http://gitorious.org/webos-internals/modifications/trees/master&lt;br /&gt;
&lt;br /&gt;
Please refer to '''[[MIT_Open_Source_License_-_webOS-Patches| MIT Open Source License - webOS-Patches]]''' for important information regarding patches and licensing.&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.3.1|Update 1.3.1]]&lt;br /&gt;
* [[Update 1.2.1|Update 1.2.1]]&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;
* [[Remove/Reduce Drag Radius]]&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;
==Current Patches==&lt;br /&gt;
===webOS 1.3.1 OK===&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* ++[[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* ++[[Patch_Email_Change_Default_Font_for_Replies-Forwards_from_Navy_to_Black|Email: Change default font on replies/forwards from dark blue to black]]&lt;br /&gt;
* [[Patch Email DeleteAll|Email: Delete All Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&lt;br /&gt;
* [[Patch Change Carrier String|Change Carrier String]]&lt;br /&gt;
* [[Patch Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Patch Launcher Reset Scroll on Page Change|Launcher: Reset Scroll on Page Change]]&lt;br /&gt;
* ++[[Patch Launcher Reset to First Page|Launcher: Reset to First Page]]&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch webOS Browser: Show All Bookmarks (Not just first 12)]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
===webOS 1.2.1 OK===&lt;br /&gt;
* ++[[Patch Browser Global Search Addons|Browser: Global Search Addons]]&lt;br /&gt;
* [[Patch Browser Delete Individual History Items|Browser: Delete Individual History Items]]&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* [[Patch Clock Enabling the Hidden Theme|Clock: Enabling the Hidden Theme]]&lt;br /&gt;
* ++[[Patch Clock Change Alarm Button Order|Clock: Change Alarm Button Order]]&lt;br /&gt;
* [[Patch Clock Change Alarm Snooze Length|Clock: Change Alarm Snooze Length]] - Called: Snnoze Duration Selection&lt;br /&gt;
* [[Patch Camera Easy Shutter Sound Off|Camera: Easy Shutter Sound Off]] - Called: Sound Toggle - Green (and Grey)&lt;br /&gt;
** also [[Patch Camera Shutter Sound On-Off Button|Camera: Shutter Sound On-Off Button]]&lt;br /&gt;
** also [[Camera Mod Alternate Sound Disable]]&lt;br /&gt;
* [[Patch Camera Using Volume Buttons to Take a Picture|Camera: Using Volume Buttons to Take a Picture]]&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 Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Enable Landscape Viewing|Email: Enable Landscape Viewing]] &lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&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 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 Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Myavatar In Messaging App|Messaging: Avatar In Messaging App]] &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 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 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]] - Three Options: Builtin, Clean, and Fancy&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Messaging Sounds|Messaging: Message Sound]] - Called SMS Tone Per Contact&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 PDF Viewer Change Orientation|PDF Viewer: Change Orientation]]&lt;br /&gt;
* [[Patch Phone Show Call Duration in the Call Log|Phone: Show Call Duration in the Call Log]]&lt;br /&gt;
* [[Patch Phone Disable Various Call Sounds|Phone: Disable Various Call Sounds]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch Tasks Always Show Details of New Tasks|Tasks: Always Show Details of New Tasks]]&lt;br /&gt;
* ++[[Patch Youtube Landscape Orientation|Youtube: Landscape Orientation]]&lt;br /&gt;
&lt;br /&gt;
===webOS Patches===&lt;br /&gt;
* [[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* [[On Screen Keyboard]]&lt;br /&gt;
* [[Patch webOS Brightness|Brightness]]&lt;br /&gt;
* [[Change_the_default_notification.wav_Sound|Change the Default notification.wav Sound]] - use SMS Tone Per Contact&lt;br /&gt;
** Also [[Changes_Alert/Notification_Sounds|Changes Alert/Notification Sounds]]&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 Disable Charging Event Sounds|Disable Charging Event Sounds]]&lt;br /&gt;
* [[Patch webOS Workaround for Touchstone Charging Event Problem|Workaround for Touchstone Charging Event Problem]]&lt;br /&gt;
* [[Patch webOS Add Words to AutoCorrect Dictionary|Modify AutoCorrect Dictionary]]&lt;br /&gt;
* [[Patch webOS Radio Power Switch|Radio Power Switch]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
* [[Patch webOS Show Actual Battery Percentage | Show Actual Battery Percentage]]&lt;br /&gt;
* [[Patch webOS Turning Off Dialpad Noise|Turning Off Dialpad Noise]]&lt;br /&gt;
&lt;br /&gt;
|column2=&lt;br /&gt;
&lt;br /&gt;
==Previous Patches==&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;
* ++[[Patch Phone Edit Dialer Theme|Phone: Edit Dialer Theme]]&lt;br /&gt;
* [[Patch MediaPlayer Bookmarking|Music Player: Bookmarking]] only works in 1.2.1 podcast, speech, spoken word, netcast, or audiobook genres&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;
&lt;br /&gt;
===webOS 1.1 OK===&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 Email Change &amp;quot;Running Late&amp;quot; Message|Email: Change &amp;quot;Running Late&amp;quot; Message]]&lt;br /&gt;
* ++[[Patch MCraig Enabling Personals Category|mCraig: Enabling Personals Category]]&lt;br /&gt;
* ++[[Patch Phone Editing the Lock Screen|Phone: Editing the Lock Screen]]&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 Fix Attachments|Email: Fix Attachments]]&lt;br /&gt;
* [[Patch Sudoku Disable Zooming|Sudoku: Disable Zooming]]&lt;br /&gt;
&lt;br /&gt;
===webOS 1.1 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;
* ++[[Patch webOS Boot Themes|Boot Themes]]&lt;br /&gt;
* ++[[Patch webOS Bypassing Activation|Bypassing Activation]]&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 Random Wallpaper Switching|Random Wallpaper Switching]]&lt;br /&gt;
* [[Patch webOS Reverse Tunnel|Reverse Tunnel]] &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;
* [[Browser_Plugins|Browser Plugins]]&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>IMGrant</name></author>
	</entry>
	<entry>
		<id>http://wiki.webos-internals.org/index.php?title=Portal:Patches_to_webOS&amp;diff=7474</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=7474"/>
		<updated>2009-11-27T16:43:44Z</updated>

		<summary type="html">&lt;p&gt;IMGrant: Moved Reset Scroll on Page Change patch for Launcher from webOS 1.2.1 OK to webOS 1.3.1 OK.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__notoc__&lt;br /&gt;
{{portal-header&lt;br /&gt;
|If you need info on how to properly update webOS, see [[Portal:Updating webOS Versions|Updating webOS Versions]].&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;nowiki&amp;gt;***THIS PAGE IS OUT OF DATE, PLEASE HELP IN REORGANIZING IT***&amp;lt;/nowiki&amp;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;
For patches that aren't listed here you'll also want to check out the gitorious repository at http://gitorious.org/webos-internals/modifications/trees/master&lt;br /&gt;
&lt;br /&gt;
Please refer to '''[[MIT_Open_Source_License_-_webOS-Patches| MIT Open Source License - webOS-Patches]]''' for important information regarding patches and licensing.&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.3.1|Update 1.3.1]]&lt;br /&gt;
* [[Update 1.2.1|Update 1.2.1]]&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;
* [[Remove/Reduce Drag Radius]]&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;
==Current Patches==&lt;br /&gt;
===webOS 1.3.1 OK===&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* ++[[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* ++[[Patch_Email_Change_Default_Font_for_Replies-Forwards_from_Navy_to_Black|Email: Change default font on replies/forwards from dark blue to black]]&lt;br /&gt;
* [[Patch Email DeleteAll|Email: Delete All Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&lt;br /&gt;
* [[Patch Change Carrier String|Change Carrier String]]&lt;br /&gt;
* [[Patch Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Patch Launcher Reset Scroll on Page Change|Launcher: Reset Scroll on Page Change]]&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch webOS Browser: Show All Bookmarks (Not just first 12)]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
===webOS 1.2.1 OK===&lt;br /&gt;
* ++[[Patch Browser Global Search Addons|Browser: Global Search Addons]]&lt;br /&gt;
* [[Patch Browser Delete Individual History Items|Browser: Delete Individual History Items]]&lt;br /&gt;
* [[Patch Calendar Notification Repeat|Calendar: Notification Repeat]]&lt;br /&gt;
* [[Patch Calendar Snooze Duration Selection|Calendar: Snooze Duration Selection]]&lt;br /&gt;
* [[Patch Clock Add space between Snooze and Dismiss buttons|Clock: Add space between Snooze and Dismiss buttons]]&lt;br /&gt;
* [[Patch Clock Enabling the Hidden Theme|Clock: Enabling the Hidden Theme]]&lt;br /&gt;
* ++[[Patch Clock Change Alarm Button Order|Clock: Change Alarm Button Order]]&lt;br /&gt;
* [[Patch Clock Change Alarm Snooze Length|Clock: Change Alarm Snooze Length]] - Called: Snnoze Duration Selection&lt;br /&gt;
* [[Patch Camera Easy Shutter Sound Off|Camera: Easy Shutter Sound Off]] - Called: Sound Toggle - Green (and Grey)&lt;br /&gt;
** also [[Patch Camera Shutter Sound On-Off Button|Camera: Shutter Sound On-Off Button]]&lt;br /&gt;
** also [[Camera Mod Alternate Sound Disable]]&lt;br /&gt;
* [[Patch Camera Using Volume Buttons to Take a Picture|Camera: Using Volume Buttons to Take a Picture]]&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 Read All]]&lt;br /&gt;
* [[Patch Email DeleteFromNotificationBar|Email: Delete from notification bar]]&lt;br /&gt;
* [[Patch Email Enable Landscape Viewing|Email: Enable Landscape Viewing]] &lt;br /&gt;
* [[Patch Email Notification Repeat|Email: Notification Repeat]]&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 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 Launcher Wrap Pages|Launcher: Wrap Pages]]&lt;br /&gt;
* [[Myavatar In Messaging App|Messaging: Avatar In Messaging App]] &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 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 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]] - Three Options: Builtin, Clean, and Fancy&lt;br /&gt;
* [[Patch Messaging Notification Repeat|Messaging: Notification Repeat]]&lt;br /&gt;
* [[Patch Messaging Sounds|Messaging: Message Sound]] - Called SMS Tone Per Contact&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 PDF Viewer Change Orientation|PDF Viewer: Change Orientation]]&lt;br /&gt;
* [[Patch Phone Show Call Duration in the Call Log|Phone: Show Call Duration in the Call Log]]&lt;br /&gt;
* [[Patch Phone Disable Various Call Sounds|Phone: Disable Various Call Sounds]]&lt;br /&gt;
* [[Patch Phone Notification Repeat|Phone: Notification Repeat]]&lt;br /&gt;
* [[Patch Tasks Always Show Details of New Tasks|Tasks: Always Show Details of New Tasks]]&lt;br /&gt;
* ++[[Patch Youtube Landscape Orientation|Youtube: Landscape Orientation]]&lt;br /&gt;
&lt;br /&gt;
===webOS Patches===&lt;br /&gt;
* [[Patch Enable LED Notifications|Enable LED Notifications]]&lt;br /&gt;
* [[On Screen Keyboard]]&lt;br /&gt;
* [[Patch webOS Brightness|Brightness]]&lt;br /&gt;
* [[Change_the_default_notification.wav_Sound|Change the Default notification.wav Sound]] - use SMS Tone Per Contact&lt;br /&gt;
** Also [[Changes_Alert/Notification_Sounds|Changes Alert/Notification Sounds]]&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 Disable Charging Event Sounds|Disable Charging Event Sounds]]&lt;br /&gt;
* [[Patch webOS Workaround for Touchstone Charging Event Problem|Workaround for Touchstone Charging Event Problem]]&lt;br /&gt;
* [[Patch webOS Add Words to AutoCorrect Dictionary|Modify AutoCorrect Dictionary]]&lt;br /&gt;
* [[Patch webOS Radio Power Switch|Radio Power Switch]]&lt;br /&gt;
* [[Patch webOS Roam Control|Roam Control]]&lt;br /&gt;
* [[Patch webOS Show Actual Battery Percentage | Show Actual Battery Percentage]]&lt;br /&gt;
* [[Patch webOS Turning Off Dialpad Noise|Turning Off Dialpad Noise]]&lt;br /&gt;
&lt;br /&gt;
|column2=&lt;br /&gt;
&lt;br /&gt;
==Previous Patches==&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;
* ++[[Patch Phone Edit Dialer Theme|Phone: Edit Dialer Theme]]&lt;br /&gt;
* [[Patch MediaPlayer Bookmarking|Music Player: Bookmarking]] only works in 1.2.1 podcast, speech, spoken word, netcast, or audiobook genres&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;
&lt;br /&gt;
===webOS 1.1 OK===&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 Email Change &amp;quot;Running Late&amp;quot; Message|Email: Change &amp;quot;Running Late&amp;quot; Message]]&lt;br /&gt;
* ++[[Patch MCraig Enabling Personals Category|mCraig: Enabling Personals Category]]&lt;br /&gt;
* ++[[Patch Phone Editing the Lock Screen|Phone: Editing the Lock Screen]]&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 Fix Attachments|Email: Fix Attachments]]&lt;br /&gt;
* [[Patch Sudoku Disable Zooming|Sudoku: Disable Zooming]]&lt;br /&gt;
&lt;br /&gt;
===webOS 1.1 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;
* ++[[Patch webOS Boot Themes|Boot Themes]]&lt;br /&gt;
* ++[[Patch webOS Bypassing Activation|Bypassing Activation]]&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 Random Wallpaper Switching|Random Wallpaper Switching]]&lt;br /&gt;
* [[Patch webOS Reverse Tunnel|Reverse Tunnel]] &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;
* [[Browser_Plugins|Browser Plugins]]&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>IMGrant</name></author>
	</entry>
</feed>