fix transparency updates for the toolbar when autohide is on
This commit is contained in:
parent
11cba508e6
commit
3e6def97d1
11 changed files with 36 additions and 1 deletions
|
@ -1,6 +1,8 @@
|
||||||
(Format: Year/Month/Day)
|
(Format: Year/Month/Day)
|
||||||
Changes for 0.9.16:
|
Changes for 0.9.16:
|
||||||
*06/04/17:
|
*06/04/17:
|
||||||
|
* Fix toolbar transparency when autohide enabled (Simon)
|
||||||
|
Toolbar.cc Container.hh/cc ToolbarItem.hh/cc *Tool.hh/cc
|
||||||
* Fix toolbar transparency (frame and empty iconbar) (Simon)
|
* Fix toolbar transparency (frame and empty iconbar) (Simon)
|
||||||
Container.cc Toolbar.cc
|
Container.cc Toolbar.cc
|
||||||
* Fix display of label for dialog-type boxes (Simon)
|
* Fix display of label for dialog-type boxes (Simon)
|
||||||
|
|
|
@ -65,6 +65,8 @@ public:
|
||||||
|
|
||||||
void setOrientation(FbTk::Orientation orient);
|
void setOrientation(FbTk::Orientation orient);
|
||||||
|
|
||||||
|
void parentMoved() { m_button.parentMoved(); }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void updateTime();
|
void updateTime();
|
||||||
void update(FbTk::Subject *subj);
|
void update(FbTk::Subject *subj);
|
||||||
|
|
|
@ -510,6 +510,14 @@ void Container::setAlpha(unsigned char alpha) {
|
||||||
(*it)->setAlpha(alpha);
|
(*it)->setAlpha(alpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Container::parentMoved() {
|
||||||
|
FbTk::FbWindow::parentMoved();
|
||||||
|
ItemList::iterator it = m_item_list.begin();
|
||||||
|
ItemList::iterator it_end = m_item_list.end();
|
||||||
|
for (; it != it_end; ++it)
|
||||||
|
(*it)->parentMoved();
|
||||||
|
}
|
||||||
|
|
||||||
void Container::clear() {
|
void Container::clear() {
|
||||||
ItemList::iterator it = m_item_list.begin();
|
ItemList::iterator it = m_item_list.begin();
|
||||||
ItemList::iterator it_end = m_item_list.end();
|
ItemList::iterator it_end = m_item_list.end();
|
||||||
|
|
|
@ -83,6 +83,8 @@ public:
|
||||||
bool tryButtonPressEvent(XButtonEvent &event);
|
bool tryButtonPressEvent(XButtonEvent &event);
|
||||||
bool tryButtonReleaseEvent(XButtonEvent &event);
|
bool tryButtonReleaseEvent(XButtonEvent &event);
|
||||||
|
|
||||||
|
void parentMoved();
|
||||||
|
|
||||||
/// accessors
|
/// accessors
|
||||||
inline Alignment alignment() const { return m_align; }
|
inline Alignment alignment() const { return m_align; }
|
||||||
inline FbTk::Orientation orientation() const { return m_orientation; }
|
inline FbTk::Orientation orientation() const { return m_orientation; }
|
||||||
|
|
|
@ -84,3 +84,8 @@ void GenericTool::renderTheme(unsigned char alpha) {
|
||||||
void GenericTool::update(FbTk::Subject *subj) {
|
void GenericTool::update(FbTk::Subject *subj) {
|
||||||
m_window->clear();
|
m_window->clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void GenericTool::parentMoved() {
|
||||||
|
m_window->parentMoved();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -52,6 +52,8 @@ public:
|
||||||
unsigned int height() const;
|
unsigned int height() const;
|
||||||
unsigned int borderWidth() const;
|
unsigned int borderWidth() const;
|
||||||
|
|
||||||
|
void parentMoved();
|
||||||
|
|
||||||
const ToolTheme &theme() const { return m_theme; }
|
const ToolTheme &theme() const { return m_theme; }
|
||||||
FbTk::FbWindow &window() { return *m_window; }
|
FbTk::FbWindow &window() { return *m_window; }
|
||||||
const FbTk::FbWindow &window() const { return *m_window; }
|
const FbTk::FbWindow &window() const { return *m_window; }
|
||||||
|
|
|
@ -86,6 +86,7 @@ public:
|
||||||
void setMode(Mode mode);
|
void setMode(Mode mode);
|
||||||
void setDeiconifyMode(DeiconifyMode mode);
|
void setDeiconifyMode(DeiconifyMode mode);
|
||||||
void setWheelMode(WheelMode mode);
|
void setWheelMode(WheelMode mode);
|
||||||
|
void parentMoved() { m_icon_container.parentMoved(); }
|
||||||
|
|
||||||
unsigned int width() const;
|
unsigned int width() const;
|
||||||
unsigned int height() const;
|
unsigned int height() const;
|
||||||
|
|
|
@ -71,6 +71,8 @@ public:
|
||||||
inline void renderTheme(unsigned char alpha) {}
|
inline void renderTheme(unsigned char alpha) {}
|
||||||
inline void updateSizing() {}
|
inline void updateSizing() {}
|
||||||
|
|
||||||
|
void parentMoved() { m_window.parentMoved(); }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
void update(FbTk::Subject *subj);
|
void update(FbTk::Subject *subj);
|
||||||
|
|
|
@ -782,8 +782,14 @@ void Toolbar::toggleHidden() {
|
||||||
m_hidden = ! m_hidden;
|
m_hidden = ! m_hidden;
|
||||||
if (isHidden())
|
if (isHidden())
|
||||||
frame.window.move(frame.x_hidden, frame.y_hidden);
|
frame.window.move(frame.x_hidden, frame.y_hidden);
|
||||||
else
|
else {
|
||||||
frame.window.move(frame.x, frame.y);
|
frame.window.move(frame.x, frame.y);
|
||||||
|
ItemList::iterator item_it = m_item_list.begin();
|
||||||
|
ItemList::iterator item_it_end = m_item_list.end();
|
||||||
|
for (item_it = m_item_list.begin(); item_it != item_it_end; ++item_it) {
|
||||||
|
(*item_it)->parentMoved();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,6 +58,9 @@ public:
|
||||||
// the toolbar instead. Otherwise there are ordering problems.
|
// the toolbar instead. Otherwise there are ordering problems.
|
||||||
virtual void renderTheme(unsigned char alpha) = 0;
|
virtual void renderTheme(unsigned char alpha) = 0;
|
||||||
|
|
||||||
|
// insist implemented, even if blank
|
||||||
|
virtual void parentMoved() = 0; // called when moved from hiding
|
||||||
|
|
||||||
// just update theme items that affect the size
|
// just update theme items that affect the size
|
||||||
virtual void updateSizing() = 0;
|
virtual void updateSizing() = 0;
|
||||||
|
|
||||||
|
|
|
@ -54,6 +54,8 @@ public:
|
||||||
const FbTk::Button &button() const { return m_button; }
|
const FbTk::Button &button() const { return m_button; }
|
||||||
void setOrientation(FbTk::Orientation orient);
|
void setOrientation(FbTk::Orientation orient);
|
||||||
|
|
||||||
|
void parentMoved() { m_button.parentMoved(); }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void renderTheme(unsigned char alpha);
|
void renderTheme(unsigned char alpha);
|
||||||
void reRender();
|
void reRender();
|
||||||
|
|
Loading…
Reference in a new issue