lp:~suv-lp/inkscape/osxmenu

Created by su_v and last modified

This branch has been compiled and tested with
- GTK+/Quartz 2.24.28, gtkmm 2.24.4
- GTK+/Quartz 3.16.4, gtkmm 3.16.0 (experimental)
- Glib 2.44.1, glibmm 2.44.0
- cairo 1.14.2
- gtk-mac-integration 2.0.8
on OS X 10.7.5.

Known issues (r12922):
======================
- Canvas: redraw issues (GTK2), flickering (GTK3)
  Screen recordings: https://inkscape.org/en/~su_v/galleries/osxmenu-known-issues/
- Menubar: radio menu items in sub-menus are not updated on change
  (View -> Display mode, View -> Color Display mode)
- Menubar: check menu items don't sync with keyboard shortcuts (same verb)
  (also affects Unity's global menubar, see bug #1136344)
- Disabled dialogs:
  SVG Font Editor (crashes, see bug #1116468)
- Usability: 'File > Open Recent' on the global menubar has no tooltips
  (missing info about full path name of hovered item)

... and very likely countless more.

Recent fixes (osxmenu):
=======================
Temporary workarounds for bug #1046068:
- bundled Python-based script extensions no longer prompt with stderr via
  GUI when processing clipboard content on application quit
- no tracebacks from failed UniConvertor attempts to convert clipboard
  content (e.g. from symbols dialog) (plt, sk1)
- output formats which depend on layers are disabled for clipboard content
  (no layer information on the clipboard) (xcf, zip, sif, tar)
New in r12798:
- Proxy icons in window title bar for easy access to file via Finder
  (contributed by Liam P. White; based on OS X port of Gedit 3.x)
New in r12804:
- About Inkscape, Preferences, Input Devices moved to application menu
  (contributed by Liam P. White)
New in r12839:
- experimental was merged into trunk:
  ° Internal resolution changed from 90dpi to 96dpi
  ° Templates: cleaned-up defaults, new procedural templates
  ° New drawing modes (pen, pencil): spirolive, bspline
  ° New LPEs: fillet/chamfer, roughen, simplify, show_handles,
              lattice2, perspective/envelope
  ° New (from ponyscape): Objects dialog, Selection sets
  ° New LPEs (from ponyscape): Attach path, Bounding Box, Ellipse by 5 pts,
              Fill between many, Fill between strokes, Join type,
              Taper stroke
New in r12900:
- support for experimental GTK3 app bundle added
New in r12902:
- new packages won't include custom theming options by default
New in r12908:
- update for mesh gradient definitions. For details please read
  http://article.gmane.org/gmane.comp.graphics.inkscape.devel/45586
  Note: this code change breaks existing Inkscape SVG files with mesh
  gradients. The perl script attached to the message will update files to
  the new spec.

Dependencies: latest osxmenu packages
- include patched cairo 1.14.2 to work around a regression with canvas text
  introduced in the Quartz backend of cairo 1.14.2. For details see
  https://bugs.freedesktop.org/show_bug.cgi?id=84324#c13
- include freetype build with old freetype CFF engine driver enabled
  (workaround for bug #1396582)

Screenshots:
============
Screenshot (r12549, GTK2, OS X 10.7.5 Lion):
https://www.dropbox.com/sh/ztmjox8t96gvlfc/2Q7y_mmRnn/inkscape-trunk-osx-menu-1.png
Screenshot (r12574, GTK2, OS X 10.9 Mavericks) - thx @AndyFitz
https://www.dropbox.com/s/kpm6lf2sdg8c6re/wowitworks.png
Screenshot (r12607, GTK2, OS X 10.7.5 Lion) with dark theme, symbolic icons:
https://www.dropbox.com/s/2w0p5vqhw6kkvlm/inkscape-trunk-osx-menu-6-dark-theme-symbolic-icons.png
Screenshots (r12798, GTK2, Mac OS X 10.5.8 Leopard) proxy icon (thx @Liam P. White):
http://sta.sh/2ht04ab38lw

Testing:
========
If you want to help testing experimental unstable builds, contact me via my Launchpad page:
<https://launchpad.net/~suv-lp/+contactuser>
or download the latest build from
<https://inkscape.org/en/~su_v/galleries/osxmenu-r12922/>
(DMG available, requires OS X 10.7 Lion or later). New builds are uploaded about once a week.

*****
PLEASE NOTE:

1. The latest official OS X package for stable Inkscape 0.91 from <https://inkscape.org> does work on OS X 10.10 Yosemite and is recommended for regular users. Don't forget to reinstall XQuartz after upgrading to Yosemite. The first launch of Inkscape might take longer than expected due to fontconfig rebuilding all font caches.

2. Please don't share direct links to available osxmenu downloads - if needed, share the link to this page here: the file name of the DMG changes with each upload, and the download location of the unofficial precompiled osxmenu binaries might change any time.

3. GTK3 builds of Inkscape at this stage are not considered to be fully usable (on any platform) - Inkscape has not migrated to GTK3 yet. Please get the GTK2 build if you don't know what GTK3 is about, or if you have no intention to help with the GTK3 migration or to monitor any progress of Inkscape trunk in this regard.
*****

Important: the osxmenu packages provided for download contain experimental unstable builds based on recent trunk with unreviewed changes for packaging and OS integration. They are not recommended for use in production environments.

Related blueprints:
===================
https://blueprints.launchpad.net/inkscape/+spec/better-osx-integration
https://blueprints.launchpad.net/inkscape/+spec/mac-os-native
https://blueprints.launchpad.net/inkscape/+spec/inkscape-quartz

Bugs addressed (fixed or obsolete):
===================================

Packaging
Bug #1386080 DBus daemon settings bound to compilation machine
Bug #1302849 Mac build doesn't have an Application Category
Bug #1288672 inkscape can't find fonts from /System/Library/Fonts on OS X 10.9
Bug #1216793 Illustrator (AI) from Rhino never import into Inkscape
Bug #956282 Unicode characters from PDF import
Bug #781288 Location of Inkscape files (config, cache, log, templates, etc)
Bug #602204 [osx] update the bundled python modules to current versions
Bug #532765 osx packaging: issues with fixlib() in osx-app.sh
Bug #396322 Allow additional dictionaries for the spell checker on OS X
Bug #181639 Command-line invocation on Mac OSX partially broken
Bug #171877 OSX: Use of Library/Application Support
Bug #168050 OSX: Inskcape startup directory name cannot contain & or ƒ

Quartz
Bug #1097539 Activate the use of Meta|Command|WinFlag key for Mac Menu Accelerators
Bug #1097009 Better integration with Mac OS X OS
Bug #1096996 Refreshed build system for Mac OS X
Bug #1045963 [inkscape-quartz] add gtk-themes support
Bug #1045959 [inkscape-quartz] add DnD, 'Open with…' support for Dock & Finder icon
Bug #1043279 [inkscape-quartz] gtk-mac-bundler issues
Bug #1043266 [inkscape-quartz] gtk-mac-integration support
Bug #1042597 [inkscape-quartz] gtk-mac-bundler: include python modules (and runtime) for extensions
Bug #738973 Issues with inkscape-quartz blueprint
Bug #738947 Use ige-mac-bundler to package the GTK/Quartz version of Inkscape for OSX
Bug #528232 Mac OS X: X11 is launched at inkscape aqua startup
Bug #438603 [Gtk+/Quartz] Keyboard shortcuts are not mapped to command key

Fonts
Bug #408653 Inkscape font: Courier -> Sans
Bug #408190 Using Helvetica Normal appears to instead use Helvetica Bold for display on Mac OS X

X11 (obsolete)
Bug #1244397 OS X Mavericks/XQuartz: limited support for multi-monitor setups
Bug #878368 Trying to open inkscape version 0.48.2 it crash the x11 on my Mac OS X ver. 10.5.8 .
Bug #793227 [OSX] can't launch inkscape from the console (Inkscape.app)
Bug #625668 OS X System Font No Longer Smoothed In 0.48
Bug #388424 inkscape unbelievably slow
Bug #383456 [OS X] launch Inkscape with a login shell
Bug #307005 [OS X] copy & paste inserts a bitmap copy instead of the vector object
Bug #187531 alert the user about X11.app stealing some modifier keys
Bug #172064 Remove X11 dependency for Mac OS X
Bug #167290 OSX: ALT stolen by shortcuts, cannot type special characters

Obsolete with trunk
Bug #365567 import from open clip art crashes Inkscape (OS X)
Bug #171935 OSX Don't close the application when closing Inkscape window

Other
Bug #168244 [packaging] image tag does not find SVG source

Bugs to test (TODO):
====================

Bug #1363998 trunk: focus indicator for dockable dialogs introduced regressions with GTK2/Quartz (rev >= 11377)
Bug #1024344 Migrate OS X port of Inkscape to lcms2
Bug #962941 Segmentation fault when converting a particular SVG file to PNG
Bug #943148 New 'Import Clip Art…' dialog in trunk fails on Mac OS X
Bug #846630 Missing file type bindings on OSX
Bug #623640 inkscape 0.48 crashes on startup in colorprofile_get_system_profile_handle()
Bug #546934 Mac OS X AQUA: clipboard doesnt work
Bug #531859 Mac OS X: AQUA crashes when switching language
Bug #421199 Does not display Devanāgarī conjuncts
Bug #381540 Paste randomly invokes PDF import
Bug #282017 [MacOSX] Cannot input Japanese text
Bug #172025 Scrollbar behavior
Bug #167191 no horizontal scroll on OS X

Language
Bug #617079 Turkish menu bar, I need English
Bug #488120 UI language changing gradually to Greek
Bug #476678 Mac OS X: Fails to get locale in Japanese
Bug #349825 Download Current Mac Version is French Only!

Open bugs:
==========

Bug #1302627 GTK+/Quartz: 'de-maximize' fails for documents opened in maximized state (incl. new documents)
Bug #1216795 Inkscape UI is pixelated on Retina MacBooks
Bug #1116468 Inkscape (GTK+/Quartz): crash in SVG Font Editor (stable & trunk)
Bug #1049455 Kerning pairs not working in previews (Windows, Quartz)
Bug #1046068 Inkscape (GTK+/Quartz) calls output extensions or crashes when quitting while clipboard not empty
Bug #546934 Mac OS X AQUA: clipboard doesnt work
Bug #439851 Mac OS X: Aliases are not resolved
Bug #226782 Ability to open remote SVGs
Bug #191644 Inkscape should not use fonts disabled in FontBook
Bug #187852 Use non-generic drive icon for dmg used in Mac OS X install
Bug #168316 OSX: Inkscape can't be run from a directory containing '/'s

************
NOTE
************
Based on comments like the following about the scope of the 'gtk-mac-integration' library:

«I will not add API to gtk-mac-integration. While it works with Gtk3, Gtk3 also offers more direct integration with the Mac menus which doesn't require gtk-mac-integration. That's the direction that project developers should be taking: Upgrading to Gtk3 with GMenuModel & GMenu from GIO.»
<https://bugzilla.gnome.org/show_bug.cgi?id=708513#c4>

it seems to me that using gtk-mac-integration with inkscape is kind of a "dead end" with regard to future development goals (migration to GTK3), and further developer efforts should be put into the GTK3 port of inkscape directly (AFAIU recent changes and deprecations in Glib and GTK+ 3.12 are likely to require major refactoring of Inkscape's code anyway).
************

Get this branch:
bzr branch lp:~suv-lp/inkscape/osxmenu
Only su_v can upload to this branch. If you are su_v please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
su_v
Project:
Inkscape
Status:
Abandoned

Recent revisions

12922. By su_v

Packaging: change_theme - default to Adwaita; reduce available options

12921. By su_v

Packaging: update inclusion of optional custom theme resources

12920. By su_v

Packaging: cleaned-up osxmenu symbolic icons (WIP)

12919. By su_v

merge from trunk (r14202)

12918. By su_v

Packaging: no longer override harfbuzz shaper (needs more testing)

12917. By su_v

Packaging: include additional python modules: py-serial, py-reportlab

12916. By su_v

merge from trunk (r14192)

12915. By su_v

merge from trunk (r14151)

12914. By su_v

merge from trunk (r14129)

12913. By su_v

merge from trunk (r14057)

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:~inkscape.dev/inkscape/trunk
This branch contains Public information 
Everyone can see this information.