Hi Thomas,
the attached message is a multipart/alternative of a text/plain and a
text/html. Trojita shows the text/html by default, the plaintext part is
on a tab which is not active by default.
In this case, the HTML version's height is smaller that the height of
the plaintext part, and upon switching to the plaintext one, the display
is truncated -- the bottom part of the plaintext message is not shown.
Scrolling by wheel doesn't work (as expected), but one can click +
select to make the contents scroll.
I'm not sure what would be the correct behavior. "Resize the QTabWidget
so that it fits all of the child widgets" would be OK, but I'd actually
like "resize the QTabWidget upon showing the bigger part" even more.
Could you please have a look?
With kind regards,
Jan
--- Begin Message ---
On Monday, October 29, 2012 04:28:17 PM Jan Kundrát wrote:
> However, `mitchc` on #qt kindly confirms that he also gets "CEST" in
> QDateTime's output, even after a reboot since the DST change. He says that
> brokenDown's tm_isdst is *not* set for him.
Mine looks like:
tm_gmtoff = 3600
tm_hour = 16
tm_isdst = 0
tm_mday = 29
tm_min = 36
tm_mon = 9
tm_sec = 9
tm_wday = 1
tm_yday = 302
tm_year = 112
tm_zone = "CET"
> So, given that `date` reports the time correctly, I suspect that Qt is using
> some strange way of obtaining the TZ information. Do you have any ideas
> about what is confusing it to believe that DST is still active on this box?
> Please note that the actual hours being displayed are always correct, it's
> just the TZ indication which is off.
The problem seems to be that localtime_r fetches the correct timezone, but the
timeZone() function in qlocale.cpp (which is used when you use a date format
like Qt::SystemLocaleLongDate) returns a hard-coded tzname[1], which is always
going to be a timezone with DST in effect:
"The array tzname contains two strings, which are the standard names of the
pair of time zones (standard and Daylight Saving) that the user has selected.
tzname[0] is the name of the standard time zone (for example, "EST"), and
tzname[1] is the name for the time zone when Daylight Saving Time is in use
(for example, "EDT"). These correspond to the std and dst strings
(respectively) from the TZ environment variable. If Daylight Saving Time is
never used, tzname[1] is the empty string. " [1]
I vaguely remember running into a similar issue with https://codereview.qt-
project.org/#change,35242, but I think it's a known issue that timezone
support in Qt is not up to scratch. John Layt is working on the ICU backend
for this stuff though [2], so it will be improved in the not-too-distant
future.
[1] http://www.gnu.org/software/libc/manual/html_node/Time-Zone-Functions.html
[2] http://www.layt.net/john/blog/odysseus/icu_did_u_c_me
--- End Message ---