mirror of
https://github.com/iDescriptor/iDescriptor.git
synced 2026-06-22 03:45:51 +08:00
fix macos build, remove NSPopover, update app icon.icns
This commit is contained in:
+37
-37
@@ -95,30 +95,32 @@ void DiskUsageWidget::setupUI()
|
||||
m_diskBarLayout->setContentsMargins(0, 0, 0, 0);
|
||||
m_diskBarLayout->setSpacing(0);
|
||||
|
||||
// Create colored segments
|
||||
#ifdef Q_OS_MAC
|
||||
m_systemBar = new DiskUsageBar();
|
||||
m_appsBar = new DiskUsageBar();
|
||||
m_mediaBar = new DiskUsageBar();
|
||||
m_othersBar = new DiskUsageBar();
|
||||
m_freeBar = new DiskUsageBar();
|
||||
/*
|
||||
FIXME: There is bug with qt, related to NSPopover on macOS
|
||||
need to revisit this when we find a fix
|
||||
*/
|
||||
// #ifdef Q_OS_MAC
|
||||
// m_systemBar = new DiskUsageBar();
|
||||
// m_appsBar = new DiskUsageBar();
|
||||
// m_mediaBar = new DiskUsageBar();
|
||||
// m_othersBar = new DiskUsageBar();
|
||||
// m_freeBar = new DiskUsageBar();
|
||||
|
||||
m_systemBar->setStyleSheet(
|
||||
" background-color: #a1384d; border: 1px solid"
|
||||
"#e64a5b; padding: 0; margin: 0; border-top-left-radius: 3px; "
|
||||
"border-bottom-left-radius: 3px; ");
|
||||
m_appsBar->setStyleSheet("background-color: #4f869f; border: 1px solid "
|
||||
"#63b4da; padding: 0; margin: 0; ");
|
||||
m_mediaBar->setStyleSheet("background-color: #2ECC71; "
|
||||
"border: none; padding: 0; margin: 0; ");
|
||||
m_othersBar->setStyleSheet("background-color: #a28729; border: 1px solid "
|
||||
"#c4a32d; padding: 0; margin: 0; ");
|
||||
m_freeBar->setStyleSheet(
|
||||
"background-color: #6e6d6d; border: 1px solid "
|
||||
"#4f4f4f; padding: 0; margin: 0; border-top-right-radius: 3px; "
|
||||
"border-bottom-right-radius: 3px; ");
|
||||
// m_systemBar->setStyleSheet(
|
||||
// " background-color: #a1384d; border: 1px solid"
|
||||
// "#e64a5b; padding: 0; margin: 0; border-top-left-radius: 3px; "
|
||||
// "border-bottom-left-radius: 3px; ");
|
||||
// m_appsBar->setStyleSheet("background-color: #4f869f; border: 1px solid "
|
||||
// "#63b4da; padding: 0; margin: 0; ");
|
||||
// m_mediaBar->setStyleSheet("background-color: #2ECC71; "
|
||||
// "border: none; padding: 0; margin: 0; ");
|
||||
// m_othersBar->setStyleSheet("background-color: #a28729; border: 1px solid "
|
||||
// "#c4a32d; padding: 0; margin: 0; ");
|
||||
// m_freeBar->setStyleSheet(
|
||||
// "background-color: #6e6d6d; border: 1px solid "
|
||||
// "#4f4f4f; padding: 0; margin: 0; border-top-right-radius: 3px; "
|
||||
// "border-bottom-right-radius: 3px; ");
|
||||
|
||||
#else
|
||||
m_systemBar = new QWidget();
|
||||
m_appsBar = new QWidget();
|
||||
m_mediaBar = new QWidget();
|
||||
@@ -154,7 +156,6 @@ void DiskUsageWidget::setupUI()
|
||||
m_mediaBar->setContentsMargins(0, 0, 0, 0);
|
||||
m_othersBar->setContentsMargins(0, 0, 0, 0);
|
||||
m_freeBar->setContentsMargins(0, 0, 0, 0);
|
||||
#endif
|
||||
|
||||
m_diskBarLayout->addWidget(m_systemBar);
|
||||
m_diskBarLayout->addWidget(m_appsBar);
|
||||
@@ -317,19 +318,19 @@ void DiskUsageWidget::updateUI()
|
||||
m_diskBarLayout->setStretchFactor(m_othersBar, othersStretch);
|
||||
m_diskBarLayout->setStretchFactor(m_freeBar, freeStretch);
|
||||
|
||||
// Set usage info for popovers
|
||||
#ifdef Q_OS_MAC
|
||||
m_systemBar->setUsageInfo("System", formatSize(m_systemUsage), "#a1384d",
|
||||
(double)m_systemUsage / m_totalCapacity);
|
||||
m_appsBar->setUsageInfo("Apps", formatSize(m_appsUsage), "#3498DB",
|
||||
(double)m_appsUsage / m_totalCapacity);
|
||||
m_mediaBar->setUsageInfo("Media", formatSize(m_mediaUsage), "#2ECC71",
|
||||
(double)m_mediaUsage / m_totalCapacity);
|
||||
m_othersBar->setUsageInfo("Others", formatSize(m_othersUsage), "#F39C12",
|
||||
(double)m_othersUsage / m_totalCapacity);
|
||||
m_freeBar->setUsageInfo("Free", formatSize(m_freeSpace), "#BDC3C7",
|
||||
(double)m_freeSpace / m_totalCapacity);
|
||||
#else
|
||||
/* FIXME: NSPopover bug */
|
||||
// #ifdef Q_OS_MAC
|
||||
// m_systemBar->setUsageInfo("System", formatSize(m_systemUsage), "#a1384d",
|
||||
// (double)m_systemUsage / m_totalCapacity);
|
||||
// m_appsBar->setUsageInfo("Apps", formatSize(m_appsUsage), "#3498DB",
|
||||
// (double)m_appsUsage / m_totalCapacity);
|
||||
// m_mediaBar->setUsageInfo("Media", formatSize(m_mediaUsage), "#2ECC71",
|
||||
// (double)m_mediaUsage / m_totalCapacity);
|
||||
// m_othersBar->setUsageInfo("Others", formatSize(m_othersUsage), "#F39C12",
|
||||
// (double)m_othersUsage / m_totalCapacity);
|
||||
// m_freeBar->setUsageInfo("Free", formatSize(m_freeSpace), "#BDC3C7",
|
||||
// (double)m_freeSpace / m_totalCapacity);
|
||||
// #else
|
||||
m_systemBar->setToolTip(
|
||||
QString("System: %1 (%2%)")
|
||||
.arg(formatSize(m_systemUsage))
|
||||
@@ -356,7 +357,6 @@ void DiskUsageWidget::updateUI()
|
||||
.arg(QString::number((double)m_freeSpace / m_totalCapacity * 100,
|
||||
'f', 1)));
|
||||
|
||||
#endif
|
||||
|
||||
// Hide segments with zero usage
|
||||
// m_systemBar->setVisible(m_systemUsage > 0);
|
||||
|
||||
@@ -65,19 +65,20 @@ private:
|
||||
QVBoxLayout *m_dataLayout;
|
||||
QWidget *m_diskBarContainer;
|
||||
QHBoxLayout *m_diskBarLayout;
|
||||
#ifdef Q_OS_MAC
|
||||
DiskUsageBar *m_systemBar;
|
||||
DiskUsageBar *m_appsBar;
|
||||
DiskUsageBar *m_mediaBar;
|
||||
DiskUsageBar *m_othersBar;
|
||||
DiskUsageBar *m_freeBar;
|
||||
#else
|
||||
/*FIXME: NSPopover bug */
|
||||
// #ifdef Q_OS_MAC
|
||||
// DiskUsageBar *m_systemBar;
|
||||
// DiskUsageBar *m_appsBar;
|
||||
// DiskUsageBar *m_mediaBar;
|
||||
// DiskUsageBar *m_othersBar;
|
||||
// DiskUsageBar *m_freeBar;
|
||||
// #else
|
||||
QWidget *m_systemBar;
|
||||
QWidget *m_appsBar;
|
||||
QWidget *m_mediaBar;
|
||||
QWidget *m_othersBar;
|
||||
QWidget *m_freeBar;
|
||||
#endif
|
||||
// #endif
|
||||
|
||||
QHBoxLayout *m_legendLayout;
|
||||
QLabel *m_systemLabel;
|
||||
|
||||
+2
-2
@@ -62,9 +62,9 @@ int main(int argc, char *argv[])
|
||||
QString gstPluginScannerPath =
|
||||
QDir::toNativeSeparators(frameworksPath + "/gst-plugin-scanner");
|
||||
|
||||
qputenv("DYLD_LIBRARY_PATH", frameworksPath.toUtf8());
|
||||
qputenv("GST_PLUGIN_PATH", gstPluginPath.toUtf8());
|
||||
qputenv("GST_PLUGIN_SYSTEM_PATH", gstPluginPath.toUtf8());
|
||||
qputenv("GST_PLUGIN_SCANNER_1_0", gstPluginScannerPath.toUtf8());
|
||||
qputenv("GST_PLUGIN_SYSTEM_PATH_1_0", gstPluginPath.toUtf8());
|
||||
#endif
|
||||
QCoreApplication::setOrganizationName("iDescriptor");
|
||||
// QCoreApplication::setOrganizationDomain("iDescriptor.com");
|
||||
|
||||
+13
-2
@@ -3,7 +3,18 @@
|
||||
#include <QDebug>
|
||||
#include <QMainWindow>
|
||||
|
||||
void setupMacOSWindow(QMainWindow *window)
|
||||
void setupMacOSWindow(QMainWindow *window) {
|
||||
window->setUnifiedTitleAndToolBarOnMac(true);
|
||||
|
||||
NSView* nativeView = reinterpret_cast<NSView*>(window->winId());
|
||||
NSWindow* nativeWindow = [nativeView window];
|
||||
|
||||
[nativeWindow setStyleMask:[nativeWindow styleMask] | NSWindowStyleMaskFullSizeContentView | NSWindowTitleHidden];
|
||||
[nativeWindow setTitlebarAppearsTransparent:YES];
|
||||
[nativeWindow center];
|
||||
}
|
||||
// TODO:remove
|
||||
void setupMacOSWindowOLD(QMainWindow *window)
|
||||
{
|
||||
|
||||
if (!window) {
|
||||
@@ -18,7 +29,7 @@ void setupMacOSWindow(QMainWindow *window)
|
||||
qWarning() << "setupMacOSWindow: native window is null";
|
||||
return;
|
||||
}
|
||||
|
||||
// TODO: implement theme switching from app settings
|
||||
// // Force dark mode
|
||||
// nsWindow.overrideUserInterfaceStyle = NSUserInterfaceStyleDark;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user