TabBar::TabBar(QupZilla* mainClass, TabWidget* tabWidget) : QTabBar() , p_QupZilla(mainClass) , m_tabWidget(tabWidget) , m_tabPreview(new TabPreview(mainClass, tabWidget)) , m_showTabPreviews(false) , m_clickedTab(0) , m_pinnedTabsCount(0) , m_normalTabWidth(0) , m_activeTabWidth(0) { setObjectName("tabbar"); setContextMenuPolicy(Qt::CustomContextMenu); setElideMode(Qt::ElideRight); setDocumentMode(true); setFocusPolicy(Qt::NoFocus); setTabsClosable(true); setMouseTracking(true); setMovable(true); setAcceptDrops(true); connect(this, SIGNAL(currentChanged(int)), this, SLOT(currentTabChanged(int))); connect(this, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(contextMenuRequested(const QPoint &))); connect(m_tabWidget, SIGNAL(pinnedTabClosed()), this, SLOT(pinnedTabClosed())); connect(m_tabWidget, SIGNAL(pinnedTabAdded()), this, SLOT(pinnedTabAdded())); m_tabPreviewTimer = new QTimer(this); m_tabPreviewTimer->setInterval(200); m_tabPreviewTimer->setSingleShot(true); connect(m_tabPreviewTimer, SIGNAL(timeout()), m_tabPreview, SLOT(hideAnimated())); }
void InnerDropdown::otherLeave() { auto ms = getms(); if (_a_show.animating(ms) || _a_opacity.animating(ms)) { hideAnimated(); } else { _hideTimer.start(0); } }
void InnerDropdown::otherLeave() { if (_autoHiding) { if (_a_show.animating() || _a_opacity.animating()) { hideAnimated(); } else { _hideTimer.start(0); } } }
void InnerDropdown::leaveEventHook(QEvent *e) { auto ms = getms(); if (_a_show.animating(ms) || _a_opacity.animating(ms)) { hideAnimated(); } else { _hideTimer.start(300); } return TWidget::leaveEventHook(e); }
void InnerDropdown::leaveEventHook(QEvent *e) { if (_autoHiding) { if (_a_show.animating() || _a_opacity.animating()) { hideAnimated(); } else { _hideTimer.start(300); } } return RpWidget::leaveEventHook(e); }
void Manager::onHideTimeout() { auto now = getms(true); for (auto i = _toastByHideTime.begin(); i != _toastByHideTime.cend();) { if (i.key() <= now) { auto toast = i.value(); i = _toastByHideTime.erase(i); toast->hideAnimated(); } else { break; } } startNextHideTimer(); }
TabBar::TabBar(BrowserWindow* window, TabWidget* tabWidget) : ComboTabBar() , m_window(window) , m_tabWidget(tabWidget) , m_tabPreview(new TabPreview(window, window)) , m_showTabPreviews(false) , m_hideTabBarWithOneTab(false) , m_showCloseOnInactive(0) , m_clickedTab(0) , m_normalTabWidth(0) , m_activeTabWidth(0) { setObjectName("tabbar"); setContextMenuPolicy(Qt::CustomContextMenu); setElideMode(Qt::ElideRight); setFocusPolicy(Qt::NoFocus); setTabsClosable(false); setMouseTracking(true); setDocumentMode(true); setAcceptDrops(true); setDrawBase(false); setMovable(true); connect(this, SIGNAL(currentChanged(int)), this, SLOT(currentTabChanged(int))); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint))); m_tabPreviewShowTimer = new QTimer(this); m_tabPreviewShowTimer->setInterval(300); m_tabPreviewShowTimer->setSingleShot(true); connect(m_tabPreviewShowTimer, SIGNAL(timeout()), this, SLOT(showTabPreview())); m_tabPreviewHideTimer = new QTimer(this); m_tabPreviewHideTimer->setInterval(300); m_tabPreviewHideTimer->setSingleShot(true); connect(m_tabPreviewHideTimer, SIGNAL(timeout()), m_tabPreview, SLOT(hideAnimated())); // ComboTabBar features setUsesScrollButtons(true); setCloseButtonsToolTip(BrowserWindow::tr("Close Tab")); connect(this, SIGNAL(scrollBarValueChanged(int)), this, SLOT(hideTabPreview())); connect(this, SIGNAL(overFlowChanged(bool)), this, SLOT(overflowChanged(bool))); if (mApp->isPrivate()) { QLabel* privateBrowsing = new QLabel(this); privateBrowsing->setObjectName(QSL("private-browsing-icon")); privateBrowsing->setPixmap(IconProvider::privateBrowsingIcon().pixmap(16, 16)); privateBrowsing->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); privateBrowsing->setFixedWidth(30); addCornerWidget(privateBrowsing, Qt::TopLeftCorner); } }
void PopupMenu::hideMenu(bool fast) { if (isHidden()) return; if (_parent && !_a_opacity.animating()) { _parent->childHiding(this); } if (fast) { hideFast(); } else { hideAnimated(); if (_parent) { _parent->hideMenu(); } } if (_activeSubmenu) { _activeSubmenu->hideMenu(fast); } }
void CrossButton::hideFast() { hideAnimated(); _a_show.finish(); }