fix #2614: define non-linear scale for static fees
This commit is contained in:
@@ -28,7 +28,7 @@ class FeeSlider(QSlider):
|
||||
|
||||
def moved(self, pos):
|
||||
with self.lock:
|
||||
fee_rate = self.config.dynfee(pos) if self.dyn else pos * self.fee_step
|
||||
fee_rate = self.config.dynfee(pos) if self.dyn else self.config.static_fee(pos)
|
||||
tooltip = self.get_tooltip(pos, fee_rate)
|
||||
QToolTip.showText(QCursor.pos(), tooltip, self)
|
||||
self.setToolTip(tooltip)
|
||||
@@ -55,10 +55,9 @@ class FeeSlider(QSlider):
|
||||
self.setRange(0, 4)
|
||||
self.setValue(pos)
|
||||
else:
|
||||
self.fee_step = self.config.max_fee_rate() / 10
|
||||
fee_rate = self.config.fee_per_kb()
|
||||
pos = min(fee_rate / self.fee_step, 10)
|
||||
self.setRange(1, 10)
|
||||
pos = self.config.static_fee_index(fee_rate)
|
||||
self.setRange(0, 9)
|
||||
self.setValue(pos)
|
||||
tooltip = self.get_tooltip(pos, fee_rate)
|
||||
self.setToolTip(tooltip)
|
||||
|
||||
@@ -2437,21 +2437,6 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
||||
fee_widgets.append((dynfee_cb, None))
|
||||
dynfee_cb.stateChanged.connect(on_dynfee)
|
||||
|
||||
def on_maxfee(x):
|
||||
m = maxfee_e.get_amount()
|
||||
if m: self.config.set_key('max_fee_rate', m)
|
||||
self.fee_slider.update()
|
||||
def update_maxfee():
|
||||
d = self.config.is_dynfee()
|
||||
maxfee_e.setDisabled(d)
|
||||
maxfee_label.setDisabled(d)
|
||||
maxfee_label = HelpLabel(_('Max static fee'), _('Max value of the static fee slider'))
|
||||
maxfee_e = BTCkBEdit(self.get_decimal_point)
|
||||
maxfee_e.setAmount(self.config.max_fee_rate())
|
||||
maxfee_e.textChanged.connect(on_maxfee)
|
||||
update_maxfee()
|
||||
fee_widgets.append((maxfee_label, maxfee_e))
|
||||
|
||||
feebox_cb = QCheckBox(_('Edit fees manually'))
|
||||
feebox_cb.setChecked(self.config.get('show_fee', False))
|
||||
feebox_cb.setToolTip(_("Show fee edit box in send tab."))
|
||||
|
||||
Reference in New Issue
Block a user