Aleksander Machniak
2014-10-29 0b96b1cd81d244af74ed8229fae1d64ebc6a205d
Fix reply scrolling issue with text mode and start message below the quote (#1490114)
3 files modified
23 ■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
program/js/app.js 11 ●●●● patch | view | raw | blame | history
program/steps/mail/compose.inc 11 ●●●● patch | view | raw | blame | history
CHANGELOG
@@ -60,6 +60,7 @@
- Fix handling of base64-encoded attachments with extra spaces (#1490111)
- Fix handling of UNKNOWN-CTE response, try do decode content client-side (#1490046)
- Fix bug where creating subfolders in shared folders wasn't possible without ACL extension (#1490113)
- Fix reply scrolling issue with text mode and start message below the quote (#1490114)
RELEASE 1.0.3
-------------
program/js/app.js
@@ -3319,7 +3319,7 @@
    if (!this.gui_objects.messageform)
      return false;
    var i, input_from = $("[name='_from']"),
    var i, pos, input_from = $("[name='_from']"),
      input_to = $("[name='_to']"),
      input_subject = $("input[name='_subject']"),
      input_message = $("[name='_message']").get(0),
@@ -3353,12 +3353,19 @@
    }
    if (!html_mode) {
      this.set_caret_pos(input_message, this.env.top_posting ? 0 : $(input_message).val().length);
      pos = this.env.top_posting ? 0 : input_message.value.length;
      this.set_caret_pos(input_message, pos);
      // add signature according to selected identity
      // if we have HTML editor, signature is added in callback
      if (input_from.prop('type') == 'select-one') {
        this.change_identity(input_from[0]);
      }
      // scroll to the bottom of the textarea (#1490114)
      if (pos) {
        $(input_message).scrollTop(input_message.scrollHeight);
      }
    }
    // check for locally stored compose data
program/steps/mail/compose.inc
@@ -986,6 +986,8 @@
        )
    ));
    $reply_mode = intval($RCMAIL->config->get('reply_mode'));
    if (!$bodyIsHtml) {
        $body = preg_replace('/\r?\n/', "\n", $body);
        $body = trim($body, "\n");
@@ -994,10 +996,13 @@
        $body = rcmail_wrap_and_quote($body, $LINE_LENGTH);
        $prefix .= "\n";
        $suffix = '';
        if (intval($RCMAIL->config->get('reply_mode')) > 0) { // top-posting
        if ($reply_mode > 0) { // top-posting
            $prefix = "\n\n\n" . $prefix;
            $suffix = '';
        }
        else {
            $suffix = "\n";
        }
    }
    else {
@@ -1012,7 +1017,7 @@
        $prefix = '<p>' . rcube::Q($prefix) . "</p>\n";
        $prefix .= '<blockquote>';
        if (intval($RCMAIL->config->get('reply_mode')) > 0) { // top-posting
        if ($reply_mode > 0) { // top-posting
            $prefix = '<br>' . $prefix;
            $suffix = '</blockquote>';
        }