Commit Graph

399 Commits (05f4e7360886e36b221ef5c3af4426625a3de686)

Author SHA1 Message Date
michi_cc e15446bc58 (svn r26367) -Fix: [Win32] Use a separate event to indicate that the drawing thread has finished initialising, preventing potential deadlocks. 11 years ago
fonsinchen d8eda06a5a (svn r26366) -Fix: Protect the windows video driver from concurrent access (frosch123) 11 years ago
fonsinchen b4a015a4bd (svn r26365) -Fix [FS#5867]: Don't draw the cursor when its sprite isn't ready and set _screen.dst_ptr immediately when the buffer changes (frosch123) 11 years ago
frosch aaa6d0f9ae (svn r26360) -Revert (r25550) / Fix [FS#5922]: ClientSizeChanged is only called via WndProcGdi which already has the mutex. The issue which r25550 tried to fix still exists as FS#5867. 11 years ago
frosch 27eede06c9 (svn r26351) -Fix: Protect all VideoDriver_SDL methods with the _draw_mutex. 11 years ago
rubidium a942619911 (svn r26247) -Fix [FS#5854, FS#5855]: Possible out of bounds reads with the sse blitters (MJP) 11 years ago
rubidium fb05674cb7 (svn r26211) -Add: specialised non-animated SS2 blitter (MJP)
With 32bpp base set about 30% faster than 32bpp-optimized, or about 10% for 8bpp base sets in the Draw function. Respectively about 5 and 1% of total run time
11 years ago
rubidium 2618d960e3 (svn r26209) -Codechange: remove some template magic and simplify some code 11 years ago
fonsinchen c71aa27b92 (svn r26186) -Fix: Don't check for equality of MAC_OS_X_VERSION_MAX_ALLOWED. 11 years ago
rubidium defda16eb6 (svn r26108) -Codechange: some coding style (whitespace) 11 years ago
rubidium 6996b441d9 (svn r26107) -Codechange/cleanup: remove some coding bloat and simplify the driver factory instatiations 11 years ago
michi_cc 2708aff853 (svn r26023) -Fix [FS#5805] (r25686): [OSX] Checking for a valid NSTextInputContext is supposed to fail on 10.4 according to docs, but somehow didn't, leading to a crash when an edit box lost focus. 11 years ago
rubidium 3b9f92e14c (svn r26009) -Fix: warning about conditional expression with enumeral with non-enumeral type 11 years ago
michi_cc a985f19d5a (svn r26003) -Fix [FS#5795b] (r25743): [OSX] Some hotkeys were still triggered during text input. 11 years ago
michi_cc 8f8173c3fe (svn r26002) -Fix: [OSX] If the console hotkey is a dead key, require two presses to toggle the console, allowing input of accented characters. 11 years ago
michi_cc 8ceef6ec61 (svn r26001) -Fix [FS#5795a] (r25686): [OSX] Clear any pending marked characters from an edit box losing focus. 11 years ago
rubidium 52883db91b (svn r25970) -Fix [FS#5787]: [SDL] Recursive mutex locking when changing blitter 11 years ago
michi_cc 9b68e4f864 (svn r25962) -Fix (r25951): [OSX] Do the SDK version test the proper way 'round. 11 years ago
michi_cc a41b8c851d (svn r25951) -Fix [FS#5797]: [OSX] Disable the old fullscreen sub-driver when compiling with SDK versions 10.9+. 11 years ago
michi_cc a298a62098 (svn r25950) -Codechange: [OSX] Move some functions used by all video sub-drivers into the common source file. 11 years ago
michi_cc f36396929a (svn r25751) -Fix (r25657): [OSX] Restore fullscreen state also when starting on 10.7+. 11 years ago
michi_cc 6bbca9307d (svn r25743) -Fix [FS#5705]: [OSX] Text input into an edit box would trigger hotkeys. 11 years ago
fonsinchen 0baa72aff9 (svn r25714) -Fix: explicitly cast some things to silence warnings on GCC 4.0 11 years ago
fonsinchen fd16b0c65c (svn r25713) -Fix: use proper ObjC style to avoid problems if members are missing 11 years ago
fonsinchen 8222e18586 (svn r25712) -Fix: define kCGBitmapByteOrder32Host to 0 if it's missing. 11 years ago
fonsinchen f42d60150d (svn r25711) -Fix: don't use NULL as integer 11 years ago
fonsinchen a9fde2856c (svn r25710) -Fix: string arguments to NSNotificationCenter::addObserver and NSNotificationCenter::postNotificationName can't be const in certain versions of OSX 11 years ago
michi_cc b3ecfbb67a (svn r25693) -Add: [OSX] Support the new IME functions introduced with 10.5. 11 years ago
michi_cc 30867c487f (svn r25691) -Add: [OSX] Support for mouse selection in the IME composition string. 11 years ago
michi_cc e2ec0ddb03 (svn r25690) -Change: [OSX] Position the candidate window at the caret position. 11 years ago
michi_cc f5e4131492 (svn r25689) -Add: [OSX] Display the IME composition string ourself. 11 years ago
michi_cc c64e297e0c (svn r25688) -Codechange: [OSX] Make our view aware of text input by IMEs. 11 years ago
michi_cc 643a294e68 (svn r25687) -Codechange: [OSX] Pass text input directly down to the text handling. 11 years ago
michi_cc e4d48f3a3b (svn r25686) -Codechange: [OSX] Abandon IME input if the edit box lost the focus. 11 years ago
michi_cc 0883cf76e3 (svn r25684) -Change: [Win32] Draw the composition string ourselves if possible. 11 years ago
michi_cc cbdfd31a3c (svn r25682) -Change: [Win32] Position the IME candidate window at the caret position. 11 years ago
michi_cc da09fd3077 (svn r25681) -Change: [Win32] Position the IME composition window at the caret position. 11 years ago
michi_cc 21126aec62 (svn r25680) -Codechange: [Win32] Cancel the current IME composition when the input focus changes. 11 years ago
michi_cc 7422120014 (svn r25679) -Codechange: [Win32] Get the result string of an IME input directly without a trip through the window messaging system. 11 years ago
michi_cc 13873d2534 (svn r25678) -Codechange: Notify the video driver when an edit box lost (global) focus so it can abort any current input composition. 11 years ago
michi_cc 63332afcf0 (svn r25675) -Fix: [Win32] Handle DBCS characters correctly in the non-Unicode build. 11 years ago
michi_cc e37968aadd (svn r25673) -Fix: [Win32] Use the right code page for converting ANSI strings into UTF-8 for non-Unicode builds. And don't crap out on DBCS code pages either. 11 years ago
michi_cc fdc436b531 (svn r25672) -Fix: [Win32] Handle Unicode characters from outside the BMP correctly. 11 years ago
michi_cc 019984a14f (svn r25671) -Codechange: Pass character and key code separately to the keyboard handler. 11 years ago
michi_cc 923eb009e8 (svn r25667) -Fix: [Win32] Only forward key presses to the IME system if an edit box has the input focus. 11 years ago
michi_cc 8b476de3bf (svn r25666) -Feature [FS#4760]: [OSX] Pinch gesture support for zooming. (Based on patch by leecbaker) 11 years ago
michi_cc 8003da77aa (svn r25665) -Fix [FS#4689]: [OSX] Crash when unhiding the main window. 11 years ago
michi_cc 1ae357e905 (svn r25664) -Add [FS#4847]: [OSX] Bootstrap downloading of a baseset. (Matthieu) 11 years ago
michi_cc 4ec314989d (svn r25660) -Fix: [OSX] The name's OpenTTD, not OTTD. 11 years ago
michi_cc d23fdfa403 (svn r25659) -Fix [FS#4420]: [OSX] System mouse cursor could become visible during dragging. (Matthieu) 11 years ago
michi_cc 408c595eb8 (svn r25658) -Fix [FS#4392]: [OSX] The mouse cursor would sometimes jump near the window borders. (Matthieu) 11 years ago
michi_cc 7ba4d425c8 (svn r25657) -Fix [FS#4744]: [OSX] The new 10.7 fullscreen code can now also be compiled with older SDK versions. 11 years ago
michi_cc 2702fe88d7 (svn r25656) -Cleanup: Coding style. 11 years ago
michi_cc 6d50b10074 (svn r25655) -Fix: [OSX] Mouse cursor wasn't displayed properly after switching to fullscreen on 10.7+. (Based on patch by Maedhros) 11 years ago
rubidium d9065fbfbe (svn r25550) -Fix [FS#5571]: [Windows] Race condition between two drawing threads could crash OpenTTD 11 years ago
rubidium 4fbcb73166 (svn r25523) -Fix [FS#5587]: SDL does not give an event when an application gets mouse focus while going to full screen, so manually force the mouse-is-in-window state 11 years ago
matthijs 0d28dc92fc (svn r25318) -Fix: [SDL, FS#5580] Keyboard input stopped working after fullscreen toggle 11 years ago
rubidium dcf3df65d3 (svn r25017) -Fix [FS#5466]: crash after bootstrap download of 32bits base set due to referencing a deleted mutex 12 years ago
matthijs 2752dd7bbe (svn r25003) -Fix (r24993): [SDL] Keep a flag to remember if a hardware palette was requested.
- Previously, the code would query the SDL_HWPALETTE flag, which doesn't always match the requested value.
  - This would cause SDL to be restarted on every window resize event, effectively breaking resizing.
12 years ago
matthijs afd1e49224 (svn r25002) -Doc: [SDL] Fix typo in comment. 12 years ago
matthijs 328ed1cf94 (svn r24993) -Fix: [SDL] Improve 8bpp hardware palette support. Instead of always requesting SDL_HWPALETTE, it is now only done for 8bp blitters in fullscreen mode.
- This fixes 32bpp blitters on 8bpp X11, which would only render garbage with SDL_HWPALETTE.
  - This prevents the colors of other applications from being messed up when running a 8bpp blitter on a 8bpp system.
  - When running a 8bpp blitter on an 8bpp system without SDL_HWPALETTE (e.g., in windowed mode), this uses a new shadow surface with color approximation.
  - The use of a hardware palette can be forced on and off using -v sdl:hw_palette=1 or -v sdl:hw_palette=0
12 years ago
matthijs afcb4a25b2 (svn r24992) -Codechange: [SDL] Make CreateMainSurface and PollEvent private methods instead of static functions. 12 years ago
planetmaker c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 12 years ago
rubidium d5d96ba683 (svn r24877) -Fix: some whitespace "errors" 12 years ago
michi_cc 02f39ab1ee (svn r24781) -Fix (r24762): [Win32] MinGW compiler warning. 12 years ago
michi_cc e67c717c2f (svn r24762) -Fix [FS#5359]: [Win32] Don't crash when switching to an unsupported fullscreen display mode (like 8 bpp modes in Windows 8). 12 years ago
yexo 1f75f81a41 (svn r24524) -Fix [FS#5296]: fix some compile problems in mac-only code (__ln__) 12 years ago
glx ad48f766f7 (svn r24394) -Fix (r24188): changing resolution didn't resize the window 12 years ago
truebrain 353fd97de6 (svn r24189) -Fix: when going to fullscreen and back, restore to the resolution you were, not to the fullscreen resolution (Windows only) 12 years ago
truebrain 39912b7bde (svn r24188) -Fix-ish [FS#5151] (r1): when changing the basics of a window (fullscreen, 8bpp/32bpp), and a window already exists, it was forced out of maximize mode, and its resolution/position was reset, often causing unwanted side-effects. As a "bonus", a WC_SIZE was triggered, and if the system was going from 8bpp to 32pp, this caused a forced window update in a limbo-state of the blitter (not fully 32bpp just yet, but for sure no longer 8bpp); this could cause random memory access which could lead to ACCESS_VIOLATIONS 12 years ago
rubidium 74785478ec (svn r23980) -Fix (r23977): crash when starting with the 32bpp anim blitter 13 years ago
rubidium 4db85fcc4d (svn r23978) -Fix: [SDL] Palette update was done too late making switching from 8bpp -> 32bpp look ugly 13 years ago
matthijs 311413a091 (svn r23910) -Fix: [SDL] Handle the SDL_VIDEOEXPOSE event.
- It seems this event is never triggered when using 1.2 (it has some
    autorefresh feature which seems to have been removed in 1.3), but in theory
    this event could also trigger on 1.2.
  - Note that this fixes redraw issues when compiling against SDL 1.3, but it
    still uses the "compatibility" rendering API using SDL_SetVideoMode and
    SDL_UpdateRects. Eventually (when 1.3 is stable and released as 2.0), this
    should probably be rewritting to use the new Windows and Renderers
    available in SDL 1.3.
13 years ago
matthijs cba6390973 (svn r23909) -Fix: [SDL] Fix keyboard-related segfault when compiling against SDL 1.3. 13 years ago
rubidium af7ea8c525 (svn r23891) -Fix-ish: compile failures with SDL 1.3 13 years ago
michi_cc 52175a4260 (svn r23749) -Fix: [Win32] Work around a possible deadlock when initialising threaded drawing. 13 years ago
rubidium fd559171b4 (svn r23527) -Codechange: unify colo(u)r as far as it goes 13 years ago
rubidium 7e7c262167 (svn r23488) -Fix [FS#4879] (r23241): artefacts when right click mouse moving with the allegro video driver 13 years ago
michi_cc 7099faba28 (svn r23482) -Change: [Win32] Move re-painting the window and doing palette animation into a separate thread. 13 years ago
rubidium b231e80125 (svn r23470) -Codechange: move declaration of SwitchToMode to a header instead of declaring it in 6 other files 13 years ago
rubidium ccededbf77 (svn r23451) -Codechange: [SDL] Move 32bpp-anim palette animation to the draw thread instead of the single threaded bit of the game loop. This causes a speedup of up to 15% when animation is turned on with the 32bpp-anim blitter 13 years ago
rubidium 61625e53c9 (svn r23448) -Fix: keep a local copy of the palette in the 32bpp animated blitter so changes of the palette data during the game don't influence drawing (with SDL) 13 years ago
rubidium 2ccbd2a6f5 (svn r23446) -Codechange: move _cur_palette and it's related first/count dirty variables into a single structure 13 years ago
rubidium 6e31c2f068 (svn r23241) -Codechange: make the decision when to go to the custom drawn cursor more prominently during the initialisation of OpenTTD 13 years ago
michi_cc 6a2735d24e (svn r23119) -Fix: [Win32] Don't show a crash/assertion message box for a GUI-less video driver. 13 years ago
michi_cc 8c4c616cfe (svn r23003) -Fix (r22999): Missing semicolon. 13 years ago
michi_cc 6dbb050a32 (svn r22999) -Codechange: Allow changing the blitter during the running game. 13 years ago
planetmaker 6a72d64dbe (svn r22943) -Fix: [OSX] Typo broke debug compilation 13 years ago
planetmaker 58f00d786c (svn r22921) -Fix: [OSX] Don't allow the old fullscreen mode also not as fallback on OSX 10.7. Also add a few sprinkles of coding style accross cocoa display drivers 13 years ago
rubidium bffa93a4e9 (svn r22910) -Fix [FS#4617]: icon would (almost) never be shown for SDL builds 13 years ago
planetmaker 20e359acbe (svn r22895) -Add: [OSX] Alternative code for the API calls deprecated in OSX 10.6 in the quartz video driver 13 years ago
planetmaker 45b099c655 (svn r22894) -Doc: Some sprinkles of doxygen for the cocoa video driver 13 years ago
planetmaker bce482c76f (svn r22893) -Fix [FS#4744]: [OSX] Compilation on OSX 10.7 was broken (based on patch by leecbaker)
-Add: [OSX] Support for fullscreen mode when compiled against SDK 10.7. Otherwise fullscreen mode is disabled when OpenTTD is run on OSX Lion
13 years ago
rubidium 9fe4b959ac (svn r22818) -Fix [FS#4742] (r22796, rlongago): don't spawn threads for world generation and NewGRF scanning when using the dedicated or null video driver regardless of the used blitter 13 years ago
rubidium 421053a694 (svn r22788) -Codechange: move modal progress related functions and variables to progress.cpp/h 13 years ago
rubidium 37415b9cf7 (svn r22785) -Codechange: rename IsGeneratingWorld to HasModalProgress 13 years ago
planetmaker e3d9879690 (svn r22678) -Doc: More doxygen sprinkles in MacOSX code and cocoa video driver 13 years ago
alberth f1cae9960f (svn r22512) -Add: Save heightmap. 13 years ago
rubidium 4d5dbf5170 (svn r22410) -Document: some more bits ;) 13 years ago
rubidium 1a515e6344 (svn r22405) -Document: some more "random-ish" tidbits 13 years ago