Skip to main content

Differences between macOS and Windows

Because we didn't use a cross-platform compatibility layer in the development of FMPerception, there are technological and behavioral differences between the Mac and Windows versions of FMPerception. The following list will change over time as new features are added, and old differences are erased or adjusted.

The Search/Filter Widget

While OS X includes a "search" interface widget that is independent of a text field, the WPF display tech (used for the Windows interface) contains only a text field. (For Windows techies, yes, there is always "composition", but compositing an equivalent of the OS X search widget has proven... non-trivial.) So, the embedded popup for changing the filter type in the Mac search widget had to be migrated outside the text field into the nearby radio buttons. Additionally, the Mac search widget has an option to automatically recall previous searches (at least until the document is closed). This functionality has not found an equivalent within FMPerception for Windows.

The Column Style Browser

The Mac version of FMPerception contains 2 different ways of navigating multiple levels of the hierarchy at once: the column style browser and the outline style browser. These are both native interface widgets, and supporting the two side by side was relatively simple.
The Windows WPF interface toolkit does not contain an equivalent of the column style browser, and hand coding one would have been terribly complicated. Additionally, users of the Mac version of FMPerception who have a strong Windows background have generally shown a marked preference for the outline style browser.

Search in Web View

The Detail sidebar of FMPerception was implemented using a web viewer. In Windows, using a web viewer automatically brings support for searching in the web viewer (just click in the viewer and hit Control-F to search within the contents). Custom support for this will likely be added to the OS X version at some point.

The Mac version displays a breadcrumb trail at the bottom of the Results list which allows for targeted migration back up the currently selected hierarchy path. WPF for Windows does not have a built-in equivalent, and a hand-coded variant has not been implemented.

Fault-Tolerant XML Parser

The OS X and Windows version use 2 independent technologies for XML parsing. For the most part, the behaviors of these two technologies are virtually identical. However, the OS X version has the option to be much more fault-tolerant. FileMaker will periodically fail to encode characters for which XML requires encoding. For DDRs exhibiting this behavior, the Mac version may succeed at opening the file, where the Windows version will fail.

Crash Reporting

Behind the scenes, 2 different technologies are used for crash reporting. OS X uses Crashlytics. Windows uses NBug. Both are open source.

Updating

FMPerception OS X uses Sparkle to handle automatic updates (and a library called LetsMove to prompt the user to move the application to the ~/Applications folder). This also includes support for displaying release notes with the update prompt. Sparkle does not have a function to handle initial installation.

FMPerception for Windows uses Microsoft's ClickOnce technology to handle initial installation and automated updates. It does not have support for displaying release notes before the update. Eventually, I hope to migrate FMPerception Windows to WinSparkle to gain additional congruence with the Mac version.