Development & Tweak Ideas

From WebOS Internals
Jump to navigation Jump to search

Here are some ideas for tweaks which have not been implemented yet (to my knowledge):

If you decide to start working one of these, please leave a note under the item as a second-level bullet. If you don't have wiki access, find someone in the IRC channel who does. This will help encourage collaborative discovery, and reduce duplicate effort. We also recommend starting a new wiki page where you take notes about any discoveries you've made related to the tweak idea.

Once you've figured it out, it would be appreciated if you make a write-up for the Stock App Mods page. If you don't want to do a write up, at least try to share your findings with someone who can subsequently document them for you. At the very least, jot a few notes onto a wiki page, and tag it with "cleanup".

Patch Ideas

  • Create a patch for showing day events in month view on calendar --isn't that the "All-Day Events in Month View" patch in Preware?
  • Restore "Ignoring calendar alarm repeats the alarm in 5 minutes" to WebOS 1.10, the way it was in WebOS 1.04 and Palm
  • Enable simultaneous Voice and Data access. This is a limitation of current CDMA radios (ie all Sprint, Verizon, Alltel, etc.. phones affected)
  • Multiple attachments per Message
  • Add date (& other info?) to time display when Pre is on Touchstone
  • Enable landscape clock with bigger numbers while docked on Touchstone
  • Create a minute beep or auto hang up calls for those with free voice minute plans.
  • Mod the day number scroller in Date Picker widget to add a day-of-week letter/icon as a superscript to the day number

Tweak Ideas

  • Device automatically goes into USB Drive Mode without tapping on the option (For bad touchscreen issues). Another option is to do an Orange + Symbol + key sequence for that.
  • Make bootup faster (parallel?)
  • Fix the horrendous white balance issues with the camera (especially with the flash on)
  • Make the Pre vibrate differently based on caller ID
  • Enable image saving/save to wallpaper from the browse.
  • Enable opening PDF/doc whatever from Web browser.
    • //Done a slight bit of testing with this. It's very easy to get the browser to pass along a link to the application (tested with PDF). /usr/palm/command-resource-handlers.json contains all of the MIME types and you just have to change streamable to true. Of course, the application itself has an issue with this and errors out.//
  • Enable uploads in a browser (dialog box with browse, etc.).
  • Enable track skipping without turning the device on.
  • Quick copy of locked calendar events to the local calendar so that they can be edited.
  • Make the Pre vibrate longer.
    • tictac is working on this here.
  • Allow other messaging protocols using libpurple plugins (Facebook, Jabber, etc.).
  • Trigger camera remotely.
    • Wonder420 is working on this here.
  • Back up contact link information. (This is currently not stored in the Palm Profile, so it will be lost on a device wipe.) -- Contact Link Backup
  • Landscape virtual keyboard in the Web app.
  • Find better touch scroll threshold numbers so the action is not as jerky/fuzzy while moving. 1.0.3 update seems to have improved that a bit.. //~ Robi//
  • Look into PowerTop to potentially save even more power and extend batt life. //~ Robi//
  • Allow universal search to search through email text as well
  • Multiple card rows in the small card view
  • Add a "scrubber" to the music app to control song position
  • Remove Amazon section from music app to see if it loads faster without (Music app loads instantly but then you have to wait 30 seconds or so before you can do anything until the Amazon section shows up).
    • Unfortunately it seems that it's the thumbnail creation for the few albums shown in shuffle all that causes the delay- removing the Amazon entry doesn't seem to change the speed at all.
  • Change the sorting of the music app so that A, An, The in band names and album names are ignored and it sorts alphabetically using the next word Patch MediaPlayer Ignore 'A', 'An', and 'The' In Artist and Album names ~ Keegan99
  • In the camera app, use the volume up/down buttons to snap a picture.
  • When camera app loads, also load photos app (for quicker review). Even better, let user choose to "keep" or "delete" a picture, and keep the photo on the screen until a choice is made.
  • Stop the alert noise from obnoxiously playing every single time you put the Pre back on the Touchstone.
  • Set up the center button to wake the Pre up, like an iPhone's home button wakes up the iPhone.
  • Disable the slide to unlock screen.
  • Allow copy to work from google maps, so you can get a url of your current location to paste in chats/sms/mms //~ hemna//
  • Light up Navi lights when a notification is received
  • Setting to disable ring for Unknown Number (May be a simple addition to the patch "Call Block/Rejecter" by Elryon)
  • When the clock's alarm goes off, it only turns on the screen for the customary ~2 seconds before shutting the screen off. Change this to keep the screen on as long as the alarm is playing, then go to sleep when the "snooze" button is pressed.
  • Make "all-day" appointments show up in calendar month view (currently invisible)
  • Allow the phone app to run in the background, without a visible card, (to speed up ringtone playing on incoming phone calls).
  • Disable the end call sound and the low battery sound.
  • Add the ability to snooze a calendar reminder for a certain amount of time that user can choose.
  • Add additional gstreamer plugins into the gstreamer plugin directory; should allow adding support for additional media formats pretty easily.
  • Make Contacts app and Universal Search search ALL contact fields. Similar to Google Contacts.
  • Provide for two different brightness levels, one (brighter) for while charging, with another for when the Pre is on battery // Proposed on irc by navinag //
  • Use Ambient Light Sensor to dynamically adjust screen brightness.
  • Add alternate Date Picker widget that has month-view like Palm OS (or some other alternative that lets user see target date in context of day-in-week or week-in-month)

