Commit 35b5785c00cf492c2767768b4759e91053dd032d

  • avatar
  • egaudet
  • Fri Oct 02 05:22:03 CEST 2009
Added patches supplied by fritos1406 from precentral forums
  
1Index: /usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
2===================================================================
3--- .orig/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
4+++ /usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
5@@ -2013,7 +2013,7 @@ var ChatviewAssistant = Class.create({
6 attachFilePicker: function(event){
7 var params = {
8 actionType: 'attach',
9- kinds: ['image'], // TODO: integrate other media types
10+ kinds: ['image','audio','video'], // TODO: integrate other media types
11 defaultKind: 'image',
12 onSelect: this.handleFilePickerSelect.bind(this)
13 };
14Index: /usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
15===================================================================
16--- .orig/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
17+++ /usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
18@@ -324,7 +324,7 @@ var ComposeAssistant = Class.create({
19 attachFilePicker: function(event) {
20 var params = {
21 actionType: 'attach',
22- kinds: ['image'], // TODO: integrate other media types
23+ kinds: ['image','audio','video'], // TODO: integrate other media types
24 defaultKind: 'image',
25 onSelect: this.handleFilePickerSelect.bind(this)
26 };
  
1Index: /usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
2===================================================================
3--- .orig/usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
4+++ /usr/palm/applications/com.palm.app.messaging/app/controllers/compose-assistant.js
5@@ -76,7 +76,7 @@ var ComposeAssistant = Class.create({
6
7 this.searchList = {
8 "property": "to$A",
9- "includeEmails": false,
10+ "includeEmails": true,
11 "includePhones": true,
12 "includeIMs": true,
13 "includeShortCode": true,
  
1Index: /usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
2===================================================================
3--- .orig/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
4+++ /usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
5@@ -1837,7 +1837,7 @@ var ChatviewAssistant = Class.create({
6 // This will sometimes be an object because we pass this method directly when we observe
7 // Mojo.Event.tap on the send button
8 if(forceSendIfOffline && forceSendIfOffline != true)
9- forceSendIfOffline = false;
10+ forceSendIfOffline = true;
11
12 // prevent blank messages from going through
13 var message = this.messageTextElement.value.strip();
  
1Index: /usr/palm/applications/com.palm.app.messaging/app/views/listview/buddyList-row.html
2===================================================================
3--- .orig/usr/palm/applications/com.palm.app.messaging/app/views/listview/buddyList-row.html
4+++ /usr/palm/applications/com.palm.app.messaging/app/views/listview/buddyList-row.html
5@@ -8,7 +8,7 @@
6 <div class="unread-count-container">
7 <div class="unread-count-wrapper">#{unreadCount}</div>
8 </div>
9- <div class="truncating-text custom-message">#{-customMessage}</div>
10+ <div class="custom-message">#{-customMessage}</div>
11 </div>
12 </div>
13 </div>
14\ No newline at end of file
15Index: /usr/palm/applications/com.palm.app.messaging/stylesheets/messaging.css
16===================================================================
17--- .orig/usr/palm/applications/com.palm.app.messaging/stylesheets/messaging.css
18+++ /usr/palm/applications/com.palm.app.messaging/stylesheets/messaging.css
19@@ -164,7 +164,7 @@ img.avatar-overlay {
20 }
21
22 .buddy-list .palm-row {
23- height: 60px;
24+ height: auto;
25 }
26
27 .buddy-list .title {
  
1Updated for WebOS 1.1.0
2This mod will allow you to forward a message by simply tapping on
3the text of a message in the chat view. It does not interfere with
4the current attachment-tapping behavior. Tapping an attached image
5ask if you want to forward. Selecting "No" will still prompt for a
6save, etc., while selecting "Yes" will open a the compose dialog,
7with the message and attachments pre-populated.
8
9Submitted by JackieRipper with modifications by Atlanta
101Index: /usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
112===================================================================
123--- .orig/usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
134+++ /usr/palm/applications/com.palm.app.messaging/app/controllers/chatview-assistant.js
14@@ -1482,7 +1482,16 @@ var ChatviewAssistant = Class.create({
15
16 var mmsImageTarget = MessagingUtils.getClassUpChain(eventTarget,'MMSImageObject');
17 if(mmsImageTarget) {
5@@ -1541,59 +1541,104 @@ var ChatviewAssistant = Class.create({
6 MessagingMojoService.deleteMessage(this.controller, event.item.messageId);
7 },
8
9- handleMessageTap: function(event){
10- var eventTarget = this.controller.get(event.originalEvent.target);
11-
12- var mmsImageTarget = MessagingUtils.getClassUpChain(eventTarget,'MMSImageObject');
13- if(mmsImageTarget) {
1814- this.controller.stageController.pushScene('imageview', mmsImageTarget.getAttribute('originalSrc'));
19+ var imagePath = mmsImageTarget.getAttribute('originalSrc');
20+ this.controller.showAlertDialog({
21+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, imagePath);} else {this.controller.stageController.pushScene('imageview', imagePath);}},
22+ title: $L("Forward Message"),
23+ message: $L("Do you want to forward this message?"),
24+ choices:[
25+ {label:$L("Yes"), value:"forward", type:"affirmative"},
26+ {label:$L("No"), value:"", type:"negative"}
27+ ]
28+ });
29 return;
30 }
15- return;
16- }
17+ handleMessageTap: function(event){
18+ var eventTarget = this.controller.get(event.originalEvent.target);
3119
32@@ -1499,23 +1508,59 @@ var ChatviewAssistant = Class.create({
33 target: videoPath,
34 title: videoName
35 };
20- var mmsVideoTarget = MessagingUtils.getClassUpChain(eventTarget,'mms-video');
21- if(mmsVideoTarget) {
22- var videoPath = mmsVideoTarget.getAttribute('filePath');
23- var videoName = mmsVideoTarget.getAttribute('fileInfo');
24-
25- var args = {
26- appId: "com.palm.app.videoplayer",
27- name: "nowplaying"
28- };
29- var params = {
30- target: videoPath,
31- title: videoName
32- };
3633- this.controller.stageController.pushScene(args, params);
37+ this.controller.showAlertDialog({
38+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, videoPath);} else {this.controller.stageController.pushScene(args, params);}},
39+ title: $L("Forward Message"),
40+ message: $L("Do you want to forward this message?"),
41+ choices:[
42+ {label:$L("Yes"), value:"forward", type:"affirmative"},
43+ {label:$L("No"), value:"", type:"negative"}
44+ ]
45+ });
46 return;
47 }
48
49 var mmsVcardTarget = MessagingUtils.getClassUpChain(eventTarget,'mms-vcard');
50 if(mmsVcardTarget) {
51 var filePath = mmsVcardTarget.getAttribute('filePath');
52- this.controller.stageController.pushScene('mmsTextAttachment', filePath);
53+ this.controller.showAlertDialog({
54+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, filePath);} else {this.controller.stageController.pushScene('mmsTextAttachment', filePath);}},
55+ title: $L("Forward Message"),
56+ message: $L("Do you want to forward this message?"),
57+ choices:[
58+ {label:$L("Yes"), value:"forward", type:"affirmative"},
59+ {label:$L("No"), value:"", type:"negative"}
60+ ]
61+ });
62 return;
63 }
64
65 var mmsVcalTarget = MessagingUtils.getClassUpChain(eventTarget,'mms-vcal');
66 if(mmsVcalTarget) {
67 var filePath = mmsVcalTarget.getAttribute('filePath');
68- this.controller.stageController.pushScene('mmsTextAttachment', filePath);
69+ this.controller.showAlertDialog({
70+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, filePath);} else {this.controller.stageController.pushScene('mmsTextAttachment', filePath);}},
71+ title: $L("Forward Message"),
72+ message: $L("Do you want to forward this message?"),
73+ choices:[
74+ {label:$L("Yes"), value:"forward", type:"affirmative"},
75+ {label:$L("No"), value:"", type:"negative"}
76+ ]
77+ });
78 return;
79 }
34- return;
35- }
36-
37- var mmsVcardTarget = MessagingUtils.getClassUpChain(eventTarget,'mms-vcard');
38- if(mmsVcardTarget) {
39- var filePath = mmsVcardTarget.getAttribute('filePath');
40- MessagingMojoService.launchFile(this.controller, 'text/x-vcard', 'file://'+filePath);
41- return;
42- }
43-
44- var mmsVcalTarget = MessagingUtils.getClassUpChain(eventTarget,'mms-vcal');
45- if(mmsVcalTarget) {
46- var filePath = mmsVcalTarget.getAttribute('filePath');
47- MessagingMojoService.launchFile(this.controller, 'text/x-vcalendar', 'file://'+filePath);
48- return;
49- }
50-
51- MessagingUtils.simpleListClick(this.controller.get(event.originalEvent.target), "chatRow", function(targetRow){
52- var messageData = {
53- errorCode: targetRow.getAttribute("errorCode"),
54- status: targetRow.getAttribute("status"),
55- messageId: targetRow.getAttribute("messageId"),
56- flags: targetRow.getAttribute("flags"),
57- messageType: targetRow.getAttribute("messageType")
58- };
59-
60- MessagingMojoService.getMessageErrorInfo(this.controller, messageData.messageId, messageData.flags, this.handleMessageErrorPopup.bind(this,messageData));
61+ var mmsImageTarget = MessagingUtils.getClassUpChain(eventTarget,'MMSImageObject');
62+ if(mmsImageTarget) {
63+ var imagePath = mmsImageTarget.getAttribute('originalSrc');
64+ this.controller.showAlertDialog({
65+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, imagePath);} else {this.controller.stageController.pushScene('imageview', imagePath);}},
66+ title: $L("Forward Message"),
67+ message: $L("Do you want to forward this message?"),
68+ choices:[
69+ {label:$L("Yes"), value:"forward", type:"affirmative"},
70+ {label:$L("No"), value:"", type:"negative"}
71+ ]
72+ });
73+ return;
74+ }
75
76- }.bind(this), false);
77- },
78+ var mmsVideoTarget = MessagingUtils.getClassUpChain(eventTarget,'mms-video');
79+ if(mmsVideoTarget) {
80+ var videoPath = mmsVideoTarget.getAttribute('filePath');
81+ var videoName = mmsVideoTarget.getAttribute('fileInfo');
8082+
81+ if (!mmsImageTarget && !mmsVideoTarget && !mmsVcardTarget && !mmsVcalTarget) {
82+ this.controller.showAlertDialog({
83+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, '');}},
84+ title: $L("Forward Message"),
85+ message: $L("Do you want to forward this message?"),
86+ choices:[
87+ {label:$L("Yes"), value:"forward", type:"affirmative"},
88+ {label:$L("No"), value:"", type:"negative"}
89+ ]
90+ });
91+ }
92
93 MessagingUtils.simpleListClick(this.controller.get(event.originalEvent.target), "chatRow", function(targetRow){
94 var messageData = {
95@@ -2115,4 +2160,4 @@ var ChatviewAssistant = Class.create({
96 this.controller.sceneScroller.mojo.revealBottom();
97 this.controller.sceneScroller.mojo.revealBottom();
98 }
99-});
100\ No newline at end of file
101+});
83+ var args = {
84+ appId: "com.palm.app.videoplayer",
85+ name: "nowplaying"
86+ };
87+ var params = {
88+ target: videoPath,
89+ title: videoName
90+ };
91+ this.controller.showAlertDialog({
92+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, videoPath);} else {this.controller.stageController.pushScene(args, params);}},
93+ title: $L("Forward Message"),
94+ message: $L("Do you want to forward this message?"),
95+ choices:[
96+ {label:$L("Yes"), value:"forward", type:"affirmative"},
97+ {label:$L("No"), value:"", type:"negative"}
98+ ]
99+ });
100+ return;
101+ }
102+
103+ var mmsVcardTarget = MessagingUtils.getClassUpChain(eventTarget,'mms-vcard');
104+ if(mmsVcardTarget) {
105+ var filePath = mmsVcardTarget.getAttribute('filePath');
106+ this.controller.showAlertDialog({
107+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, filePath);} else {this.controller.stageController.pushScene('mmsTextAttachment', filePath);}},
108+ title: $L("Forward Message"),
109+ message: $L("Do you want to forward this message?"),
110+ choices:[
111+ {label:$L("Yes"), value:"forward", type:"affirmative"},
112+ {label:$L("No"), value:"", type:"negative"}
113+ ]
114+ });
115+ return;
116+ }
117+
118+ var mmsVcalTarget = MessagingUtils.getClassUpChain(eventTarget,'mms-vcal');
119+ if(mmsVcalTarget) {
120+ var filePath = mmsVcalTarget.getAttribute('filePath');
121+ this.controller.showAlertDialog({
122+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, filePath);} else {this.controller.stageController.pushScene('mmsTextAttachment', filePath);}},
123+ title: $L("Forward Message"),
124+ message: $L("Do you want to forward this message?"),
125+ choices:[
126+ {label:$L("Yes"), value:"forward", type:"affirmative"},
127+ {label:$L("No"), value:"", type:"negative"}
128+ ]
129+ });
130+ return;
131+ }
132+
133+ if (!mmsImageTarget && !mmsVideoTarget && !mmsVcardTarget && !mmsVcalTarget) {
134+ this.controller.showAlertDialog({
135+ onChoose: function(value) {if(value == "forward"){MessagingMojoService.forwardMessage(this.controller, event.item.messageText, '');}},
136+ title: $L("Forward Message"),
137+ message: $L("Do you want to forward this message?"),
138+ choices:[
139+ {label:$L("Yes"), value:"forward", type:"affirmative"},
140+ {label:$L("No"), value:"", type:"negative"}
141+ ]
142+ });
143+ }
144+
145+ MessagingUtils.simpleListClick(this.controller.get(event.originalEvent.target), "chatRow", function(targetRow){
146+ var messageData = {
147+ errorCode: targetRow.getAttribute("errorCode"),
148+ status: targetRow.getAttribute("status"),
149+ messageId: targetRow.getAttribute("messageId"),
150+ flags: targetRow.getAttribute("flags"),
151+ messageType: targetRow.getAttribute("messageType")
152+ };
153+
154+ MessagingMojoService.getMessageErrorInfo(this.controller, messageData.messageId, messageData.flags, this.handleMessageErrorPopup.bind(this,messageData));
155+
156+ }.bind(this), false);
157+ },
158
159
160 handleMessageErrorPopup: function(messageData,messageErrorData) {
102161Index: /usr/palm/applications/com.palm.app.messaging/app/models/messaging-luna-service.js
103162===================================================================
104163--- .orig/usr/palm/applications/com.palm.app.messaging/app/models/messaging-luna-service.js
105164+++ /usr/palm/applications/com.palm.app.messaging/app/models/messaging-luna-service.js
106@@ -8,6 +8,23 @@ var MessagingMojoService = {
165@@ -8,7 +8,25 @@ var MessagingMojoService = {
107166 displayIdentifier: 'palm://com.palm.display/control',
108167 telephonyIdentifier: 'palm://com.palm.telephony',
109168 systemManagerIdentifier: 'palm://com.palm.systemmanager',
110169+ forwardIdentifier: 'palm://com.palm.applicationManager',
111+
170
112171+ forwardMessage: function(sceneController,messageText,attachment) {
113+ var opts = {
114+ method: 'launch',
115+ parameters: {
116+ id: 'com.palm.app.messaging',
117+ params: {
118+ }
119+ }
120+ };
121+ if (messageText)
122+ opts.parameters.params.messageText = 'FWD: '+messageText;
123+ if (attachment)
124+ opts.parameters.params.attachment = attachment;
125+ return sceneController.serviceRequest(MessagingMojoService.forwardIdentifier,opts);
172+ var opts = {
173+ method: 'launch',
174+ parameters: {
175+ id: 'com.palm.app.messaging',
176+ params: {
177+ }
178+ }
179+ };
180+ if (messageText)
181+ opts.parameters.params.messageText = 'FWD: '+messageText;
182+ if (attachment)
183+ opts.parameters.params.attachment = attachment;
184+ return sceneController.serviceRequest(MessagingMojoService.forwardIdentifier,opts);
126185+ },
127
186+
187+
128188 launchMessaging: function(sceneController,params) {
129189 return sceneController.serviceRequest("palm://com.palm.applicationManager", {
190 method:'launch',