diff --git a/src/calibre/ebooks/oeb/polish/container.py b/src/calibre/ebooks/oeb/polish/container.py index a8e95c1579..7aaea2408f 100644 --- a/src/calibre/ebooks/oeb/polish/container.py +++ b/src/calibre/ebooks/oeb/polish/container.py @@ -137,7 +137,7 @@ def seconds_to_timestamp(duration: float) -> str: seconds = seconds % 60 ans = f'{hours:02d}:{minutes:02d}:{seconds:02d}' if float_part: - ans += f'{float_part}'.rstrip('0')[1:] + ans += f'{float_part:.20f}'.rstrip('0')[1:] return ans diff --git a/src/calibre/gui2/tts/config.py b/src/calibre/gui2/tts/config.py index 552db8caed..e269743665 100644 --- a/src/calibre/gui2/tts/config.py +++ b/src/calibre/gui2/tts/config.py @@ -110,7 +110,7 @@ class FloatSlider(QWidget): self.l = l = QHBoxLayout(self) self.slider = s = QSlider(self) l.addWidget(s, alignment=Qt.AlignmentFlag.AlignBottom) - self.label = la = QLabel('\xa0'.ljust(12, '\xa0')) + self.label = la = QLabel('\xa0'.ljust(4, '\xa0')) l.addWidget(la, alignment=Qt.AlignmentFlag.AlignVCenter) l.setContentsMargins(0, 0, 0, 0) self.factor = factor @@ -125,8 +125,6 @@ class FloatSlider(QWidget): s.setTickInterval(s.maximum() - s.minimum()) s.valueChanged.connect(self.update_label) self.update_label() - self.label.setMinimumWidth(self.label.width()) - self.label.setMaximumWidth(self.label.width()) def sizeHint(self) -> QSize: ans = super().sizeHint() @@ -138,8 +136,8 @@ class FloatSlider(QWidget): den = self.slider.maximum() - m num = self.slider.value() - m p = 2 * (num / den) - text = _('normal') if p == 1 else f'{p:.0%}' - self.label.setText(text.ljust(12, '\xa0')) + text = f'{p:.0%}' + self.label.setText(text.ljust(4, '\xa0')) @property def val(self) -> float: