Archived:Refreshing problem when using a status pane with small layout (Known Issue)
Applications using small status pane layout may experience a refreshing problem after launching a dialog containing EDWIN control(s).
When a small status pane with a signal pane is used in an application, the signal strength indicator is embedded in the status pane. If a dialog with an EDWIN control is launched, the text editor will hide the status pane automatically. However, after the dialog is dismissed, the status pane is displayed incorrectly, without the signal strength indicator.
How to reproduce
Create a small status pane by calling:
Launch a dialog with an EDWIN control inside it for taking user input. After launching the dialog, the status pane is overwritten by the text field and shows empty with a T9 indicator on the right side. Enter some input and press OK. The status pane is not returned back to original but is left empty.
There are two possible workaround solutions for this problem:
- From the dialog's OkToExitL() method, launch an AknNoteDialog with a short timeout period (for example, 1 µs) to reset the status pane, then call SwitchLayout() for the status pane again.
CAknNoteDialog* pdlg = new (ELeave) CAknNoteDialog();
// sp is a pointer to status pane
- Resource definition for the note dialog:
RESOURCE DIALOG r_singlepage_dialog
flags = EEikDialogFlagNoDrag |
type = EAknCtNote;
id = ESomeLabel;
control = AVKON_NOTE
layout = ETextualNotificationLayout;
- Start an active object with a timer (for example, 10 µs) in OkToExitL(). In RunL(), (when the timer expires) call SwitchLayoutL() for the status pane, as described above.