Changeset 19544 in webkit
- Timestamp:
- Feb 9, 2007 2:37:27 PM (17 years ago)
- Location:
- S60/branches/3.1m/WebKit
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
S60/branches/3.1m/WebKit/BrowserView/inc/FormDataLoginStore.h
r14549 r19544 10 10 * All rights reserved. 11 11 * 12 * 13 * 14 * 12 * Redistribution and use in source and binary forms, with or without 13 * modification, are permitted provided that the following conditions 14 * are met: 15 15 * 16 16 * * Redistributions of source code must retain the above copyright … … 24 24 * from this software without specific prior written permission. 25 25 * 26 * 27 * 28 * 29 * 30 * 31 * 32 * 33 * 34 * 35 * 36 * 37 * 26 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 27 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 28 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 29 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 30 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 31 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 32 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 33 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 34 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 35 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE 36 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 37 * DAMAGE. 38 38 * 39 39 * Please see file patentlicense.txt for further grants. … … 87 87 { 88 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 89 class CLoginDataElement : public CBase 90 { 91 public: 92 93 /** 94 * Destructor 95 */ 96 ~CLoginDataElement(); 97 98 public: 99 HBufC* iUrl; 100 HBufC* iLoginName; 101 HBufC* iLoginValue; 102 HBufC* iPasswordName; 103 HBufC* iPasswordValue; 104 }; 105 105 106 106 … … 133 133 */ 134 134 void GetDataL (CArrayPtrFlat<COptionData>& aOptions, 135 136 137 138 139 135 const TDesC& aUrl, const TDesC& aName) const; 136 137 /** 138 * Sets the Password value in the input control 139 */ 140 140 void SetPassword (CWebKitBridge& aWebKitBridge, 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 141 const TDesC& aUrl, const TDesC& aLoginName, const TDesC& aLoginValue) const; 142 143 /** 144 * Save the username/password in store. 145 */ 146 void SaveDataL (const TDesC& aUrl, const CArrayPtrFlat<CWebCoreFormDataElement>& aFormData); 147 148 /** 149 * PasswordIndex 150 * @return index of first password field. return -1 if no password 151 */ 152 TInt PasswordIndex(const CArrayPtrFlat<CWebCoreFormDataElement>& aFormData); 153 154 /** 155 * Clear the saved data 156 */ 157 void ClearData (); 158 158 159 159 /** … … 169 169 void ConstructL(MBrCtlDialogsProvider* aDialogProvider); 170 170 171 /** 172 * Default constructor 173 */ 174 CFormDataLoginStore(); 175 176 /** 177 * Load the file to fill in the blocked list and username/password list 178 */ 179 void LoadListsL(); 180 181 /** 182 * Load the file to fill in the blocked list and username/password list 183 */ 184 void SaveListsL(); 185 186 /** 187 * Popup save data dialog 188 */ 189 TLoginDataSaveDialogType SaveDialogL(const TDesC& aUrl); 171 /** 172 * Default constructor 173 */ 174 CFormDataLoginStore(); 175 176 /** 177 * Load the file to fill in the blocked list and username/password list 178 */ 179 void LoadListsL(); 180 181 /** 182 * Load the file to fill in the blocked list and username/password list 183 */ 184 void SaveListsL(); 185 186 /** 187 * Popup save data dialog 188 */ 189 TLoginDataSaveDialogType SaveDialogL(const TDesC& aUrl); 190 191 /** 192 * Decide if SaveDialog is needed 193 */ 194 TBool ShouldAskUser(const TDesC& aUrl, const CWebCoreFormDataElement* aLogin, 195 const CWebCoreFormDataElement* aPassword); 190 196 191 197 /** … … 194 200 void BlockL (const TDesC& aUrl); 195 201 196 197 198 199 200 202 /** 203 * Encrypt and decrypt password 204 */ 205 TInt Encrypt(TPtr aOutput, const TDesC& aInput); 206 TInt Decrypt(TPtr aOutput, const TDesC& aInput); 201 207 202 208 /* Private Members */ … … 204 210 private : 205 211 206 MBrCtlDialogsProvider*iDialogProvider;207 208 209 210 212 MBrCtlDialogsProvider* iDialogProvider; 213 // List of blocked urls 214 CArrayPtrFlat<HBufC>* iBlockedList; 215 CArrayPtrFlat<CLoginDataElement>* iLoginList; 216 HBufC* iFormDataLoginStoreFile; 211 217 }; 212 218 -
S60/branches/3.1m/WebKit/BrowserView/src/FormDataLoginStore.cpp
r19283 r19544 299 299 loginIdx > -1 && aFormData.At(loginIdx)->iValue->Length()>0 && 300 300 aFormData.At(loginIdx)->isAutoComplete && 301 SaveDialogL(aUrl) == ELoginDataSaveYes)301 (!ShouldAskUser(aUrl, aFormData.At(loginIdx), aFormData.At(passwordIdx)) || SaveDialogL(aUrl) == ELoginDataSaveYes)) 302 302 { 303 303 CLoginDataElement* elem = new (ELeave) CLoginDataElement(); … … 516 516 517 517 //----------------------------------------------------------------------------- 518 // CFormDataLoginStore::ShouldAskUser 519 // Decide if SaveDialog is needed 520 //----------------------------------------------------------------------------- 521 TBool CFormDataLoginStore::ShouldAskUser(const TDesC& aUrl, const CWebCoreFormDataElement* aLogin, 522 const CWebCoreFormDataElement* aPassword) 523 { 524 for (TInt i = 0; i < iLoginList->Count(); i++) 525 { 526 if (iLoginList->At(i)->iUrl->CompareF(aUrl) == 0 && 527 iLoginList->At(i)->iLoginValue->Compare(aLogin->iValue->Des()) == 0 && 528 iLoginList->At(i)->iPasswordValue->Compare(aPassword->iValue->Des()) == 0) 529 { 530 return EFalse; 531 } 532 } 533 return ETrue; 534 } 535 536 //----------------------------------------------------------------------------- 518 537 // CFormDataLoginStore::SaveDialog 519 538 // Asks to save - yes, no, never. … … 521 540 TLoginDataSaveDialogType CFormDataLoginStore::SaveDialogL(const TDesC& aUrl) 522 541 { 523 if (Exists(aUrl))524 {525 // if it was already saved there is no need to ask again526 return ELoginDataSaveYes;527 }528 529 542 TLoginDataSaveDialogType selected(ELoginDataSaveNo); 530 543 -
S60/branches/3.1m/WebKit/ChangeLog
r19540 r19544 1 yaharon, Reviewed by yongjun 2 DESC: [S60] BrowserNG: Passwords stored without notifying the user MLIO-6XXE6N 3 http://bugs.webkit.org/show_bug.cgi?id=12712 4 5 * BrowserView/inc/FormDataLoginStore.h: 6 * BrowserView/src/FormDataLoginStore.cpp: 7 (CFormDataLoginStore::SaveDataL): 8 (CFormDataLoginStore::ShouldAskUser): 9 (CFormDataLoginStore::SaveDialogL): 10 1 11 bujtas, Reviewed by Yongjun. 2 12 DESC: Can not open the Browser application. fix: delay formmanager construct ALES-6Y9GG7
Note: See TracChangeset
for help on using the changeset viewer.