[core/output] fix minimum width with padding
when calculating the minimum width of a widget, also take the padding into consideration. see #785
This commit is contained in:
parent
10c169af8a
commit
fb6be007e5
1 changed files with 13 additions and 5 deletions
|
@ -57,6 +57,9 @@ class block(object):
|
||||||
def set(self, key, value):
|
def set(self, key, value):
|
||||||
self.__attributes[key] = value
|
self.__attributes[key] = value
|
||||||
|
|
||||||
|
def get(self, key, default=None):
|
||||||
|
return self.__attributes.get(key, default)
|
||||||
|
|
||||||
def is_pango(self, attr):
|
def is_pango(self, attr):
|
||||||
if isinstance(attr, dict) and "pango" in attr:
|
if isinstance(attr, dict) and "pango" in attr:
|
||||||
return True
|
return True
|
||||||
|
@ -91,9 +94,17 @@ class block(object):
|
||||||
assign(self.__attributes, result, "background", "bg")
|
assign(self.__attributes, result, "background", "bg")
|
||||||
|
|
||||||
if "full_text" in self.__attributes:
|
if "full_text" in self.__attributes:
|
||||||
|
prefix = self.__pad(self.pangoize(self.__attributes.get("prefix")))
|
||||||
|
suffix = self.__pad(self.pangoize(self.__attributes.get("suffix")))
|
||||||
|
self.set("_prefix", prefix)
|
||||||
|
self.set("_suffix", suffix)
|
||||||
|
self.set("_raw", self.get("full_text"))
|
||||||
result["full_text"] = self.pangoize(result["full_text"])
|
result["full_text"] = self.pangoize(result["full_text"])
|
||||||
result["full_text"] = self.__format(self.__attributes["full_text"])
|
result["full_text"] = self.__format(self.__attributes["full_text"])
|
||||||
|
|
||||||
|
if "min-width" in self.__attributes and "padding" in self.__attributes:
|
||||||
|
self.set("min-width", self.__format(self.get("min-width")))
|
||||||
|
|
||||||
for k in [
|
for k in [
|
||||||
"name",
|
"name",
|
||||||
"instance",
|
"instance",
|
||||||
|
@ -123,11 +134,8 @@ class block(object):
|
||||||
def __format(self, text):
|
def __format(self, text):
|
||||||
if text is None:
|
if text is None:
|
||||||
return None
|
return None
|
||||||
prefix = self.__pad(self.pangoize(self.__attributes.get("prefix")))
|
prefix = self.get("_prefix")
|
||||||
suffix = self.__pad(self.pangoize(self.__attributes.get("suffix")))
|
suffix = self.get("_suffix")
|
||||||
self.set("_prefix", prefix)
|
|
||||||
self.set("_suffix", suffix)
|
|
||||||
self.set("_raw", text)
|
|
||||||
return "{}{}{}".format(prefix, text, suffix)
|
return "{}{}{}".format(prefix, text, suffix)
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue