Commit Graph

21273 Commits

Author SHA1 Message Date
Chun-wei Fan
44402df7dd Fix gailutil Visual C++ projects
...so that we will include the correct gdkconfig.h, which would be
in $(srcroot)\gdk\ during the Visual C++ build.

Also prepare support for Visual Studio 2012 in this project, so it would
be easy to use a script to copy and replace the necessary items in the
Visual Studio 2010 project set to make it a Visual Studio 2012 set.
2012-12-28 15:10:34 +08:00
Michael Natterer
f1c105b94f quartz: don't call a NULL get_func() in gtk_clipboard_store()
Assume the clipboard is not set and bail out silently (bug #626499).
2012-12-20 23:37:06 +01:00
Michael Natterer
e3e055f855 quartz: make setting_same_owner member of GtkClipboardOwner @public
to fix the build, thanks to parafin for the patch.
2012-12-17 22:20:40 +01:00
Marek Kasik
d9f9925878 printing: Add "Custom." prefix only once to paper size
Check whether "Custom." prefix is already present in the name
of selected paper size. (#679883)
(cherry picked from commit be7752183e)
2012-12-16 19:17:45 +01:00
Michael Natterer
31ae1a0b5b gtk: fix scrolling in modal dialogs when event_widget is insensitive
When checking for modal grabs in gtk_main_do_event(), forward
GDK_SCROLL events to event_widget, even if it is insensitive.
2012-12-14 14:30:31 +01:00
John Ralls
e8535149e4 Bug 689982: Random Crash
Update Cairo_Win32 error handling to respond correctly to
cairo_win32_foo_create() functions returning a "nil" surface.
2012-12-10 09:32:00 -08:00
Michael Natterer
4a8df7a33c quartz: fix crash in the recent clipboard "fix", and really fix it
We must not release the GtkClipboardOwner in pasteboardChangedOwner
becaue we don't own a reference to ourselves (NSPasteboard does).
Instead, release the owner right after setting it, transferring
ownership to NSPasteboard

Also, fix repeated setting of the same owner by keeping the
owner around in GtkCLipboard, and re-use it if "user_data"
doesn't change. To avoid clipboard_unset()ting our own contents
in the process, add an ugly "setting_same_owner" boolean to
GtkClipboardOwner, set it during re-setting the same owner,
and avoid calling clipboard_unset() from pasteboardChangedOwner
if it's TRUE.
2012-12-07 12:28:05 +01:00
Chun-wei Fan
b7c30152d0 Bug 687575: Update Visual C++ 2010 projects
The Visual C++ project files for GTK+-2.24.x need to be updated as the
Windows theme engine (libwimp) currently has to be built as a DLL.

This adds the Visual C++ 2010 project file to build libwimp as a
standalone module/DLL, and the property sheets, .sln file and
gtk.vcxprojin/gtk.vcxproj.filtersin/install.vcxproj are updated
accordingly so that the needed stuff get built properly and go
to the proper places for the Windows Themes to work correctly
with the Visual C++ builds.

Thanks to nus for pointing this out.
2012-12-06 12:20:26 +08:00
Matthias Clasen
ad5a0dbb9d Post-release version bump 2012-12-05 23:10:22 -05:00
Matthias Clasen
8e4742cb00 2.24.14 2012-12-05 22:46:07 -05:00
Chun-wei Fan
bad6675d74 gtk-demo.vcproj: Remove unneeded macros
We don't actually need the GtkPrefixDefine when building the gtk-demo demo
program on Windows.
2012-12-06 11:34:44 +08:00
Chun-wei Fan
a441107979 Bug 687575: Update Visual C++ 2008 projects
The Visual C++ project files for GTK+-2.24.x need to be updated as the
Windows theme engine (libwimp) currently has to be built as a DLL.

This adds the Visual C++ 2008 project file to build libwimp as a standalone
module/DLL, and the property sheets, .sln file and gtk.vcprojin are updated
accordingly so that the needed stuff get built properly and go to the
proper places for the Windows Themes to work correctly with the Visual C++
builds.

Thanks to nus for pointing this out.  Visual C++ 2010 projects files will
be updated in the next 1-2 days.
2012-12-05 23:53:53 +08:00
Michael Natterer
f2b74db5dc Bug 626499 - GtkClipboard unnotified on change of OS X pasteboard owner
pasteboardChangedOwner is not called as reliably as we'd want to get it,
so keep track of [pasteboard changeCount] and drop clipboard ownership
when a change happened. Also better unset the clipboard content redundantly
in a few places rather than missing one, and reorder the code in
gtk_clipboard_set_contents() so that the new aggressive unsetting
won't unset the clipboard under our feet when we call
[pasteboard declareTypes].
2012-12-04 14:31:13 +01:00
Federico Mena Quintero
6056f1855b Merge branch 'bgo658280-filechooser-recently-used-2-24' into gtk-2-24 2012-12-03 14:24:43 -06:00
Federico Mena Quintero
f52befa7e7 Revert "Add items to the shortcuts bar's popup menu to configure the startup mode"
Per the gtk-devel meeting on 2012/11/29, we'll not have a UI in the file chooser dialog
to select between those modes.  Instead, we'll show that key in gtweaktool.

This reverts commit 7860500bc6.
2012-12-03 14:23:17 -06:00
Michael Natterer
1eb0d98d73 gtk: convert keyvals to unicode before committing to the imcontext 2012-11-30 15:06:48 +01:00
Michael Natterer
c0102b3089 gtk: add more OSX special casing for the deadacute and deaddoubleacute keys
So " plus foo prduces foo-with-diaereses and ' plus c produces
c-with-cedilla.
2012-11-30 14:43:32 +01:00
Alan McGovern
5637ef1f97 Fix broken function pointer declarations on windows
Both flashing a window and setting the window opacity were using
incorrect declarations for function pointers. They were missing the
WINAPI annotation as defined in windows.h. As a result, the stack
could be corrupted when these functions were invoked.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=689235
2012-11-29 15:06:02 +01:00
Michael Natterer
9644e910a8 quartz: add mountain lion as version 8 to enum GdkOSXVersion
Also use GDK_OSX_UNSUPPORTED instead of 0 in gdk_quartz_osx_version().
2012-11-29 14:51:59 +01:00
Michael Natterer
d6533ffc44 quartz: call Gestalt() only once per session in gdk_quartz_osx_version()
Thanks to Paul Davis for pointing this out.
2012-11-29 14:44:04 +01:00
Colin Walters
b06d83f393 git.mk: Update
The old version had race conditions with srcdir != builddir that I hit
sometimes in gnome-ostree.
2012-11-28 16:37:52 -05:00
Federico Mena Quintero
7860500bc6 Add items to the shortcuts bar's popup menu to configure the startup mode
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-11-26 20:36:44 -06:00
Federico Mena Quintero
a591a15382 Switch to Recent Files or $CWD at startup
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-11-26 18:42:18 -06:00
Federico Mena Quintero
ebb2977a54 New settings key for the startup mode
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-11-26 18:13:05 -06:00
Chun-wei Fan
2d57ddd6ef gtkimcontexttime.c: Check context_ime->client_window is not NULL
Be a bit more careful in get_pango_attr_list() and
get_utf8_preedit_string() to ensure that the client_window is properly
created before proceeding, to avoid access violation/segfault crashes on
Windows with IME installed, especially when running the pickers demo.

https://bugzilla.gnome.org/show_bug.cgi?id=682919
(cherry picked from commit a866ed7378)
2012-11-26 16:31:44 +01:00
Daniel Sabo
ffd949132a Bug 663990 - Tablet pressure is broken on MacOSX
Add extended input support to GDK Quartz.
2012-11-25 19:41:07 +01:00
Federico Mena Quintero
925147af70 New way to show $CWD in the shortcuts
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2012-11-24 14:01:55 -06:00
Michael Natterer
f357151cc6 Bug 668239 - texts disappear when notebook switch page at zh_CN locate
In gtkimcontextime.c, use gdk_win32_window_get_impl_hwnd() to get to
the impl's existing native window instead of GDK_WINDOW_HWND() which
implicitly ensures a native window for the widget itself. This seems
to work around whatever GDK problem with native subwindows and fixes
the bug.
2012-11-23 15:42:13 +01:00
Camillo Lugaresi
0596f5591f Bug 688710 - splashscreen shouldn't be always on top on OS X
Activate the "hides on deactivate" behavior for splashscreens,
torn-off menus, utility windows, tooltips and notifications: when
another application is brought to the front, these windows are hidden
so as not to obscure it. This is the expected behavior for
application-specific floating windows on OS X.
2012-11-20 22:01:13 +01:00
Michael Natterer
27f3fcf12c quartz: fix the mapping of GDK_KP_Enter in known_numeric_keys[]
so it will actually be used, instead of delivering GDK_Return
when it should be GDK_KP_Enter.
2012-11-20 19:12:17 +01:00
Kazuki Iwamoto
2a24ee0756 Avoid a crash in gtk_im_context_ime_reset
When GTK+ runs with inputim-ime.dll module, there is NULL
pointer reference. Because "context_ime->client_window" may
be NULL in gtk_im_context_ime_reset.

https://bugzilla.gnome.org/show_bug.cgi?id=644906
(cherry picked from commit 74f57ee04d)
2012-11-20 12:32:37 +01:00
Michael Natterer
35a9322e45 quartz: always send GDK_NOTIFY_NONLINEAR crossing events
so GtkMenu works properly. This is not right, but not more
wrong than always sending GDK_NOTIFY_ANCESTOR either.
2012-11-20 10:02:02 +01:00
Michael Natterer
979e5061a0 Bug 672193 - windows (including menus) shown multiple times don't...
Based on a patch from Paul Davis, inject synthetic enter events directly
into the Quartz event stream, instead of trying to synthesize them in GDK.

This seems to magically fix most combo box popup weirdness, I guess
some code is relying on a specfic order of events, or any other state
imposed by the "proper" code path of events coming in the usual way.

The patch also removes _gdk_quartz_events_send_enter_notify_event()
which is now obsolete.
2012-11-20 10:01:08 +01:00
Matthias Clasen
53f3e5ee94 Avoid infinite recursion in the ime input module 2012-11-19 09:31:59 -05:00
Michael Natterer
b4a30877a9 quartz: use the real current event time for generated motion events 2012-11-18 20:15:45 +01:00
Michael Natterer
1a2509a6ab quartz: move tooltips window to the topmost level
so they can appear on top of popup menus. Also, reorder the switch()
statement in window_type_hint_to_level() so it resembles the stacking
order, to avoid confision like this in the future.
2012-11-18 17:45:12 +01:00
Kristian Rietveld
e982461ad6 quartz: correct deficiencies in the gdk_draw_drawable() implementation
The call to scrollRect: must be accompanied by a call to redraw the
newly exposed area, otherwise the scrollRect: will have no effect.
Secondly, compute the newly exposed area correctly.
Thirdly, also expose the lower window border or the area moved from
the lower window border if applicable, to make sure rounded corners
are properly drawn or don't leave garbage.
2012-11-15 14:59:11 +01:00
Kristian Rietveld
4d01c56d89 quartz: add _gdk_quartz_window_set_needs_display_in_region
It's needed for the next commit, which is an actual fix.
2012-11-15 14:49:25 +01:00
Michael Natterer
43e1354b71 quartz: filter out button press events on the window frame
Don't try to handle button press events on the window frame, they
have out-of-window coordinates. Also, break grabs on such events
so popup menus go away.
Patch from Kristian Rietveld, fixes bug 684419.
2012-11-15 11:34:15 +01:00
Michael Natterer
47f0e3f1e1 quartz: move SPLASHSCREEN-hinted windows to NSStatusWindowLevel
which does not really have a different effect than the previously
used NSPopUpMenuWindowLevel, but is what all code examples I found
are using, and it does make more sense.
2012-11-13 20:01:05 +01:00
Timothy Arceri
0239ee50be Remove bookmark duplicate of shortcut
Application code can set shortcut folders that are already bookmarks.
This code causes the bookmarks to be refreshed after the shortcut is
added removing any possible bookmark duplicates

https://bugzilla.gnome.org/show_bug.cgi?id=577806
2012-11-13 12:56:28 -06:00
Michael Natterer
5934ad2e22 quartz: _gdk_quartz_gc_update_cg_context(): the minimum line width is 1.0
not G_MINFLOAT. Patch from Kristian Rietveld.
2012-11-08 15:00:38 +01:00
Michael Natterer
376fc4d712 gtk: clean up properly in GtkFileChooserEntry's dispose() to fix crashes
Don't just unref the completion_store, call discard_completion_store()
instead which also unsets it as the GtkEntryCompletion's model.  Fixes
bug 681845 and probably some others, because the situation in this bug
is completely common.
2012-11-05 20:15:17 +01:00
Michael Natterer
c5421263e4 gail: use connect_object() for connecting to GtkTextBuffer signals
because the user_data is the GtkTextView. This used to crash when the
text view got destroyed, and the buffer was used for another view.
Fixes bug #652204.
2012-11-05 03:19:50 +01:00
Cosimo Cecchi
de89546e30 Use bookmarks file from gtk-3.0 XDG config dir if present
Will read from old location if new location isn't found, and will always
write back to the original location the file was read from.

Adapted from commit ceb3fecd11 on the
master branch, based on a patch from
William Jon McCann <jmccann@redhat.com>
2012-10-29 09:52:26 -04:00
Alexander Larsson
bb867e9406 win32: Don't leak the pixmap cairo_surface
GdkPixmapWin32 allocates a cairo_surface manually for non-foreign
pixmaps, instead of letting GdkDrawableWin32 create on on-demand.
However, the pixmap created surface is a strong ref, rather than the
weak ref created by gdk_win32_ref_cairo_surface() so we can't rely
on _gdk_win32_drawable_finish to actually free it. So, we have to
manually free it when we finalize or we leak it.

https://bugzilla.gnome.org/show_bug.cgi?id=685959
2012-10-24 12:43:27 +02:00
Hendrik Knackstedt
85bb1a161c Updated German translation 2012-10-19 13:38:27 +02:00
Kristian Rietveld
0e42cf81f1 quartz: Actually use the window background PATTERN color
Before we used a window's background color, which resulted in corrupted
display in some cases, presumably because we didn't reset the active
pattern. This patch seems to eliminate the observed corruption.
2012-10-09 16:16:42 +02:00
Chun-wei Fan
b9575dddfd gtk+.props: (VS2010) Update include paths
Correct the include paths for GDK-Pixbuf, as that update was somehow
forgotten :|

Thanks to Berke Viktor for pointing this out.
2012-10-07 22:53:39 +08:00
Kristian Rietveld
92ea94af5f Fix garbage content when windows are initially mapped
The garbage would be visible if any widget enabled the toplevel
NSView's CALayer in order to do custom native rendering.
2012-09-28 10:07:59 +02:00