A computer-implemented method directed to the operation of a mobile device , comprising: providing , by the operation of a user interface manager , on a touch screen of the mobile device, a messaging graphical user interface , the messaging graphical user interface comprising a message input control area comprising a palette of one or more message input controls (312a-312e) including a text input control , operable to receive user interactions, and a communication thread comprising a plurality of electronic messages exchanged between a user and one or more co-users , sent and received by a communication manager ; detecting , by at least one processor of the mobile device, a user interaction with the text input control; in response to the detected user interaction with the text input control, providing a keyboard on the touch screen of the mobile device; detecting , by the at least one processor of the mobile device, message input entered via keyboard provided on the touch screen of the mobile device; providing, by the operation of the user interface manager and in response to detecting the message input, a message input element directly in the communication thread; entering , by the at least one processor of the mobile device, and after providing the message input element directly in the communication thread, the message input directly into the message input element provided in the communication ' thread as the message input is detected; sending, by the operation of the communication manager of the mobile device, the message input entered into the message input element; and, changing by the at least one processor of the mobile device, a characteristic of the message input element in the communication thread to reflect sending of the message input entered into the message input element. providing , by the operation of a user interface manager , on a touch screen of the mobile device, a messaging graphical user interface , the messaging graphical user interface comprising a message input control area comprising a palette of one or more message input controls (312a-312e) including a text input control , operable to receive user interactions, and a communication thread comprising a plurality of electronic messages exchanged between a user and one or more co-users , sent and received by a communication manager ; detecting , by at least one processor of the mobile device, a user interaction with the text input control; in response to the detected user interaction with the text input control, providing a keyboard on the touch screen of the mobile device; detecting , by the at least one processor of the mobile device, message input entered via keyboard provided on the touch screen of the mobile device; providing, by the operation of the user interface manager and in response to detecting the message input, a message input element directly in the communication thread; entering , by the at least one processor of the mobile device, and after providing the message input element directly in the communication thread, the message input directly into the message input element provided in the communication ' thread as the message input is detected; sending, by the operation of the communication manager of the mobile device, the message input entered into the message input element; and, changing by the at least one processor of the mobile device, a characteristic of the message input element in the communication thread to reflect sending of the message input entered into the message input element. <EOS>