Commit 967b739298b05342b20ccedf3ea80e1ee65614a1

  • avatar
  • dBsooner's Stuff <dbsooner @del…ge.vision5.com>
  • Sat Mar 06 15:44:11 CET 2010
11 patches ported for 1.4.0.
  
1Swipe delete history in the browser
2Index: /usr/palm/applications/com.palm.app.browser/app/controllers/history-assistant.js
3===================================================================
4--- .orig/usr/palm/applications/com.palm.app.browser/app/controllers/history-assistant.js
5+++ /usr/palm/applications/com.palm.app.browser/app/controllers/history-assistant.js
6@@ -34,10 +34,13 @@ HistoryAssistant.prototype.setup = funct
1diff --git a/usr/palm/applications/com.palm.app.browser/app/controllers/history-assistant.js b/usr/palm/applications/com.palm.app.browser/app/controllers/history-assistant.js
2index 8871138..cceb594 100644
3--- a/usr/palm/applications/com.palm.app.browser/app/controllers/history-assistant.js
4+++ b/usr/palm/applications/com.palm.app.browser/app/controllers/history-assistant.js
5@@ -34,10 +34,13 @@ HistoryAssistant.prototype.setup = function() {
76 this.controller.setupWidget('historyList', {
87 itemTemplate:'history/history-entry',
98 listTemplate:'history/history-container',
1111+ swipeToDelete:true,
1212+ autoconfirmDelete:true
1313 });
14
14
1515 this._onListSelectionHandler = this._onListSelection.bindAsEventListener(this);
1616+ this._onListDeleteHandler = this._onListDelete.bindAsEventListener(this);
1717 this._historyListWidget = this.controller.get('historyList');
18
18
1919 var appMenuModel = {
20@@ -63,6 +66,7 @@ HistoryAssistant.prototype.cleanup = fun
20@@ -63,6 +66,7 @@ HistoryAssistant.prototype.cleanup = function() {
2121 HistoryAssistant.prototype.activate = function() {
22
22
2323 this._historyListWidget.addEventListener(Mojo.Event.listTap, this._onListSelectionHandler);
2424+ this._historyListWidget.addEventListener(Mojo.Event.listDelete, this._onListDeleteHandler);
25
25
2626 // On an activation for a re-render of the contents.
27 var len = this._historyListWidget.mojo.getLength();
28@@ -72,6 +76,7 @@ HistoryAssistant.prototype.activate = fu
27 var len = this._historyListWidget.mojo.getLength();
28@@ -72,6 +76,7 @@ HistoryAssistant.prototype.activate = function() {
2929 HistoryAssistant.prototype.deactivate = function() {
30
30
3131 Mojo.Event.stopListening(this._historyListWidget, Mojo.Event.listTap, this._onListSelectionHandler);
3232+ Mojo.Event.stopListening(this._historyListWidget, Mojo.Event.listDelete, this._onListDeleteHandler);
3333 };
34
34
3535 /**
36@@ -151,6 +156,10 @@ HistoryAssistant.prototype._onListSelect
36@@ -151,6 +156,10 @@ HistoryAssistant.prototype._onListSelection = function(event) {
3737 });
3838 };
39
39
4040+HistoryAssistant.prototype._onListDelete = function(event) {
4141+ this.historyStore.deleteHistoryEntry(event.item.url, function() {}, function() {});
4242+};
4444 /**
4545 * handle a menu command.
4646 */
47Index: /usr/palm/applications/com.palm.app.browser/app/models/history-store.js
48===================================================================
49--- .orig/usr/palm/applications/com.palm.app.browser/app/models/history-store.js
50+++ /usr/palm/applications/com.palm.app.browser/app/models/history-store.js
51@@ -24,6 +24,11 @@ function HistoryStore(options, onSuccess
47diff --git a/usr/palm/applications/com.palm.app.browser/app/models/history-store.js b/usr/palm/applications/com.palm.app.browser/app/models/history-store.js
48index 360c746..51fb245 100644
49--- a/usr/palm/applications/com.palm.app.browser/app/models/history-store.js
50+++ b/usr/palm/applications/com.palm.app.browser/app/models/history-store.js
51@@ -24,6 +24,11 @@ function HistoryStore(options, onSuccess, onFailure) {
5252 }
53
53
5454 /** @private */
5555+HistoryStore.prototype._deleteHistoryEntry = function(url, onSuccess, onFailure, transaction) {
5656+ this._executeSql(transaction, onSuccess, onFailure,
5858+};
5959+
6060 HistoryStore.prototype._addHistoryEntry = function(url, title, date, onSuccess, onFailure, transaction) {
61
61
6262 var utcNow = date.getUTC().getTime();
63@@ -41,6 +46,10 @@ HistoryStore.prototype._addHistoryEntry
63@@ -41,6 +46,10 @@ HistoryStore.prototype._addHistoryEntry = function(url, title, date, onSuccess,
6464 "INSERT INTO 'history' (date, url, title) VALUES(?, ?, ?)", [utcNow, url, title]);
6565 };
66
66
6767+HistoryStore.prototype.deleteHistoryEntry = function(url, onSuccess, onFailure) {
6868+ this.database.transaction(this._deleteHistoryEntry.bind(this, url, onSuccess, onFailure));
6969+};
  
1diff --git a/usr/palm/applications/com.palm.app.calendar/app/controllers/edit-assistant.js b/usr/palm/applications/com.palm.app.calendar/app/controllers/edit-assistant.js
2index 9ba9c70..8ae0f19 100644
3--- a/usr/palm/applications/com.palm.app.calendar/app/controllers/edit-assistant.js
4+++ b/usr/palm/applications/com.palm.app.calendar/app/controllers/edit-assistant.js
5@@ -444,7 +444,10 @@ var EditAssistant = Class.create({
6 '-PT10M', //Do not localize
7 '-PT15M', // Do NOT Localize
8 '-PT30M', // Do NOT Localize
9+ '-PT45M', // Customized: Add 45 minute option
10 '-PT1H', // Do NOT Localize
11+ '-PT90M', // Customized: Add 90 minute option
12+ '-PT2H', // Customized: Add 2 hour option
13 '-P1D' // Do NOT Localize
14 ]
15 },
16@@ -1186,4 +1189,4 @@ var EditAssistant = Class.create({
17 this.controller.stageController.popScene();
18
19 },
20-});
21\ No newline at end of file
22+});
23diff --git a/usr/palm/applications/com.palm.app.calendar/app/controllers/prefs-assistant.js b/usr/palm/applications/com.palm.app.calendar/app/controllers/prefs-assistant.js
24index cebe803..9591ca7 100644
25--- a/usr/palm/applications/com.palm.app.calendar/app/controllers/prefs-assistant.js
26+++ b/usr/palm/applications/com.palm.app.calendar/app/controllers/prefs-assistant.js
27@@ -3,7 +3,7 @@
28 var THIRTY_MINUTES = $L("30 minutes");
29 var ONE_HOUR = $L("1 hour");
30 var TWO_HOURS = $L("2 hours");
31-var numTimedAlarm = 7;
32+var numTimedAlarm = 10; // Customized: Changed 7 to 10. See corresponding change in BuildAlarmsMenu
33 var PrefsAssistant = Class.create({
34
35 initialize: function() {
36@@ -241,7 +241,9 @@ var PrefsAssistant = Class.create({
37 this.alarms[4].command,
38 this.alarms[5].command,
39 this.alarms[6].command,
40-
41+ this.alarms[7].command, // Customized: Added 3 new options, so need
42+ this.alarms[8].command, // Customized: to account for 10 items in
43+ this.alarms[9].command, // Customized: the list instead of 7.
44
45 this.allDayAlarms[1].command,
46 this.allDayAlarms[2].command,
47@@ -763,7 +765,10 @@ var PrefsAssistant = Class.create({
48 {label: '', command: '-PT10M'}, //Do Not localize
49 {label: '', command: '-PT15M'}, // Do NOT Localize
50 {label: '', command: '-PT30M'}, // Do NOT Localize
51+ {label: '', command: '-PT45M'}, // Customized: Added 45 minute option
52 {label: '', command: '-PT1H'}, // Do NOT Localize
53+ {label: '', command: '-PT90M'}, // Customized: Added 90 minute option
54+ {label: '', command: '-PT2H'}, // Customized: Added 2 hour option
55 {label: '', command: '-P1D'} // Do NOT Localize
56 ],
57
58@@ -774,4 +779,4 @@ var PrefsAssistant = Class.create({
59 {label: '', command: '-P3D'}, // Do NOT Localize
60 {label: '', command: '-P1W'} // Do NOT Localize
61 ]
62-});
63\ No newline at end of file
64+});
  
1diff --git a/usr/palm/applications/com.palm.app.calendar/app/controllers/app-assistant.js b/usr/palm/applications/com.palm.app.calendar/app/controllers/app-assistant.js
2index 5375929..a6d18b0 100644
3--- a/usr/palm/applications/com.palm.app.calendar/app/controllers/app-assistant.js
4+++ b/usr/palm/applications/com.palm.app.calendar/app/controllers/app-assistant.js
5@@ -117,6 +117,9 @@ var AppAssistant = Class.create({
6 Mojo.Log.info("$$$$$$$$ AppAssistant handleLaunch : alarmclose");
7 this.closeReminder(launchParams.alarmclose);
8 }
9+ else if (launchParams.playalarmsound){
10+ this.playAlarmSound();
11+ }
12 else if (launchParams.dayChange){
13 this.dayChange();
14 }
15@@ -267,6 +270,13 @@ var AppAssistant = Class.create({
16 Mojo.Log.info("$$$$$$$$ AppAssistant closeReminder:end");
17 },
18
19+ playAlarmSound: function() {
20+ if (this.openReminderAlert) {
21+ this.openReminderAlert.playAlarmSound();
22+ this.openReminderAlert = null;
23+ }
24+ },
25+
26 scheduleNextReminder: function(eventId) {
27 Mojo.Log.info("$$$$$$$$ AppAssistant scheduleNextReminder: for event:"+eventId);
28 new Mojo.Service.Request('palm://com.palm.calendar', {
29diff --git a/usr/palm/applications/com.palm.app.calendar/app/controllers/reminder-assistant.js b/usr/palm/applications/com.palm.app.calendar/app/controllers/reminder-assistant.js
30index d190fd1..4d7baf9 100644
31--- a/usr/palm/applications/com.palm.app.calendar/app/controllers/reminder-assistant.js
32+++ b/usr/palm/applications/com.palm.app.calendar/app/controllers/reminder-assistant.js
33@@ -60,6 +60,9 @@ var ReminderAssistant = Class.create({
34 }
35 }
36 Mojo.Log.info("$$$$$$$$ Reminder-assistant cleanup:end:");
37+
38+ //remove the Notification repeat task
39+ this.removePlayAlarmSoundTask();
40 },
41
42 remindersUpdated: function() {
43@@ -95,6 +98,9 @@ var ReminderAssistant = Class.create({
44 this.scheduleAutoCloseTask();
45 this.updateDisplay();
46 Mojo.Log.info("$$$$$$$$ Reminder-assistant updateMostRecentReminder:end");
47+
48+ //setup the notification repeat task
49+ this.schedulePlayAlarmSoundTask();
50 },
51
52 updateDisplay: function() {
53@@ -383,6 +389,13 @@ var ReminderAssistant = Class.create({
54 Mojo.Log.info("$$$$$$$$ Reminder-assistant autoCloseAlert: end " + this.reminder.id);
55 },
56
57+ playAlarmSound: function() {
58+ //temporarily set the snooze to 0 will immediately re-trigger allert to get our attention.
59+ this.dismissed = false;
60+ this.DEFAULT_SNOOZE = 0;
61+ this.closeAlert();
62+ },
63+
64 specialCleanup:function(){
65 //we need to do this so that cleanup cleans the reminder rightaway
66 Mojo.Log.info("$$$$$$$$ Reminder-assistant specialCleanup: window Name:" + this.controller.window.name);
67@@ -432,6 +445,29 @@ var ReminderAssistant = Class.create({
68 Mojo.Log.info("$$$$$$$$ Reminder-assistant removeAutoCloseTask: end " + this.reminder.id);
69 },
70
71+ schedulePlayAlarmSoundTask: function() {
72+ //retrigger reminder every two minutes until we acknowledge it.
73+ //change the value in addMinutes to a value other than 2 if you prefer a different time span for the notification repeat.
74+ //ultimatly it would be best to add this to the preferences page.
75+ var playSoundTime = new Date().addMinutes(2);
76+
77+ this.controller.serviceRequest('palm://com.palm.taskScheduler', {
78+ method: 'updateTask',
79+ parameters: {uri: 'palm://com.palm.applicationManager/open',
80+ arguments: {'id': 'com.palm.app.calendar',
81+ 'params': {'playalarmsound': 'true'}},
82+ key: 'calendar-playalarmsound',
83+ start: {date: playSoundTime.toUTCString()}}
84+ });
85+ },
86+
87+ removePlayAlarmSoundTask: function() {
88+ this.controller.serviceRequest('palm://com.palm.taskScheduler', {
89+ method: 'removeTask',
90+ parameters: {key: 'calendar-playalarmsound'}
91+ });
92+ },
93+
94 replaceHTML: function(element, content) {
95 Mojo.Log.info("$$$$$$$$ Reminder-assistant replaceHTML:start");
96 var range = element.ownerDocument.createRange();
  
1diff --git a/usr/palm/applications/com.palm.app.calendar/app/controllers/app-assistant.js b/usr/palm/applications/com.palm.app.calendar/app/controllers/app-assistant.js
2index 5375929..3509e2a 100644
3--- a/usr/palm/applications/com.palm.app.calendar/app/controllers/app-assistant.js
4+++ b/usr/palm/applications/com.palm.app.calendar/app/controllers/app-assistant.js
5@@ -399,9 +399,9 @@ var AppAssistant = Class.create({
6 var reminder = getReminderManager().getReminder(eventId);
7 reminder.userClosed = false;
8 if (reminder.attendees.length > 1 /*now we include the organizer in attendee list*/)
9- height = 203;
10+ height = 280; //203 orig; 74 + a couple to get more choices
11 else
12- height = 149;
13+ height = 226; //149 orig;
14
15 var needThrobbing =(hasNewContent || !isSnoozedReminder) ? true:false;
16 Mojo.Log.info("$$$$$$$$ AppAssistant doAlarm:createStageWithCallback for stage: "+this.createAlarmStageName(eventId)+", stage height is: "+height);
17diff --git a/usr/palm/applications/com.palm.app.calendar/app/controllers/reminder-assistant.js b/usr/palm/applications/com.palm.app.calendar/app/controllers/reminder-assistant.js
18index d190fd1..2d98937 100644
19--- a/usr/palm/applications/com.palm.app.calendar/app/controllers/reminder-assistant.js
20+++ b/usr/palm/applications/com.palm.app.calendar/app/controllers/reminder-assistant.js
21@@ -4,7 +4,7 @@
22 var ReminderAssistant = Class.create({
23 initialize: function(eventId,needThrobbing) {
24 Mojo.Log.info("$$$$$$$$ Reminder-assistant initialize: start: "+eventId);
25- this.DEFAULT_SNOOZE = 5;
26+ this.DEFAULT_SNOOZE = 30;
27 this.reminders = getReminderManager();
28 getAppAssistant().openReminderAlert = this;
29 this.requests = [];
30@@ -26,7 +26,54 @@ var ReminderAssistant = Class.create({
31 Mojo.Log.info("$$$$$$$$ Reminder-assistant activate:end");
32 },
33
34+ /* Until i figure out (or someone) how to get the scrolling of the list selection to work reduce this
35+ * list to your favorite three
36+ * Make sure you update the default snooze value to respectively
37+ * The options set in these instructions will give you a 30 min default value and the options for 1hr,
38+ * 2hrs and 1day.
39+ * Note that the 30min option is added to the top so we can use it as a default but is left in the
40+ * correct location commented out for when the scrolling is working.
41+ */
42+ snoozeOptions: [
43+ {label:$L('30 Minutes'), value:'30'},
44+ //{label:$L('5 Minutes'), value:'5'},
45+ //{label:$L('10 Minutes'), value:'10'},
46+ {label:$L('15 Minutes'), value:'15'},
47+ //{label:$L('30 Minutes'), value:'30'},
48+ {label:$L('1 Hour'), value:'60'},
49+ {label:$L('2 Hours'), value:'120'},
50+ //{label:$L('4 Hours'), value:'240'},
51+ //{label:$L('8 Hours'), value:'480'},
52+ //{label:$L('10 Hours'), value:'600'},
53+ //{label:$L('12 Hours'), value:'720'},
54+ {label:$L('1 Day'), value:'1440'},
55+ {label:$L('2 Days'), value:'2880'},
56+ //{label:$L('3 Days'), value:'4320'},
57+ //{label:$L('4 Days'), value:'5760'},
58+ //{label:$L('5 Days'), value:'7200'},
59+ //{label:$L('6 Days'), value:'8640'},
60+ //{label:$L('1 Week'), value:'10080'},
61+ //{label:$L('2 Weeks'), value:'20160'}
62+ ],
63+
64 setup: function() {
65+ this.controller.setupWidget('myscroller',
66+ {
67+ mode:'vertical'
68+ });
69+
70+ //setup the snooze duration selector list
71+ this.selectorChoices = this.snoozeOptions;
72+ this.selectorAttributes = { label: "Snooze Duration", labelPlacement: "left", choices: this.selectorChoices, modelProperty:'value' };
73+
74+ //Need to figure out how to remember previous selected snooze value.
75+ //set the default duration to match the default snooze value
76+ this.selectorModel = {value:'30'};
77+ this.selectorModel.value = '30';
78+ this.controller.setupWidget('snoozeSelector', this.selectorAttributes, this.selectorModel);
79+
80+ this.onSnoozeDurationChangedHandler = this.onSnoozeDurationChanged.bindAsEventListener(this);
81+
82 Mojo.Log.info("$$$$$$$$ Reminder-assistant setup:start");
83 this.service = getCalendarService();
84
85@@ -150,6 +197,9 @@ var ReminderAssistant = Class.create({
86
87 this.controller.get('reminder-dismiss').addEventListener(Mojo.Event.tap, this.onDismissHandler);
88 this.controller.get('reminder-snooze').addEventListener(Mojo.Event.tap, this.onSnoozeHandler);
89+
90+ //add snoozeDuration event listners
91+ this.controller.get('snoozeSelector').addEventListener(Mojo.Event.propertyChange, this.onSnoozeDurationChangedHandler);
92 },
93
94 removeListeners: function() {
95@@ -167,6 +217,10 @@ var ReminderAssistant = Class.create({
96 if (email) email.removeEventListener(Mojo.Event.tap, this.onEmailHandler);
97 var snooze = this.controller.get('reminder-snooze');
98 if (snooze) snooze.removeEventListener(Mojo.Event.tap, this.onSnoozeHandler);
99+
100+ //remove snoozeDuration event listners
101+ var snoozeDuration = this.controller.get('snoozeSelector');
102+ if (snoozeDuration) snoozeDuration.removeEventListener(Mojo.Event.propertyChange, this.onSnoozeDurationChangedHandler);
103 },
104
105
106@@ -307,6 +361,16 @@ var ReminderAssistant = Class.create({
107 Mojo.Log.info("$$$$$$$$ Reminder-assistant onSnooze: end: " + this.reminder.id);
108 },
109
110+ /* handle the change event for the snooze duration.
111+ * set the default snooze value to the selection value
112+ * need to figure out how to save this value for reuse when the snooze duration
113+ * expires so that we can set the selection to the same value prevously selected
114+ */
115+ onSnoozeDurationChanged: function(value) {
116+ this.DEFAULT_SNOOZE = this.selectorModel.value;
117+ this.closeAlert();
118+ },
119+
120 removeReminder: function() {
121 Mojo.Log.info("$$$$$$$$ Reminder-assistant removeReminder: start: " + this.reminder.id);
122 this.reminders.removeReminder(this.reminder.id);
123diff --git a/usr/palm/applications/com.palm.app.calendar/app/views/reminder/reminder-scene.html b/usr/palm/applications/com.palm.app.calendar/app/views/reminder/reminder-scene.html
124index c3ca688..66517f9 100644
125--- a/usr/palm/applications/com.palm.app.calendar/app/views/reminder/reminder-scene.html
126+++ b/usr/palm/applications/com.palm.app.calendar/app/views/reminder/reminder-scene.html
127@@ -9,6 +9,15 @@
128 <div id="reminder-event" class="palm-dashboard-text-wrapper"></div>
129 </div>
130 </div>
131+ <div class="palm-dashboard-text-container">
132+ <div class="palm-row" x-mojo-tap-highlight="momentary">
133+ <div class="palm-row-wrapper">
134+ <div id="myscroller" class="snoozeScroller" x-mojo-element="Scroller">
135+ <div id="snoozeSelector" class="dashboard-event-snooze-duration" x-mojo-element="ListSelector"></div>
136+ </div>
137+ </div>
138+ </div>
139+ </div>
140 <div id="reminder-email" style="display:none"><div x-mojo-loc="" class="button-wrapper">Contact meeting attendees</div></div>
141 <div id="reminder-dismiss"><div x-mojo-loc="" class="button-wrapper">Dismiss</div></div>
142 <div id="reminder-snooze"><div x-mojo-loc="" class="button-wrapper">Snooze</div></div>
143diff --git a/usr/palm/applications/com.palm.app.calendar/stylesheets/notification.css b/usr/palm/applications/com.palm.app.calendar/stylesheets/notification.css
144index 4a84218..a9f5fbf 100644
145--- a/usr/palm/applications/com.palm.app.calendar/stylesheets/notification.css
146+++ b/usr/palm/applications/com.palm.app.calendar/stylesheets/notification.css
147@@ -2,6 +2,10 @@
148 * Copyright 2008 Palm Inc. Confidential until public release.
149 */
150
151+/*@import url(global.css);*/
152+/*Note the version needs to be updated to match the latest mojo framework on your device.*/
153+@import url(/usr/palm/frameworks/mojo/submissions/300/stylesheets/global.css);
154+
155 .notification-panel {
156 background: #000;
157 color: #fff;
  
1diff --git a/usr/palm/applications/com.palm.app.email/app/controllers/email-dashboard-assistant.js b/usr/palm/applications/com.palm.app.email/app/controllers/email-dashboard-assistant.js
2index e8278ac..df838f4 100644
3--- a/usr/palm/applications/com.palm.app.email/app/controllers/email-dashboard-assistant.js
4+++ b/usr/palm/applications/com.palm.app.email/app/controllers/email-dashboard-assistant.js
5@@ -50,6 +50,13 @@ var EmailDashboardAssistant = Class.create({
6 target = target.up('div.email-dashboard-tap-target');
7 }
8
9+ var tDelete = false;
10+
11+ //check to see if the trash icon was tapped
12+ if ( target.hasClassName('email-dashboard-tap-target-delete')) {
13+ tDelete = true;
14+ }
15+
16 event.stopPropagation();
17 if (target) {
18 // disable the tap event to prevent keep handling user's multiple taps
19@@ -61,7 +68,15 @@ var EmailDashboardAssistant = Class.create({
20 if (accountId == "single") {
21 var folderId = target.readAttribute('folderid');
22 var messageId = target.readAttribute('messageid');
23- this.showSingleMessage(accountId, folderId, messageId);
24+
25+ if(tDelete)
26+ {
27+ this.deleteSingleMessage(accountId, folderId, messageId);
28+ }
29+ else
30+ {
31+ this.showSingleMessage(accountId, folderId, messageId);
32+ }
33 } else if (accountId == "all") {
34 this.showAccount(); // just display the account scene
35 } else {
36@@ -171,6 +186,51 @@ var EmailDashboardAssistant = Class.create({
37 });
38 },
39
40+ deleteSuccess: function(account, folder, message) {
41+ //try to sync so that we get notified of the delete and the notification gets updated
42+ Folder.syncFolder(folder, true);
43+ },
44+
45+ deleteFailure: function(account, folder, message) {
46+ //if we failed it is likely due to not getting the delete msg back from the server so we didnt remove the already deleted email notification
47+
48+ //set the ignoreClear flag so that the new email timestamp doesnt get set
49+ //this will allow for us to close the stage but when the next update comes through we will still have all the unread emails to work with
50+ this.ignoreClear = true;
51+ if (this.notificationAssistant.allInboxesOn) {
52+ this.notificationAssistant.closeEmailDashboard();
53+ }
54+ else
55+ {
56+ this.notificationAssistant.closeEmailDashboard(this.notifications[0]);
57+ }
58+
59+ //try to sync the folder to get any updates
60+ Folder.syncFolder(folder, true);
61+ },
62+
63+ deleteSingleMessage: function(account, folder, message) {
64+ var deleteReq = new Mojo.Service.Request('palm://com.palm.mail', {
65+ method: 'setDeleted',
66+ parameters: {'message':message, 'value': true },
67+ onSuccess: this.deleteSuccess.bind(this, account, folder, message),
68+ onFailure: this.deleteFailure.bind(this, account, folder, message)
69+ });
70+
71+ //So should not need to do this but many have reported the emails not deleting due to issues with synchronization after 1.3.1 update
72+ //So lets try to send the delete twice.
73+// var delet?eReq = new Mojo.Service.Request('palm://com.palm.mail', {
74+// method: 'setDeleted',
75+// parameters: {'message':message, 'value': true },
76+// onSuccess: this.deleteSuccess.bind(this, account, folder, message),
77+// onFailure: this.deleteFailure.bind(this, account, folder, message)
78+// });
79+
80+ //Since we are not consistently getting the message back from the server that something was deleted so that the notification bar
81+ //gets updated go ahead and close it if we get the message the notification bar will come back up. Truly sucks that it doesnt always give us$
82+ this.deleteFailure(account, folder, message);
83+ },
84+
85 showFolder: function(accountId, folderId, resp) {
86 this.notificationAssistant.setFolderViewedTimestamp(folderId, new Date().getTime());
87 this.notificationAssistant.clearAccount(accountId, folderId);
88diff --git a/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js b/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
89index e6af5d5..7d3578e 100644
90--- a/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
91+++ b/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
92@@ -20,7 +20,7 @@ var NotificationAssistant = Class.create({
93 // sending broadcast and dashboard updates when the user would see it because of the
94 // scene he's in.
95 this.filter = {};
96- this.newMailDeferralTimeout = 7;
97+ this.newMailDeferralTimeout = 0;//7;
98 },
99
100 windowBlurFocusHandler: function(event) {
101@@ -234,8 +234,10 @@ var NotificationAssistant = Class.create({
102
103 var folderObj;
104 var listIndex;
105+
106 for (listIndex = 0; listIndex < resp.list.length; ++listIndex) {
107 folderObj = resp.list[listIndex];
108+
109 if (this.shouldDoNotification(folderObj)) {
110 // Add to the UI model only if notify is set and the count shows there's items to add
111 if (folderObj.notify === true && folderObj.count > 0) {
112@@ -658,10 +660,10 @@ var NotificationAssistant = Class.create({
113 // displayActive and displayDimmed
114 if (data.event == 'displayOff') {
115 this.displayOff = true;
116- this.newMailDeferralTimeout = 0.5;
117+ this.newMailDeferralTimeout = 0;//0.5;
118 } else if (data.event == 'displayOn') {
119 this.displayOff = false;
120- this.newMailDeferralTimeout = 7;
121+ this.newMailDeferralTimeout = 0;//7;
122 }
123
124 Mojo.Log.info("displayUpdate displayOff", this.displayOff, "event", data.event);
125diff --git a/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/multiple-accounts-template.html b/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/multiple-accounts-template.html
126index 38c8b71..0941eb1 100644
127--- a/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/multiple-accounts-template.html
128+++ b/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/multiple-accounts-template.html
129@@ -5,6 +5,10 @@
130 </div>
131 <div class="palm-dashboard-icon email">
132 </div>
133+ </div>
134+ <div class="palm-dashboard-icon-container email-dashboard-tap-target email-dashboard-tap-target-delete" style="float: right; margin-left: 4px;" accountid="single" folderid="#{folder}" messageid="#{message}">
135+ <div class="palm-dashboard-icon delete">
136+ </div>
137 </div>
138 <div class="palm-dashboard-text-container email-dashboard-tap-target" accountid="single" folderid="#{folder}" messageid="#{message}">
139 <div class="dashboard-title">
140diff --git a/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/single-account-template.html b/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/single-account-template.html
141index 31a4683..5c4619c 100644
142--- a/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/single-account-template.html
143+++ b/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/single-account-template.html
144@@ -5,6 +5,10 @@
145 </div>
146 <div class="palm-dashboard-icon #{accountDomain}">
147 </div>
148+ </div>
149+ <div class="palm-dashboard-icon-container email-dashboard-tap-target email-dashboard-tap-target-delete" style="float: right; margin-left: 4px;" accountid="single" folderid="#{folder}" messageid="#{message}">
150+ <div class="palm-dashboard-icon delete">
151+ </div>
152 </div>
153 <div class="palm-dashboard-text-container email-dashboard-tap-target" accountid="single" folderid="#{folder}" messageid="#{message}">
154 <div class="dashboard-title">
155diff --git a/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/single-email-template.html b/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/single-email-template.html
156index 0eca342..6307dc5 100644
157--- a/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/single-email-template.html
158+++ b/usr/palm/applications/com.palm.app.email/app/views/email-dashboard/single-email-template.html
159@@ -1,7 +1,12 @@
160-<div class="dashboard-notification-module single">
161+<div class="dashboard-notification-module">
162 <div class="palm-dashboard-icon-container email-dashboard-tap-target" accountid="#{account}">
163 <div class="palm-dashboard-icon #{accountDomain}">
164 </div>
165+ </div>
166+ <div class="palm-dashboard-icon-container email-dashboard-tap-target email-dashboard-tap-target-delete" style="float: right; margin-left: 4px;"
167+ accountid="single" folderid="#{folder}" messageid="#{message}">
168+ <div class="palm-dashboard-icon delete">
169+ </div>
170 </div>
171 <div class="palm-dashboard-text-container email-dashboard-tap-target" accountid="single" folderid="#{folder}" messageid="#{message}">
172 <div class="dashboard-title">
173diff --git a/usr/palm/applications/com.palm.app.email/stylesheets/notifications.css b/usr/palm/applications/com.palm.app.email/stylesheets/notifications.css
174index 5ba21eb..fdf9fa9 100644
175--- a/usr/palm/applications/com.palm.app.email/stylesheets/notifications.css
176+++ b/usr/palm/applications/com.palm.app.email/stylesheets/notifications.css
177@@ -78,3 +78,9 @@ Copyright 2009 Palm, Inc. All rights reserved.
178 .palm-dashboard-icon.gmail { background: url(../images/notification-large-gmail.png) center left no-repeat; }
179 .palm-dashboard-icon.yahoo { background: url(../images/notification-large-yahoo.png) center left no-repeat; }
180 .palm-dashboard-icon.aol { background: url(../images/notification-large-aol.png) center left no-repeat; }
181+
182+/*To support delete of email from notification*/
183+.palm-dashboard-icon.delete { background: url(../images/icon_trash.png) center center no-repeat; }
184+
185+.email-dashboard-tap-target-delete {
186+}
  
1diff --git a/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js b/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
2index e6af5d5..1837b23 100644
3--- a/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
4+++ b/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
5@@ -251,6 +251,11 @@ var NotificationAssistant = Class.create({
6 }
7
8 if (playSoundParams.length > 0) {
9+ this.serviceRequest = new Mojo.Service.Request("palm://com.palm.vibrate", {
10+ method: 'vibrate',
11+ parameters: { 'period': 0,
12+ 'duration': 1500 }
13+ });
14 this.playNotificationSounds(playSoundParams);
15 }
16
  
1diff --git a/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js b/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
2index e6af5d5..7a7911b 100644
3--- a/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
4+++ b/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
5@@ -251,6 +251,11 @@ var NotificationAssistant = Class.create({
6 }
7
8 if (playSoundParams.length > 0) {
9+ this.serviceRequest = new Mojo.Service.Request("palm://com.palm.vibrate", {
10+ method: 'vibrate',
11+ parameters: { 'period': 0,
12+ 'duration': 1000 }
13+ });
14 this.playNotificationSounds(playSoundParams);
15 }
16
  
1diff --git a/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js b/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
2index e6af5d5..7eb1e56 100644
3--- a/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
4+++ b/usr/palm/applications/com.palm.app.email/app/controllers/notification-assistant.js
5@@ -251,6 +251,11 @@ var NotificationAssistant = Class.create({
6 }
7
8 if (playSoundParams.length > 0) {
9+ this.serviceRequest = new Mojo.Service.Request("palm://com.palm.vibrate", {
10+ method: 'vibrate',
11+ parameters: { 'period': 0,
12+ 'duration': 2000 }
13+ });
14 this.playNotificationSounds(playSoundParams);
15 }
16
  
1diff --git a/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js b/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
2index 84e13e3..ad7a496 100644
3--- a/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
4+++ b/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
5@@ -117,7 +117,7 @@ var ChatviewAssistant = Class.create({
6 this.handleCancelAttachment = this.resetTextBox.bind(this, false);
7 this.handleTextAreaChange = this.handleTextAreaChange.bind(this);
8 this.handleTextAreaKeyDown = this.handleTextAreaKeyDown.bind(this);
9- this.handleTextAreaKeyUp = this.handleTextAreaKeyUp.bind(this);
10+ // this.handleTextAreaKeyUp = this.handleTextAreaKeyUp.bind(this);
11 this.handleScreenStateChange = this.handleScreenStateChange.bind(this);
12 this.handleStageFocus = this.handleStageFocus.bind(this);
13 this.handleStageBlur = this.handleStageBlur.bind(this);
14@@ -134,7 +134,7 @@ var ChatviewAssistant = Class.create({
15 hintText: $L('Enter message here...'),
16 multiline: true,
17 focus: false,
18- enterSubmits: true,
19+ enterSubmits: false,
20 textFieldName: "messageTextElement",
21 className: " ",
22 changeOnKeyPress: true
23@@ -182,7 +182,7 @@ var ChatviewAssistant = Class.create({
24 this.cancelAttachment.observe(Mojo.Event.tap, this.handleCancelAttachment);
25
26 this.messageTextElement.observe('keydown', this.handleTextAreaKeyDown);
27- this.messageTextElement.observe('keyup', this.handleTextAreaKeyUp);
28+ // this.messageTextElement.observe('keyup', this.handleTextAreaKeyUp);
29 this.messageTextWidget.observe(Mojo.Event.propertyChange, this.handleTextAreaChange);
30
31 // observe keydown/keyup on the text field WIDGET to handle height changes due to text forcing it to resize
32@@ -247,7 +247,7 @@ var ChatviewAssistant = Class.create({
33 this.messageTextWidget.stopObserving('keyup', this.handleTextFieldResize);
34 this.messageTextWidget.stopObserving(Mojo.Event.propertyChange, this.handleTextAreaChange);
35 this.messageTextElement.stopObserving('keydown', this.handleTextAreaKeyDown);
36- this.messageTextElement.stopObserving('keyup', this.handleTextAreaKeyUp);
37+ // this.messageTextElement.stopObserving('keyup', this.handleTextAreaKeyUp);
38 this.Messaging.DisplayState.stopObserving(this.handleScreenStateChange);
39 this.controller.document.removeEventListener(Mojo.Event.stageActivate, this.handleStageFocus, false);
40 this.controller.document.removeEventListener(Mojo.Event.stageDeactivate, this.handleStageBlur, false);
41@@ -2371,7 +2371,7 @@ var ChatviewAssistant = Class.create({
42 }
43 },
44
45- handleTextAreaKeyUp: function(event) {
46+ /* handleTextAreaKeyUp: function(event) {
47 if (event && Mojo.Char.isEnterKey(event.keyCode)) {
48 this.considerForSend();
49 Event.stop(event);
50@@ -2379,7 +2379,7 @@ var ChatviewAssistant = Class.create({
51 // Remove highlight that was added on keydown.
52 this.sendButton.removeClassName('selected');
53 }
54- },
55+ }, */
56
57 handleTextAreaChange: function() {
58 if (this.messageTextElement && this.messageTextElement.value == '') {
59diff --git a/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js b/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
60index 8f9b17e..e0fddef 100644
61--- a/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
62+++ b/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
63@@ -80,7 +80,7 @@ var ComposeAssistant = Class.create({
64 this.considerForSend = this.considerForSend.bind(this);
65 this.attachFilePicker = this.attachFilePicker.bind(this);
66 this.handleTextAreaChange = this.handleTextAreaChange.bind(this);
67- this.handleTextAreaKeyUp = this.handleTextAreaKeyUp.bind(this);
68+ // this.handleTextAreaKeyUp = this.handleTextAreaKeyUp.bind(this);
69 this.handleCancelAttachment = this.resetTextBox.bind(this,false);
70 this.handleRecipientsChanged = this.handleRecipientsChanged.bind(this);
71
72@@ -120,7 +120,7 @@ var ComposeAssistant = Class.create({
73 hintText: $L('Enter message here...'),
74 multiline: true,
75 focus: false,
76- enterSubmits: true,
77+ enterSubmits: false,
78 requiresEnterKey: true,
79 modelProperty: "value",
80 changeOnKeyPress: true
81@@ -147,7 +147,7 @@ var ComposeAssistant = Class.create({
82 // });
83
84
85- this.messageTextElement.observe('keyup', this.handleTextAreaKeyUp);
86+ // this.messageTextElement.observe('keyup', this.handleTextAreaKeyUp);
87 this.messageTextWidget.observe(Mojo.Event.propertyChange, this.handleTextAreaChange);
88
89 // Observe add/delete to the addressing widget
90@@ -326,12 +326,12 @@ var ComposeAssistant = Class.create({
91 }
92 },
93
94- handleTextAreaKeyUp: function(event) {
95+ /* handleTextAreaKeyUp: function(event) {
96 if (event && Mojo.Char.isEnterKey(event.keyCode)) {
97 this.considerForSend();
98 Event.stop(event);
99 }
100- },
101+ }, */
102
103 handleTextAreaChange: function() {
104 if (this.messageTextElement && this.messageTextElement.value == '') {
105@@ -462,7 +462,7 @@ var ComposeAssistant = Class.create({
106 that.controller.stopListening('searchList',event,that.handleRecipientsChanged);
107 });
108
109- this.messageTextElement.stopObserving('keyup', this.handleTextAreaKeyUp);
110+ // this.messageTextElement.stopObserving('keyup', this.handleTextAreaKeyUp);
111 this.messageTextWidget.stopObserving(Mojo.Event.propertyChange, this.handleTextAreaChange);
112
113 this.characterCounter.destroy();
  
1diff --git a/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js b/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
2index 84e13e3..9442d92 100644
3--- a/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
4+++ b/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
5@@ -62,11 +62,12 @@ var ChatviewAssistant = Class.create({
6 };
7 this.messageTemplatePath = 'chatview/message/';
8
9- this.appMenuAddPictureItem = {
10+ /* this.appMenuAddPictureItem = {
11 label: $L('Add picture...'),
12 command: 'addPicture',
13 disabled: false
14- };
15+ }; */
16+ this.appMenuAddPictureItem = {label: $L('Add picture...'), shortcut: 'p', command:'addPicture', enabled:true};
17
18 this.appMenuBlockUsernameItem = {
19 label: $L('Block this person'),
20@@ -334,6 +335,8 @@ var ChatviewAssistant = Class.create({
21 } else if (event.command === 'copyall') {
22 this.copyConversationToClipboard();
23 }
24+ } else if (event.type == Mojo.Event.forward) {
25+ this.considerForSend();
26 } else if (event.type === Mojo.Event.back) {
27 event.stop();
28 this.popAndRevealListView();
29diff --git a/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js b/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
30index 8f9b17e..07122fb 100644
31--- a/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
32+++ b/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
33@@ -15,7 +15,7 @@ var ComposeAssistant = Class.create({
34 this.toggleDebugMenu = listviewSceneAssistant.toggleDebugMenu.bind(listviewSceneAssistant,true);
35 }
36
37- this.appMenuAddPictureItem = {label: $L('Add picture...'), command:'addPicture', enabled:true};
38+ this.appMenuAddPictureItem = {label: $L('Add picture...'), shortcut: 'p', command:'addPicture', enabled:true};
39
40 this.appMenuAttrs = {omitDefaultItems: true};
41 this.appMenuModel = { visible:true, label: $L('Chat view menu'), items: [Mojo.Menu.editItem,this.appMenuAddPictureItem,Mojo.Menu.helpItem]};
42@@ -484,6 +484,8 @@ var ComposeAssistant = Class.create({
43 this.attachFilePicker();
44 event.stop();
45 }
46+ } else if (event.type == Mojo.Event.forward) {
47+ this.considerForSend();
48 } else if(event.type == Mojo.Event.back) {
49 if (this.launchedAsForward === undefined) {
50 event.stop();
51diff --git a/usr/palm/applications/com.palm.app.messaging/app/views/chatview/chatview-scene.html b/usr/palm/applications/com.palm.app.messaging/app/views/chatview/chatview-scene.html
52index d0d8745..7576a6e 100644
53--- a/usr/palm/applications/com.palm.app.messaging/app/views/chatview/chatview-scene.html
54+++ b/usr/palm/applications/com.palm.app.messaging/app/views/chatview/chatview-scene.html
55@@ -27,10 +27,10 @@
56 </div>
57 <img id="attachmentImage" src=""/>
58 </div>
59- <div id="ActionButton" class="icon right empty">
60+ <div id="ActionButton" class="icon right empty" style="display:none;">
61 <div id="AttachButton" class="stuck attachButton" style="display:none;" x-mojo-tap-highlight="momentary">
62 </div>
63- <div id="SendButton" class="stuck sendButton" x-mojo-tap-highlight="immediate">
64+ <div id="SendButton" class="stuck sendButton" style="display:none;" x-mojo-tap-highlight="immediate">
65 <div id="segmentCounterContainer">
66 <div id="segmentCounter">
67 </div>
68diff --git a/usr/palm/applications/com.palm.app.messaging/app/views/compose/compose-scene.html b/usr/palm/applications/com.palm.app.messaging/app/views/compose/compose-scene.html
69index 30daa88..d1e2948 100644
70--- a/usr/palm/applications/com.palm.app.messaging/app/views/compose/compose-scene.html
71+++ b/usr/palm/applications/com.palm.app.messaging/app/views/compose/compose-scene.html
72@@ -11,10 +11,10 @@
73 </div>
74 <img id="attachmentImage" src=""/>
75 </div>
76- <div id="ActionButton" class="icon right empty">
77+ <div id="ActionButton" class="icon right empty" style="display:none;">
78 <div id="AttachButton" class="stuck attachButton" x-mojo-tap-highlight="momentary">
79 </div>
80- <div id="SendButton" class="stuck sendButton" x-mojo-tap-highlight="momentary">
81+ <div id="SendButton" class="stuck sendButton" style="display:none;" x-mojo-tap-highlight="momentary">
82 <div id="segmentCounterContainer">
83 <div id="segmentCounter">
84 </div>
  
1This patch makes multiple changes to the PDF View app to increase its usability:
2- Remove title bar.
3- Make footer buttons translucent.
4- Make page number transparent except when selected.
5- Add button to rotate view between portrait and landscape.
6- Add a "back" button to jump to previous location in a document.
7- Keep track of rotation of and location in a document for 30 days and restore them when reloading the document.
8Index: /usr/palm/applications/com.palm.app.pdfviewer/app/controllers/document-assistant.js
9===================================================================
10--- .orig/usr/palm/applications/com.palm.app.pdfviewer/app/controllers/document-assistant.js
11+++ /usr/palm/applications/com.palm.app.pdfviewer/app/controllers/document-assistant.js
1diff --git a/usr/palm/applications/com.palm.app.pdfviewer/app/controllers/document-assistant.js b/usr/palm/applications/com.palm.app.pdfviewer/app/controllers/document-assistant.js
2index 708a648..bfb8e84 100644
3--- a/usr/palm/applications/com.palm.app.pdfviewer/app/controllers/document-assistant.js
4+++ b/usr/palm/applications/com.palm.app.pdfviewer/app/controllers/document-assistant.js
125@@ -16,13 +16,19 @@ var DocumentAssistant = Class.create({
136 ]},
14
7
158 cmdMenuModel: { visible: false, items: [
169+ { items: [
1710+ { icon:'sync', command:'rotate-cmd' }
2121+ { icon:'refresh', command:'last-cmd' }
2222+ ]}
2323 ]},
24
24
2525 numericMap: {
2626@@ -43,6 +49,13 @@ var DocumentAssistant = Class.create({
2727
3535+ currentOrientation: this.currentOrientation
3636+ }, time);
3737 },
38
38
3939 initialize: function(parameters) {
4040@@ -52,6 +65,7 @@ var DocumentAssistant = Class.create({
4141 this.document_noext = undefined;
7272
7373 try {
7474
75+ // Force landscape view.
75+ // Restore old view.
7676+ this.controller.stageController.setWindowOrientation(this.currentOrientation);
7777+
7878 this.spinnerRunning = false;
79
79
8080 // Set up the view buttons (header)
81- var viewMenuModel = { visible: false, items: [ { template: 'document/header_bar' } ] };
82+ /*var viewMenuModel = { visible: false, items: [ { template: 'document/header_bar' } ] };
81- var viewMenuModel = { visible: false, items: [ { template: 'document/header_bar' } ] };
82+ /*var viewMenuModel = { visible: false, items: [ { template: 'document/header_bar' } ] };
8383 this.controller.setupWidget(Mojo.Menu.viewMenu,
8484 {menuClass:'no-fade'},
8585- viewMenuModel);
8686+ viewMenuModel);*/
8787
88 // Set up the command buttons (footer)
88 // Set up the command buttons (footer)
8989 this.controller.setupWidget(Mojo.Menu.commandMenu,
90@@ -221,7 +247,7 @@ var DocumentAssistant = Class.create({
91 orientationChanged: function(orientation) {
92
93 return;
94- if (this.currentOrientation === orientation)
95+ if (this.currentOrientation === orientation)
96 {
97 return;
98 }
99@@ -240,6 +266,27 @@ var DocumentAssistant = Class.create({
100
90@@ -241,6 +267,27 @@ var DocumentAssistant = Class.create({
91 */
10192 },
10293
10394+ rotateView: function() {
113113+ },
114114+
115115 NeedPassword: function(docid) {
116
116
117117 this.document_id = docid;
118@@ -331,8 +378,8 @@ var DocumentAssistant = Class.create({
119
118@@ -332,8 +379,8 @@ var DocumentAssistant = Class.create({
119
120120 if (this.currentpage !== undefined) {
121
121
122122- this.cmdMenuModel.items[1].items[0].disabled = (this.currentpage == 1);
123123- this.cmdMenuModel.items[1].items[2].disabled = (this.currentpage == this.pagecount);
124124+ this.cmdMenuModel.items[2].items[0].disabled = (this.currentpage == 1);
125125+ this.cmdMenuModel.items[2].items[2].disabled = (this.currentpage == this.pagecount);
126126 this.controller.modelChanged(this.cmdMenuModel);
127
127
128128 // rebind key event
129@@ -373,6 +420,13 @@ var DocumentAssistant = Class.create({
129@@ -375,6 +422,13 @@ var DocumentAssistant = Class.create({
130130 this.JumpToPage( this.currentpage );
131131 },
132132
140140 forceFootChange: function () {
141141
142142 var goto_page = parseInt(this.controller.get('page_foot_cur_ent').value, 10);
143@@ -460,7 +514,7 @@ var DocumentAssistant = Class.create({
144
143@@ -462,7 +516,7 @@ var DocumentAssistant = Class.create({
144
145145 // Set up the command buttons (footer)
146 var page_len = (this.pagecount+'').length
146 var page_len = (this.pagecount+'').length;
147147- this.cmdMenuModel.items[1].items[1].width = 60 + (page_len * 15);
148148+ this.cmdMenuModel.items[2].items[1].width = 60 + (page_len * 15);
149 this.controller.modelChanged(this.cmdMenuModel);
150
149 this.controller.modelChanged(this.cmdMenuModel);
150
151151 this.controller.setMenuVisible(Mojo.Menu.commandMenu, true);
152@@ -565,6 +619,7 @@ var DocumentAssistant = Class.create({
153
152@@ -568,6 +622,7 @@ var DocumentAssistant = Class.create({
153
154154 if (e.keyCode == Mojo.Char.enter) {
155155 var goto_page = parseInt(this.controller.get('page_foot_cur_ent').value, 10);
156156+ this.lastjumpsource = this.currentpage;
157157 this.JumpToPage(goto_page);
158158 this.showFootPageOf();
159159 }
160@@ -773,7 +828,7 @@ var DocumentAssistant = Class.create({
160@@ -783,7 +838,7 @@ var DocumentAssistant = Class.create({
161161 var splittext = this.filename.split('/');
162162 this.document_name = splittext[splittext.length-1];
163163 this.document_noext = this.document_name.substr(0, this.document_name.indexOf('.pdf'));
166166 new_obj.eventListener = this;
167167
168168 this.adapter = new_obj;
169@@ -850,6 +905,14 @@ var DocumentAssistant = Class.create({
169@@ -860,6 +915,14 @@ var DocumentAssistant = Class.create({
170170 this.showFootPageOf();
171171 break;
172
172
173173+ case 'last-cmd':
174174+ this.goToLastJumpSource();
175175+ break;
181181 case 'pdf-outline':
182182
183183 // Create the PDF outline/bookmarks
184@@ -909,7 +972,7 @@ var DocumentAssistant = Class.create({
184@@ -919,7 +982,7 @@ var DocumentAssistant = Class.create({
185185 var menuAssistant = this.controller._menu.assistant;
186186 menuAssistant.viewSpacerHeight = 0;
187187
190190 }
191191 },
192192
193@@ -1271,7 +1334,7 @@ SaveAsDialogAssistant = Class.create({
193@@ -1281,7 +1344,7 @@ SaveAsDialogAssistant = Class.create({
194194 this.documentAssistant.document_name = save_input;
195195 this.documentAssistant.document_noext = this.documentAssistant.document_name.substr(0, this.documentAssistant.document_name.indexOf('.pdf'));
196196
199199
200200 }
201201 catch(e)
202Index: /usr/palm/applications/com.palm.app.pdfviewer/app/views/document/command_bar.html
203===================================================================
204--- .orig/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/command_bar.html
205+++ /usr/palm/applications/com.palm.app.pdfviewer/app/views/document/command_bar.html
202diff --git a/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/command_bar.html b/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/command_bar.html
203index 8fe00ff..96851f0 100644
204--- a/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/command_bar.html
205+++ b/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/command_bar.html
206206@@ -6,7 +6,7 @@
207207 </div>
208208 <div id="page_foot_ent" class="foot-page" style="display: none;">
213213+ <span id="page_foot_cnt_ent" class="foot-page-cnt-inp"></span>
214214 </div>
215215 </div>
216Index: /usr/palm/applications/com.palm.app.pdfviewer/app/views/document/document-scene.html
217===================================================================
218--- .orig/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/document-scene.html
219+++ /usr/palm/applications/com.palm.app.pdfviewer/app/views/document/document-scene.html
216diff --git a/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/document-scene.html b/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/document-scene.html
217index 3e95f8b..25d9402 100644
218--- a/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/document-scene.html
219+++ b/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/document-scene.html
220220@@ -1,4 +1,4 @@
221221-<div id="header" style="height:56px;">
222222+<div id="header" style="height:0px;">
223223 <div id="findField" name="findField" x-mojo-element="Find"> </div>
224224 </div>
225225
226Index: /usr/palm/applications/com.palm.app.pdfviewer/app/views/document/header_bar.html
227===================================================================
228--- .orig/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/header_bar.html
229+++ /usr/palm/applications/com.palm.app.pdfviewer/app/views/document/header_bar.html
226diff --git a/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/header_bar.html b/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/header_bar.html
227index cdb2766..0a5480f 100644
228--- a/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/header_bar.html
229+++ b/usr/palm/applications/com.palm.app.pdfviewer/app/views/document/header_bar.html
230230@@ -1,4 +1,3 @@
231231 <div id="topHead" class="palm-header left">
232232 <div id="my_spinner" x-mojo-element="Spinner"> </div>
233233- <div id="documentname" x-mojo-loc="" class="truncating-text"></div>
234234 </div>
235Index: /usr/palm/applications/com.palm.app.pdfviewer/stylesheets/pdf-viewer.css
236===================================================================
237--- .orig/usr/palm/applications/com.palm.app.pdfviewer/stylesheets/pdf-viewer.css
238+++ /usr/palm/applications/com.palm.app.pdfviewer/stylesheets/pdf-viewer.css
235diff --git a/usr/palm/applications/com.palm.app.pdfviewer/stylesheets/pdf-viewer.css b/usr/palm/applications/com.palm.app.pdfviewer/stylesheets/pdf-viewer.css
236index 572f564..8872a4d 100644
237--- a/usr/palm/applications/com.palm.app.pdfviewer/stylesheets/pdf-viewer.css
238+++ b/usr/palm/applications/com.palm.app.pdfviewer/stylesheets/pdf-viewer.css
239239@@ -166,7 +166,7 @@ div.foot-page
240240
241241 span.foot-page-cur
  
1diff --git a/usr/lib/luna/system/luna-systemui/app/controllers/devicemenu-assistant.js b/usr/lib/luna/system/luna-systemui/app/controllers/devicemenu-assistant.js
2index 335a73c..f1f577f 100644
3--- a/usr/lib/luna/system/luna-systemui/app/controllers/devicemenu-assistant.js
4+++ b/usr/lib/luna/system/luna-systemui/app/controllers/devicemenu-assistant.js
5@@ -32,8 +32,6 @@ var DevicemenuAssistant = Class.create({
6 //Add a touchable row class
7 this.controller.get('palm-device-menu').addClassName('palm-touch-rows-'+Mojo.Environment.DeviceInfo.touchableRows);
8
9- var date = new Date();
10- this.controller.get('dm_date').innerHTML = Mojo.Format.formatDate(date,{date:'EEE '}) + Mojo.Format.formatDate(date,{date:'long'});
11 var msg = $L("Battery: #{batlevel}");
12 this.controller.get('dm_battery').innerHTML = new Template(msg).evaluate({"batlevel": Mojo.Format.formatPercent(this.barAssistant.getBatteryLevel())});
13
14@@ -1071,8 +1069,6 @@ var DevicemenuAssistant = Class.create({
15 }
16 else {
17 this.isVisible = true;
18- var date = new Date();
19- this.controller.get('dm_date').innerHTML = Mojo.Format.formatDate(date,{date:'EEE '}) + Mojo.Format.formatDate(date,{date:'long'});
20
21 if(this.turningOnBtRadio) {
22 this.btspinnerModel.spinning = true;
23diff --git a/usr/lib/luna/system/luna-systemui/app/views/devicemenu/devicemenu-scene.html b/usr/lib/luna/system/luna-systemui/app/views/devicemenu/devicemenu-scene.html
24index d153a8d..351a500 100644
25--- a/usr/lib/luna/system/luna-systemui/app/views/devicemenu/devicemenu-scene.html
26+++ b/usr/lib/luna/system/luna-systemui/app/views/devicemenu/devicemenu-scene.html
27@@ -14,13 +14,6 @@
28 <div id="devicescroller" class="palm-popup-content" x-mojo-element="Scroller">
29 <div class="palm-list">
30
31- <div class="palm-row first"><div class="palm-row-wrapper">
32- <div id="dm_date" class="title dim"></div>
33- </div></div>
34-
35- <div class="palm-section-divider">
36- </div>
37-
38 <div class="palm-row"><div class="palm-row-wrapper">
39 <div id="dm_battery" class="title dim"></div>
40 </div></div>