about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPaweł Jastrzębski <[email protected]>2013-10-12 17:54:21 +0200
committerPaweł Jastrzębski <[email protected]>2013-10-12 17:54:21 +0200
commitfceac407eea6752566ff6fc10ea59a886e263a81 (patch)
tree122cdaa1acf6ee60b58e1f1b7f5039c2763d8117
parentGUI update (diff)
downloadkcc-fceac407eea6752566ff6fc10ea59a886e263a81.tar.gz
kcc-fceac407eea6752566ff6fc10ea59a886e263a81.tar.bz2
kcc-fceac407eea6752566ff6fc10ea59a886e263a81.zip
Updated OSX setup
-rw-r--r--README.md1
-rw-r--r--other/QT-4.8.5-QListWidget.patch24
-rw-r--r--other/qt.conf2
-rw-r--r--setup.py5
4 files changed, 16 insertions, 16 deletions
diff --git a/README.md b/README.md
index 8ae29c0..f4a5e00 100644
--- a/README.md
+++ b/README.md
@@ -42,6 +42,7 @@ You can find the latest released binary at the following links:
 - Python 2.7 - Included in MacOS and Linux, follow the [official documentation](http://www.python.org/getit/windows/) to install on Windows.
 - PyQt4 - Please refer to official documentation for installing into your system.
 - [Pillow](http://pypi.python.org/pypi/Pillow/) 2.2.1+ - For comic optimizations. Please refer to official documentation for installing into your system.
+- **To build OS X release a modified QT is required: **[Patch](https://github.com/ciromattia/kcc/blob/master/other/QT-4.8.5-QListWidget.patch)
 
 ## USAGE
 
diff --git a/other/QT-4.8.5-QListWidget.patch b/other/QT-4.8.5-QListWidget.patch
index 5bb9688..130e562 100644
--- a/other/QT-4.8.5-QListWidget.patch
+++ b/other/QT-4.8.5-QListWidget.patch
@@ -1,37 +1,35 @@
---- qt-4.8.5/src/gui/kernel/qwidget_mac.mm 2011-12-15 10:38:21.000000000 -0800
-+++ qt-4.8.5/src/gui/kernel/qwidget_mac.mm   2012-09-18 17:17:03.000000000 -0700
-@@ -1,22 +1,41 @@
-
-@@ -4684,15 +4703,14 @@
+--- qt-4.8.5/src/gui/kernel/qwidget_mac.mm	2013-06-07 07:16:59.000000000 +0200
++++ qt-4.8.5-fix/src/gui/kernel/qwidget_mac.mm	2013-10-11 23:00:15.000000000 +0200
+@@ -4715,15 +4715,13 @@ void QWidgetPrivate::scroll_sys(int dx, 
      }
-
+ 
      // Scroll the whole widget if qscrollRect is not valid:
 -    QRect validScrollRect = qscrollRect.isValid() ? qscrollRect : q->rect();
 -    validScrollRect &= clipRect();
 +    QRect validScrollRect = qscrollRect.isValid() ? qscrollRect : QRect(0, 0, q->width(), q->height());
-
+ 
      // If q is overlapped by other widgets, we cannot just blit pixels since
      // this will move overlapping widgets as well. In case we just update:
      const bool overlapped = isOverlapped(validScrollRect.translated(data.crect.topLeft()));
      const bool accelerateScroll = accelEnv && isOpaque && !overlapped;
      const bool isAlien = (q->internalWinId() == 0);
 -    const QPoint scrollDelta(dx, dy);
-+
-
+ 
      // If qscrollRect is valid, we are _not_ supposed to scroll q's children (as documented).
      // But we do scroll children (and the whole of q) if qscrollRect is invalid. This case is
-@@ -4714,7 +4732,6 @@
+@@ -4745,7 +4743,6 @@ void QWidgetPrivate::scroll_sys(int dx, 
          }else {
              update_sys(qscrollRect);
          }
 -        return;
      }
-
+ 
  #ifdef QT_MAC_USE_COCOA
-@@ -4731,6 +4748,7 @@
+@@ -4762,6 +4759,7 @@ void QWidgetPrivate::scroll_sys(int dx, 
      // moved when the parent is scrolled. All directly or indirectly moved
      // children will receive a move event before the function call returns.
      QWidgetList movedChildren;
 +    const QPoint scrollDelta(dx, dy);
      if (scrollChildren) {
-         QObjectList children = q->children();
\ No newline at end of file
+         QObjectList children = q->children();
+ 
diff --git a/other/qt.conf b/other/qt.conf
deleted file mode 100644
index bbb0228..0000000
--- a/other/qt.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-[Paths]
-Plugins = DumbHackThatFixPY2APP
diff --git a/setup.py b/setup.py
index 050df35..82737da 100644
--- a/setup.py
+++ b/setup.py
@@ -23,7 +23,10 @@ if platform == "darwin":
                 argv_emulation=True,
                 iconfile='icons/comic2ebook.icns',
                 includes=['PIL', 'sip', 'PyQt4', 'PyQt4.QtCore', 'PyQt4.QtGui', 'PyQt4.QtNetwork'],
-                resources=['other/qt.conf', 'LICENSE.txt', 'other/Additional-LICENSE.txt'],
+                excludes=['PyQt4.QtDeclarative', 'PyQt4.QtDesigner', 'PyQt4.QtHelp', 'PyQt4.QtMultimedia',
+                          'PyQt4.QtOpenGL', 'PyQt4.QtScript', 'PyQt4.QtScriptTools', 'PyQt4.QtSql', 'PyQt4.QtSvg',
+                          'PyQt4.QtXmlPatterns', 'PyQt4.QtXml', 'PyQt4.QtWebKit', 'PyQt4.QtTest'],
+                resources=['LICENSE.txt', 'other/Additional-LICENSE.txt'],
                 plist=dict(
                     CFBundleName=NAME,
                     CFBundleShortVersionString=VERSION,