andlabs-ui/todo.md

6.6 KiB

important things:

  • NSComboBox scans the entered text to see if it matches one of the items and returns the index of that item if it does; find out how to suppress this so that it returns -1 unless the item was chosen from the list (like the other platforms)
  • Mac OS X forces items selected when changing the Combobox/Listbox lists; figure out how to inhibit this

super ultra important things:

  • add cgo build flags on OS X so binaries get built supporting 10.6 at least; the default is to build supporting the host platform at least, so 10.8 binaries crash on 10.6 with an illegal instruction during initial load (which crashes gdb too)
  • 10.6 also spits a bunch of NSNoAutoreleasePool() debug log messages even though I thoguht I had everything in an NSAutoreleasePool...
  • see if the Objective-C compiler ABI options can fix this whole ABI mess outlined in bleh_darwin.m
  • formalize what happens if Modifiers by themselves are held
    • OS X: find out if multiple DIFFERENT modifiers released at once produces multiple events
    • in general, figure out what to do on multiple events, period
    • OS X: the behavior of Modifiers and other keys is broken: keyDown:/keyUp: events stop being sent when the state of Modifiers changes, which is NOT what we want
      • [13:44] pietro10: nope, the system decides

        • welp; this changes everything
  • OS X: handle Insert/Help key change in a sane and deterministic way
    • will need old and new Mac keyboards...
  • make sure MouseEvent's documentation has dragging described correctly (both Windows and GTK+ do)
  • pin down whether or not a click event gets sent if this click changes from a different window to the one with the Area
  • double-check to make sure MouseEvent.Held[] is sorted on all platforms
  • cap click count to 2 on all platforms
  • the windows build appears to be unstable:
    • 64-bit crashes in malloc in wine with heap corruption warnings aplenty during DLL loading; in windows 7 it works fine
    • 32-bit: it works, but if I save the class name converted to UTF-16 beforehand, wine indicates that the class name is replaced with the window title, so something there is wrong...
  • david wendt is telling me he's getting frequent crashes on his end with the GTK+ amd64 build... TODO re-evaluate; I think I fixed them all ages ago now
  • GTK+: stderr is flooded with
(test:17575): Gdk-CRITICAL **: gdk_device_ungrab: assertion 'GDK_IS_DEVICE (device)' failed

(test:17575): Gtk-CRITICAL **: gtk_device_grab_remove: assertion 'GDK_IS_DEVICE (device)' failed
figure out why

other things: