Commit Graph

258 Commits

Author SHA1 Message Date
Camilla Berglund
2d1b835711 Added a conservative set of key modifiers. 2013-05-22 21:56:14 +02:00
Camilla Berglund
7f2eb7b15b New joystick API. 2013-05-22 21:56:14 +02:00
Camilla Berglund
d82f068f7e Reintroduced manual framebuffer config selection.
The default behavior of WGL, EGL and GLX is to choose a config that has
/at least/ the specified number of bits, whereas the GLFW 2 behavior was
to choose the closest match with very few hard constraints.  Moving the
responsibility of finding the supported minimum values to the client was
problematic, as there's no way to enumerate supported configurations,
forcing the client to perform multiple (and slow) window/context
creation attempts.  Not even the currently set defaults (24-bit color
and depth, 8-bit stencil) is universally supported, as bug reports show.
2013-05-13 15:58:36 +02:00
Camilla Berglund
0046b210e2 Merged hints into library struct. 2013-04-24 23:47:08 +02:00
Camilla Berglund
7405bc48cd Added proper monitor comparison. 2013-04-22 14:44:45 +02:00
Camilla Berglund
57751a5494 Added initial NSScreen integration.
This (tentatively) fixes the bug of full screen windows on OS X always
opening on the primary monitor.
2013-04-17 23:11:04 +02:00
Camilla Berglund
f06a700307 Renamed support directory to deps. 2013-04-17 15:42:21 +02:00
Camilla Berglund
008376d450 Restore cursor position on capture mode exit. 2013-04-16 20:46:58 +02:00
Camilla Berglund
49db3b2a9e Formatting. 2013-04-08 15:24:24 +02:00
NathanSweet
8e2e7b37a1 Undecorated window support on win/mac/linux. 2013-04-08 15:24:24 +02:00
Camilla Berglund
129e94da2e Changed cursor pos to double. 2013-04-04 16:29:40 +02:00
Camilla Berglund
71d2b574f8 Converted docs to hybrid Markdown. 2013-03-12 15:33:05 +01:00
Camilla Berglund
d0e4c874c3 Moved sticky state. 2013-03-01 15:18:53 +01:00
Camilla Berglund
182e0afe25 Made character unsigned. 2013-02-25 17:02:28 +01:00
Camilla Berglund
7b3783abe2 Made glfwGetMonitorPos immediate. 2013-02-20 18:15:03 +01:00
Camilla Berglund
a591cdeba6 Removed platform-specific resources from monitor. 2013-02-20 18:15:03 +01:00
Camilla Berglund
719b60dd2b Added macros for library initialization check. 2013-02-20 18:15:03 +01:00
Camilla Berglund
1961cecb7c Made glfwGetPrimaryMonitor always return a handle.
Replaced the primary flag with the convention of putting the primary
monitor first in the returned array.
2013-02-17 19:11:16 +01:00
Camilla Berglund
253e0d6b23 Added GLFW_REPEAT. 2013-02-15 13:21:11 +01:00
Camilla Berglund
6f8084f061 Documentation work.
Enabled Doxygen tree view, added CMake options for native and internal
modules, improved internal and native documentation.
2013-02-14 17:26:27 +01:00
Camilla Berglund
92a71e07d3 Made gamma ramp functions per-monitor. 2013-02-12 14:03:51 +01:00
Camilla Berglund
7c1932381b Reintroduced glfwGetWindowPos, glfwSetWindowPos. 2013-02-11 19:43:08 +01:00
Camilla Berglund
a910f53be2 Made glfwGetGammaRamp act directly. 2013-02-04 12:33:10 +01:00
Camilla Berglund
2cea6e37cf Removed glfwGetScrollOffset.
Scroll events do not represent an absolute state, but rather an interpretation
of a relative change in state, like character input.  So, like character input,
there is no sane 'current state' to return.  The here removed solution, that of
accumulating an offset since the last call to event processing, is at best
mildly confusing.  If a user wishes to implement this solution, it is better for
it to be explicit in client code than implicit in GLFW calls.
2013-02-04 12:33:09 +01:00
Camilla Berglund
c17a7dd464 Made glfwGetWindowSize immediate.
Conflicts:
	src/internal.h
2013-02-04 12:33:09 +01:00
Camilla Berglund
38aef53b0c Shortened window struct member. 2013-01-25 00:42:45 +01:00
Camilla Berglund
52a79c6f3b Added error for no selected client library. 2013-01-25 00:41:02 +01:00
Camilla Berglund
355af57b91 Renamed internal macro to match conventions. 2013-01-17 18:59:35 +01:00
Camilla Berglund
f479b1920f Formatting of internal.h. 2013-01-17 18:59:35 +01:00
Camilla Berglund
e51e049ad5 Added error for no selected client library. 2013-01-16 06:38:17 +01:00
Camilla Berglund
8d60214fac Put window callbacks in a substruct. 2013-01-15 21:34:26 +01:00
Camilla Berglund
a8ea120cae Removed internal fbconfig enum and selection. 2013-01-15 20:00:27 +01:00
Camilla Berglund
0517a82467 Added support for GLESv1_CM and GLESv2 client libraries. 2013-01-15 19:09:43 +01:00
Camilla Berglund
46c1e4028f Begun integrating mode setting and monitor API. 2013-01-03 17:56:59 +01:00
Camilla Berglund
1bc91bfe5b Formatting. 2013-01-02 17:07:04 +01:00
Camilla Berglund
3817771a40 Started adding documentation for internal APIs. 2013-01-02 03:42:20 +01:00
Camilla Berglund
b72a97d531 Renamed global struct and substructs.
Renamed _glfwLibrary to _glfw and made all substructs lower-case, making
global variable names easier to read and type.  Partially inspired by the
internal naming conventions of glwt.
2013-01-02 01:44:57 +01:00
Camilla Berglund
4305c76049 Removed monitor user pointer. 2013-01-02 00:41:37 +01:00
Camilla Berglund
835f00eb10 Merge branch 'master' into multi-monitor
Conflicts:
	include/GL/glfw3.h
	readme.html
	src/fullscreen.c
	src/internal.h
	src/window.c
	src/x11_fullscreen.c
2012-12-31 21:13:10 +01:00
Camilla Berglund
1790194828 Renamed _glfwInputError and moved to event API. 2012-12-31 21:05:28 +01:00
Camilla Berglund
02598570cb Removed unused struct member. 2012-12-31 04:12:16 +01:00
Camilla Berglund
cf42282cfb Added generic video mode selection. 2012-12-31 03:04:04 +01:00
Camilla Berglund
52dac79219 Ripped out horribly broken refresh rate mess. 2012-12-31 02:06:19 +01:00
Camilla Berglund
8db1528c74 Added explicit disabling of platform glext.h. 2012-12-30 23:19:38 +01:00
Camilla Berglund
23c6def880 Merge branch 'master' into multi-monitor
Conflicts:
	src/cocoa_window.m
	src/init.c
	tests/iconify.c
	tests/reopen.c
2012-12-30 22:18:15 +01:00
Camilla Berglund
ea1ddfd7a4 Removed declarations of removed functions. 2012-12-30 02:28:52 +01:00
Camilla Berglund
9af61d06cf Removed return value of _glfwPlatformTerminate. 2012-12-30 01:15:48 +01:00
Camilla Berglund
b66e1de97c Added saving of monitor mode count. 2012-12-27 18:37:55 +01:00
Camilla Berglund
73cdc34df7 Merge branch 'master' into multi-monitor
Conflicts:
	CMakeLists.txt
	readme.html
	src/CMakeLists.txt
	src/cocoa_platform.h
	src/win32_platform.h
	src/x11_platform.h
	tests/events.c
2012-12-02 20:52:03 +01:00
Camilla Berglund
5da8ed250a Cleanup of backend option strings. 2012-12-02 19:01:20 +01:00
Camilla Berglund
14e71833bd Merge branch 'master' into EGL 2012-12-02 17:11:17 +01:00
Camilla Berglund
821997ad55 Merge branch 'master' into joystickname 2012-12-02 16:36:44 +01:00
Camilla Berglund
da02844457 Merge branch 'master' into EGL
Conflicts:
	readme.html
	src/win32_platform.h
	src/x11_platform.h
2012-12-02 16:17:59 +01:00
Camilla Berglund
69a900592e Added explicit support for sRGB framebuffers. 2012-12-02 16:10:00 +01:00
Camilla Berglund
1a3d47d06d Added window position callback. 2012-11-30 13:58:05 +01:00
Camilla Berglund
41bc0d18f4 Merge branch 'master' into multi-monitor
Conflicts:
	include/GL/glfw3.h
	readme.html
	src/CMakeLists.txt
	src/win32_window.c
	src/window.c
	src/x11_window.c
	tests/clipboard.c
	tests/defaults.c
	tests/events.c
	tests/fsfocus.c
	tests/glfwinfo.c
	tests/joysticks.c
	tests/peter.c
	tests/sharing.c
	tests/tearing.c
	tests/title.c
	tests/windows.c
2012-11-27 16:55:04 +01:00
Camilla Berglund
34d383399c Finished initial window/context backend split. 2012-11-27 15:02:26 +01:00
Camilla Berglund
e4ddcefc14 Merge branch 'master' into EGL
Conflicts:
	CMakeLists.txt
	include/GL/glfw3.h
	readme.html
	src/CMakeLists.txt
	src/cocoa_window.m
	src/config.h.in
	src/glx_opengl.c
	src/internal.h
	src/opengl.c
	src/window.c
	tests/glfwinfo.c
2012-11-27 12:21:54 +01:00
Camilla Berglund
2a166c5086 Removed glfwCopyContext to map better against EGL. 2012-11-22 20:16:48 +01:00
Camilla Berglund
c479124e69 Removed key repeat. 2012-11-22 17:14:50 +01:00
Camilla Berglund
14355d692f Fixed active/focused nomenclature mixing. 2012-11-22 17:04:44 +01:00
m@bitsnbites.eu
1c21fc1383 Removed GLFW_SYSTEM_KEYS from the GLFW API
Rationale: Disabling system commands is inherently
dangerous, and should not be encouraged. Also, it's very
difficult to define and implement a reliable and
consistent cross-platform mechanism.
2012-11-10 22:20:47 +01:00
m@bitsnbites.eu
424e7c7b53 Removed glfwSetWindowPos and glfwGetWindowPos
glfwGetWindowPos is superseded by glfwGetWindowParam()
with GLFW_POSITION_X and GLFW_POSITION_Y as parameters.

glfwSetWindowPos can easily lead to bad practices
(moving windows around without the users consent), and
has been replaced with the GLFW_POSITION_X/Y window
hints that allow setting the window position for a
newly created window.
2012-11-10 22:19:55 +01:00
m@bitsnbites.eu
c9f4dedd96 Introduced window positioning hints and window position properties 2012-11-10 22:19:55 +01:00
Camilla Berglund
1fd9428287 Merge branch 'master' into joystickname
Conflicts:
	src/x11_joystick.c
2012-11-08 15:55:25 +01:00
Camilla Berglund
7c426d1c92 Merge branch 'master' into multi-monitor
Conflicts:
	examples/wave.c
	src/init.c
	src/internal.h
	src/window.c
	tests/accuracy.c
	tests/events.c
	tests/reopen.c
2012-11-01 00:07:01 +01:00
Camilla Berglund
4fc32a4bbf Comment fix. 2012-10-31 16:11:09 +01:00
Camilla Berglund
18d71c2b6d Made window-related callbacks per-window.
This makes polymorphic behaviour easier to implement and avoids the problem of
events being triggered before the GLFW window object is fully usable.
2012-10-29 13:36:01 +01:00
Camilla Berglund
5df4df6ca4 Added glfwDefaultWindowHints. 2012-10-22 03:16:14 +02:00
Camilla Berglund
2108360671 Removed 'screen' from monitor nomenclature. 2012-10-22 02:39:22 +02:00
Camilla Berglund
ddeca47117 Removed executable flag from header. 2012-10-02 17:25:37 +02:00
Camilla Berglund
ff09d3a343 Merge branch 'master' into multi-monitor 2012-10-02 03:11:32 +02:00
Camilla Berglund
38cad9aff0 Added client API window hint.
This is cherry-picked from the EGL branch in preparation for the EGL backend.
2012-09-30 15:32:50 +02:00
Camilla Berglund
bf8639e49f Removed unused struct member. 2012-09-30 14:54:58 +02:00
Camilla Berglund
1be1636326 Begun integrating monitor and window. 2012-09-27 21:38:35 +02:00
Camilla Berglund
85cfc6bdd0 Merge branch 'master' into joystickname
Conflicts:
	src/x11_joystick.c
2012-09-23 15:46:42 +02:00
Camilla Berglund
9d6945a766 Merge branch 'master' into EGL
Conflicts:
	CMakeLists.txt
	include/GL/glfw3.h
	readme.html
	src/CMakeLists.txt
	src/internal.h
	src/window.c
2012-09-23 15:35:45 +02:00
Camilla Berglund
14f00ffa67 Removed unused struct member. 2012-09-16 12:43:33 +02:00
Camilla Berglund
20a49a7eee Improved handling of primary monitor. 2012-09-13 17:46:40 +02:00
Camilla Berglund
830f2b439c Cleanup. 2012-09-12 20:41:14 +02:00
Camilla Berglund
83f5b920b9 Merge branch 'master' into multi-monitor
Conflicts:
	.gitignore
	src/CMakeLists.txt
	src/x11_window.c
2012-09-12 06:04:17 +02:00
Camilla Berglund
0272ce2e98 Merge branch 'master' into EGL
Conflicts:
	src/glx_opengl.c
	src/opengl.c
	tests/glfwinfo.c
2012-09-09 19:52:33 +02:00
Camilla Berglund
9f94286c9a Merge branch 'master' into showwindow
Conflicts:
	readme.html
2012-09-08 21:20:45 +02:00
Camilla Berglund
93a1d1c226 Added stubs, implemented on Linux and Cocoa. 2012-09-07 01:01:34 +02:00
Camilla Berglund
cbcab56a25 Merge branch 'master' into EGL
Conflicts:
	include/GL/glfw3.h
	src/opengl.c
	src/win32_opengl.c
	src/window.c
	src/x11_fullscreen.c
	src/x11_glx_opengl.c
	src/x11_platform.h
	src/x11_window.c
	tests/glfwinfo.c
2012-09-06 21:05:03 +02:00
Camilla Berglund
5e23620c7f Merge branch 'master' into tls
Conflicts:
	src/x11_window.c
2012-09-06 15:40:18 +02:00
Camilla Berglund
9a183090e0 Merge branch 'master' into showwindow
Conflicts:
	src/window.c
2012-09-06 15:11:50 +02:00
Camilla Berglund
89b42d084d Replaced glfwGetDesktopMode with glfwGetVideoMode. 2012-08-30 01:54:01 +02:00
Camilla Berglund
560b6b5a11 Merge branch 'master' into multi-monitor
Conflicts:
	src/CMakeLists.txt
	src/internal.h
	src/x11_platform.h
2012-08-29 20:36:07 +02:00
Camilla Berglund
2502e4d6f3 Renamed glfwGetJoystickPos to glfwGetJoystickAxes. 2012-08-29 18:58:16 +02:00
Camilla Berglund
d0ad28f174 Merge branch 'master' into showwindow 2012-08-28 17:52:31 +02:00
Camilla Berglund
2a8b2ccef4 Split internal prototypes into APIs. 2012-08-27 03:55:45 +02:00
Camilla Berglund
035a8f4a49 Merge branch 'master' into tls
Conflicts:
	src/x11_window.c
2012-08-26 21:56:55 +02:00
Camilla Berglund
aaaac00aa5 Comment fixes. 2012-08-26 21:29:26 +02:00
Camilla Berglund
5d52ad1548 Replaced GLFWGLOBAL and _init_c_ with extern. 2012-08-26 18:42:15 +02:00
Camilla Berglund
8bb5c59d2d Added GLFW_VISIBLE window hint and parameter. 2012-08-21 21:19:01 +02:00
Riku Salminen
596132c3a1 Add glfwShowWindow, glfwHideWindow
Add glfwShowWindow and glfwHideWindow functions to allow explicit
control over show/hide window.

Remove platform specific show window code from _glfwPlatformCreateWindow
but call glfwShowWindow from glfwCreateWindow to avoid breaking things
(for now).
2012-08-21 21:01:57 +03:00
Camilla Berglund
2b0f8c2f1e Removed 'device' from monitor callback. 2012-08-14 15:15:51 +02:00
Camilla Berglund
39c171a61d Merge branch 'master' into multi-monitor
Conflicts:
	tests/modes.c
2012-08-14 14:02:37 +02:00
Camilla Berglund
9e4bc36dd8 Initial TLS implementation (Cocoa broken). 2012-08-12 14:13:18 +02:00