Development Ideas

Get VNC input working with a mouse and keyboard driver. //~ ultraBlack//

Get Synergy working with a mouse and keyboard driver. :O Why not? :P //~ ultraBlack//

Develop a power calculator app for the Pre, with DIGIT-GROUPING, more functions, and possibly even a graphing mode. //~ ultraBlack//

Put Firefox on it. Definitely not practical. Maybe Portable Firefox? //~ ultraBlack//

  • Consider Opera Mobile or Opera Mini as more worthwhile alternatives. //~ ultraBlack//
  • Opera Mobile can successfully upload files to web servers. (re: idea to upload via browser) //~ oc80z//

Work out a good backup solution, perhaps mrb or netapp like .snapshots, so updates/upgrades are easier. //~ Robi//

Look into setting up ad-hoc networking for file sharing over WiFi and BitTorrent. //~ Robi//

Put Apache on it. //~ ultraBlack// Done. //~nebula//

  • Consider Lighttpd or Cherokee as more worthwhile alternatives. //~ Robi//
  • For limited needs thttpd + php as shown in ajaxphpterm seems to work fine with minimal resource usage. //~ djbclark//
  • Sprint blocks connections to the Pre on port 80, but port 2222 and 8080 has been tested and work //~ smashman// 8000 also works //~nebula//

Make LunaSysMgr run without exclusive access to I/O, so it can be run alongside DirectFB applications (and since directfb can run GTK, QT, and X11 applications directly, also those). Some ideas on how to do this are on the DFBTerm DirectFB Terminal Emulator page's "Virtual Keyboard-Video-Monitor (KVM) Switch" section, however if LunaSysMgr source code becomes available the best method would probably be to just change it to run against directfb instead of using /dev/fb* and /dev/input/* directly. //~ djbclark//

Confirm that the device is free of Digital Restrictions Management (DRM) by installing Linux compiled from source. There is a /proc/config.gz, and palm has released the patches they used at (search for "linux kernel"). This may also be useful as linux patches may be needed for some of the other ideas on this page. //~ djbclark//

Possibly easier accessing linux procedure - create an .ipk (ipkg) file that does the accessed linux setup; have user execute either by emailing them the file (it has been confirmed that you can install ipkg files via the email client), and/or by having them temporarily manually set their DNS to a DNS server that would direct the app store somewhere else. //~ djbclark//

Make directfb (via tslib - - or gpm - ) work with the palm pre's /dev/touchscreen (new driver CONFIG_TOUCHSCREEN_CY8MRLN=y (cypress touchscreen) included in - see vala-terminal for more details. //~ djbclark//

Add more Bluetooth profiles/support such as HID so that BT keyboards can be used.

Enable printing - my testing of CUPS install failed on the 'insmod' file missing, could not installed printer driver, CUPS-DOC worked and the web interface was functioning well on localhost from the Pre browser. //~ dld121//

Implementing a learning autocorrect system. Perhaps just a process that monitors keyboard input and removes //word// from the dictionary when //word//<space><backspace>//nextword// is found.

Create or port a Usenet news reader under WebOS

Figure out how to add custom gestures to the screen/gesture area. (I'd really like to tap around the center button to emulate a 5-way pad.)

RSS Reader (Importable Feeds, Subscription to podcasts) //~ oc80z//

Get (FSO) working on the Palm Pre as an alternative platform to the nonfree LunaSysMgr GUI - //~ djbclark// Links and community organizing.

TASK application - add categories column A-B-C like, and priority column 1-2-3-4-5, like the Treo755p Task application. Make them sortable by clicking on column header. Additional development: maybe some way to sync the Tasks with desktop or web based interface

PGP support using optware gnupg: GUI for entering PGP passphrase, registration hooks for gpg/pgp files & resending to app after decrypting, and create GUI for keyring management

Subversion support using optware svn: GUI for repo browsing/checkout, performing checkins, etc.