summaryrefslogtreecommitdiff
path: root/area_unix.go
AgeCommit message (Collapse)Author
2015-12-11LET'S GET THIS FINAL REWRITE EVER STARTEDPietro Gagliardi
2014-10-18Merged new container/sizing stuff.Pietro Gagliardi
2014-10-02go fmt. Precursor to bug report filing.Pietro Gagliardi
2014-09-02Removed some debugging spiel.Pietro Gagliardi
2014-08-30...in with the new.Pietro Gagliardi
2014-08-30Out with the old...Pietro Gagliardi
2014-07-02Moved it all back; the preemptive multitaksing during an event handler kills ↵Pietro Gagliardi
us on all platforms. Going to have to restrict ALL GUI accss to happening from one t hread, so going to need to drop uitask entirely and have just a start() callback for startup code and a post() function for posting requests to windows (like channel sends but into a perpetual buffer).
2014-07-02Moved everything out of the way pending rewrite.Pietro Gagliardi
2014-06-10More go fmt.Pietro Gagliardi
2014-06-07Documented click event on activate behavior in the GTK+ backend.Pietro Gagliardi
2014-06-03Removed TODOs about device coordinates in the GTK+ backend; that has been ↵Pietro Gagliardi
resolved.
2014-06-02Removed a leftover TODO note in area_unix.go.Pietro Gagliardi
2014-06-02Removed some more commented-out code from ages ago from area_unix.go.Pietro Gagliardi
2014-06-02Applied the new Area event behavior to the GTK+ backend. Yay, loads of TODOs ↵Pietro Gagliardi
resolved in one fell swoop!
2014-06-01Verified the previous commit.Pietro Gagliardi
2014-06-01Changed Unix Area WM_ACTIVATE equivalent handling to use enter-notify-event ↵Pietro Gagliardi
and leave-notify-event instead of focus-in-event and focus-out-event as suggested by tristan in irc.gimp.net/#gtk+.
2014-05-29Implemented the new Modifiers behavior on the GTK+ backend. In addition, ↵Pietro Gagliardi
removed some code commented out long ago and restructured a few functions for the change.
2014-05-23Attempted to add focus change support to the new GTK+ high-order click code ↵Pietro Gagliardi
like we do on Windows; it isn't working quite yet but I'll mark it as a TODO for now.
2014-05-23Added custom double-click/triple-click/higher-order click handling to GTK+ ↵Pietro Gagliardi
Areas.
2014-05-19Removed the extra #cgo directives from the Unix files. cgo collects ↵Pietro Gagliardi
directives from ALL files, rather than using each file's directive individually, so having them combined like this is pointless. Instead, the #cgo directives are (or is, since there's only one) in uitask_unix.go. Will do the same for Mac next; this will help since we're going to add a CFLAGS value afterward.
2014-05-17Fixed variable names in Area drawing code on Unix to reflect that ↵Pietro Gagliardi
image.Rectangle is point-to-point, not origin/size like on Mac OS X. Windows was already fine; it just uses "left, top, right, and bottom" instead of "x0, y0, x1, and y1".
2014-05-16Added (most of) the Super and Meta changes for GTK+. The Modifiers were ↵Pietro Gagliardi
already in the correct order.
2014-05-07Completed extending of mouse buttons to the system's limit; defined (as ↵Pietro Gagliardi
undefined) the mouse drag behavior for buttons >= 3; implemented all that on the GTK+ side, and decided to have MouseEvents.Held[] be sorted (documentation only for now; need to check the code to make sure it follows). Good Lord...
2014-04-27Cleaned up/removed some TODOs in area_unix.go.Pietro Gagliardi
2014-04-14Added click-to-focus to GTK+ Areas and documented that click-to-focus ↵Pietro Gagliardi
happens; also TODOs related to that.
2014-04-12Switched to ARGB drawing in Areas on GTK+.Pietro Gagliardi
2014-04-10Fixed Area mouse events being sent when something happens outside the Area ↵Pietro Gagliardi
itself.
2014-04-09Fixed Area drawing assuming the first pixel of the *image.NRGBA is at i.Pix[0].Pietro Gagliardi
2014-04-01Got rid of gtkWidget and changed to using *C.GtkWidget everywhere. This gets ↵Pietro Gagliardi
rid of some of the casting functions and invocations of said functions, and only adds sysdata_unix.go to the cgo list.
2014-03-29Documented that the clip area in AreaHandler.Paint() more properly and ↵Pietro Gagliardi
indicate that it is cleared on each AreaHandler.Paint() call; (try to) implement that on Windows (GTK+ does it for us; noted that as well).
2014-03-29Finished re-adding the numeric keypad keys and fixing up the GTK+ Area ↵Pietro Gagliardi
implementation to handle the new KeyEvent. Everything seems to work on this end...
2014-03-29Re-added the numeric keypad keys to ExtKey and removed predefkeys in ↵Pietro Gagliardi
area_unix.go since all are now being handled.
2014-03-29Added the proper provision for numeric keypad entry.Pietro Gagliardi
2014-03-29Updated the GTK+ implementation and test programs to reflect the new ↵Pietro Gagliardi
KeyEvent setup.
2014-03-27Added a flag to AreaHandler.Key()/Mouse() to indicate that a repaint is ↵Pietro Gagliardi
needed after that event has been handled. (Having Repaint() as a method deadlocked for the same reason resizing deadlocked before.)
2014-03-27The latest go tip fixes cgo to not be confused by typedefs of incomplete ↵Pietro Gagliardi
types like cairo_t; remove the hack to make GTK+ builds work in the meantime. As a side effect, package ui now requires go tip to build; reflected this in the README.
2014-03-26Printed the hardware_keycode on GTK+ Area key events... something came up so ↵Pietro Gagliardi
I think I might be able to do what I originally wanted to do with keyboards... also more TODOs.
2014-03-26Fixed import formatting on area_unix.go. I'm rereading the GLFW source; it ↵Pietro Gagliardi
makes some interesting assumptions that might allow me to get a better solution to this whole keystroke ordeal after all... if I'm provided with irrefutable evidence.
2014-03-23Fixed the shrinking not working: the Cairo clip rect apparently can fall ↵Pietro Gagliardi
outside the actual size of the widget. (I did notice this before.)
2014-03-23Added Area resizing. Everything mostly works, but not making things smaller...Pietro Gagliardi
2014-03-23Added GDK_KEY_Alt_L/R to the modifier key handling in GTK+ key events.Pietro Gagliardi
2014-03-23Fixed modifier keys in GTK+ not being registered by KeyEvent on first press.Pietro Gagliardi
2014-03-23Added the GTK+ implementation of Area keyboard events. Seems to work fine ↵Pietro Gagliardi
for now...
2014-03-21Finished writing what I need for the GTK+ key equivalency test: display of ↵Pietro Gagliardi
GDK_KEYMAP_A and GDK_KEYMAP_a to see if I can do what I want to do (map back).
2014-03-21Added code to the GTK+ Area to print the GdkKeymapKeys for a given key ↵Pietro Gagliardi
value. For GTK+/X11 it appears that we can just use the keyval field... that just leaves GTK+/Wayland (see previous commit). If the same applies, we'll need to see if I can feed artificial keycodes in and it'll still work as expected...
2014-03-18Added the framework code for handling keyboard events in GTK+ Areas. Oh ↵Pietro Gagliardi
boy... this is gonna hurt (as I will describe shortly).
2014-03-16Changed Area to use a delegate handler object that implements the new ↵Pietro Gagliardi
AreaHandler interface for handling events. Also updated the GTK+ backend with this change, and made a few more tweaks to the documentation in area.go.
2014-03-16Split out includes of <gtk/gtk.h> into a new header file so the GTK+ ↵Pietro Gagliardi
versioning macros can be included in all Go files, not just area_unix.go.
2014-03-16Attempted to fix non-handling of the Alt key by having the GDK window's ↵Pietro Gagliardi
display's keymap used instead; it didn't work.
2014-03-15Added (untested) GTK+ implementation of Area's mouse events.Pietro Gagliardi