Matthias Clasen
41d4229155
Pop up context menus at the right device
...
When multiple pointers are in play, we need to be careful
not to loose track of the device between receiving a button
press and popping up a menu.
https://bugzilla.gnome.org/show_bug.cgi?id=663396
2011-11-05 01:24:17 -04:00
Michael Natterer
2d3db3421f
Bug 659406 - Abstract what triggers a context menu
...
Add gdk_event_triggers_context_menu(), using the new modifier
abstraction API. Remove _gtk_button_event_triggers_context_menu()
and port all callers.
2011-09-27 15:45:18 +02:00
Michael Natterer
11f8c1ba6f
gtk: remove the private GTK_EXTEND/MODIFY_SELECTION_MOD_MASK
...
and use the new public modifier abstraction API instead.
2011-09-27 12:06:10 +02:00
Michael Natterer
b663f3a00b
Bug 659406 - Abstract what triggers a context menu
...
Add _gtk_button_event_triggers_context_menu() and use it instead
of checking for event->button == 3, so context menus are invoked
correctly on the Mac.
2011-09-26 16:01:50 +02:00
Michael Natterer
0955a59563
app: abstract which modifiers are used for extending and modifying selections
...
which are SHIFT and MOD2 on the Mac, and SHIFT and CONTROL otherwise.
Use the new define all over the place and rename variables and
members to not say "shift" or "control".
2011-09-26 16:01:50 +02:00
Matthias Clasen
22d046d7fe
Add a note about placeholder text use
...
Explain how this is really not such a great feature...
2011-09-02 00:35:38 -04:00
Matthias Clasen
2ba9c4b4a7
Make focus rectangles optional
...
This commit introduces a new setting, gtk-visible-focus, backed
by the Gtk/VisibleFocus X setting. Its three values control how
focus rectangles are displayed.
'always' is equivalent to the traditional GTK+ behaviour of always
rendering focus rectangles.
'never' does what it says, and is intended for keyboardless
situations, e.g. tablets.
'automatic' hides focus rectangles initially, until the user
interacts with the keyboard, at which point focus rectangles
become visible.
https://bugzilla.gnome.org/show_bug.cgi?id=649567
2011-08-10 16:34:20 +02:00
Matthias Clasen
d324a99454
Fix entry drawing in the presence of margins
...
Margins need to be taken into account when comparing requisitions
and allocations, which GtkEntry (and subclasses) do for some reason.
2011-08-09 15:12:21 +02:00
Matthias Clasen
a1cf2315a0
Fix up signal ordering issues in GtkEntry
...
Ensure that text and selection boundaries are in a
consistent state when we emit notifications, that ::insert-text
and ::delete-text are emitted before any changes, and that
::changed is emitted after property notifications when inserting
or deleting text.
2011-07-05 16:08:08 -04:00
Matthias Clasen
918514d51d
First cut at GailEntry -> GtkEntryAccessible
...
Replace the factory for entry and spin button with
gtk_widget_class_set_accessible_type() calls, and move then
to the GtkAccessible namespace.
2011-07-05 16:08:08 -04:00
Claudio Saavedra
ca801abb4c
Use a PAGE_STEP macro instead of a magic number
...
Helps to understand the code.
https://bugzilla.gnome.org/show_bug.cgi?id=653512
2011-06-28 09:47:44 +03:00
Javier Jardón
bf0d8402f5
gtk: Use const instead G_CONST_RETURN
2011-06-10 13:07:54 +01:00
Cosimo Cecchi
aa37e7323f
entry: use the current state when rendering symbolic icons
...
Make sure the current state is picked up when rendering symbolic icons
too.
2011-06-09 23:17:09 +02:00
Cosimo Cecchi
8efa8a067e
entry: use GTK_STYLE_CLASS_IMAGE when rendering the entry icon
2011-06-09 23:17:09 +02:00
Cosimo Cecchi
02e82d69b8
entry: use gtk_render_icon()
2011-06-09 23:17:09 +02:00
Matthias Clasen
d2c682c9e9
Remove an unneeded include
2011-06-07 13:04:22 -04:00
Matthias Clasen
0705474be6
GtkEntry: don't forget to disconnect idles
...
As pointed out by John Lindgren in bug 650114, GtkEntry forgets
to disconnect an idle source when the completion is set to NULL.
2011-05-31 20:11:28 -04:00
Matthew Barnes
54c3f05848
Desensitize "Select All" when GtkEntry is empty
...
This avoids possible confusion in some situations, and
selecting an empty string is not very useful.
https://bugzilla.gnome.org/show_bug.cgi?id=647962
2011-04-26 07:56:09 -04:00
Matthias Clasen
7d3693b82b
GtkEntry: Explicitly disconnect keymap signals
...
Might fix https://bugzilla.gnome.org/show_bug.cgi?id=648419
2011-04-26 07:48:27 -04:00
Benjamin Otte
da1f618b09
entry: Translate progress region properly when drawing text
2011-04-19 22:18:19 +02:00
Benjamin Otte
76294fcf1d
entry: No need to queue a redraw on state changes
...
GtkWidget already does that.
2011-04-19 22:18:19 +02:00
Benjamin Otte
2d58625e02
entry: Also update cached style values when the state changes
2011-04-19 22:18:19 +02:00
Benjamin Otte
66dc6ea150
entry: Initialize cached values
2011-04-19 22:18:19 +02:00
Benjamin Otte
a9a2a08162
entry: g_object_notify*( when we change the invisible char
2011-04-19 22:18:19 +02:00
Benjamin Otte
0aae66c15e
entry: Split out style-updating things into their own function
2011-04-19 22:18:19 +02:00
Benjamin Otte
72ebc788a6
entry: Move cairo_save() call for clarity
...
We want save, clip, draw1, restore, save, clip, draw2, restore
and not save, save, clip, draw1, restore, clip, draw2, restore
Functionally the same thing, but not as obvious
2011-04-19 22:18:19 +02:00
Benjamin Otte
6fee78341a
entry: Omit useless clip
...
We do the same clip further above, so no need to repeat it
2011-04-19 22:18:19 +02:00
Benjamin Otte
033d204b9e
entry: Guard clipping with a save/restore
...
Just t be sure, so people don't get bugs later when they refactor code.
2011-04-19 22:18:18 +02:00
Benjamin Otte
c70698084c
entry: Remove needless check
...
The only window we're ever called to draw is our own window. D'oh.
2011-04-19 22:18:18 +02:00
Benjamin Otte
49c7869582
docs fix typo
...
Was accidentally introduced in 1351d40cfe
Thanks Paolo for noticing.
2011-04-17 12:49:58 +02:00
Benjamin Otte
1351d40cfe
entry: Fix gtk_entry_get_icon_at_pos()
...
The passed in coordinates are widget-relative, not window-relative.
2011-04-16 22:31:24 +02:00
Benjamin Otte
f2a20cd9fd
entry: Use the new get_frame_size() argument in gtk_entry_draw_frame()
2011-04-16 22:31:24 +02:00
Benjamin Otte
fd9aac8225
entry: Add the ability to query frame size in two ways
...
TRUE: relative to widget->window
FALSE: relative to widget
For now, no caller has beeen changed.
2011-04-16 22:31:24 +02:00
Juan Pablo Ugarte
a77e6b1593
Added GtkEntry:completion property
2011-04-01 19:35:32 -03:00
Carlos Garcia Campos
ef061c4e96
gtkentry: Add hinting to GtkEntry
...
gtk_entry_set_placeholder_text() makes the entry display the given text
when it is empty and unfocused. Based on previous patch by Alberto
Garcia.
https://bugzilla.gnome.org/show_bug.cgi?id=440963
2011-03-21 09:37:37 +01:00
Carlos Garnacho
b93a2ebeed
entry: Do not clobber state when rendering the default icons.
...
Use lower level methods that just require changing the state in the
GtkStyleContext instead. Fixes a problem where the insensitive state
was being set to the entry becasuse a parent was insensitive, spotted
by Alex Larsson.
2011-03-07 12:48:31 +01:00
John (J5) Palmieri
cdf69b4bed
[gi] add missing annotations for signals that emit Gdk.Events
2011-03-03 16:05:28 -05:00
Matthias Clasen
63c7701ca3
Don't use GDK_NONE when GDK_SELECTION_CLIPBOARD is meant
2011-02-28 19:25:35 -05:00
Murray Cumming
f91c04e284
Minor documentation improvements
...
Mostly correcting it's to its and changing some , to .
2011-02-23 10:26:21 +01:00
Matthias Clasen
beb8c290d1
Always chain up in ::style-updated
...
This was not handled consistently, but the default handler
does useful things, so we should always chain up.
2011-02-07 07:30:37 -05:00
Michael Natterer
858ba35873
gtk: remove function gtk_entry_queue_draw() and call gtk_widget_queue_draw()
...
the old function was a leftover from when GtkEntry had a window
and was now invalidating the entire toplevel on each entry change.
2011-02-06 11:17:58 +01:00
Matthias Clasen
38f6065b2b
Make GtkEntryCompletion::match-selected arguments consistent
...
For keynav, we were still passing it the filter model.
https://bugzilla.gnome.org/show_bug.cgi?id=640698
2011-01-31 10:48:40 -05:00
Paolo Borelli
001697a22a
Move the get_cursor_color in GtkStyleContext
...
Move the private get_cursor_color method belongs to StyleContext. Change
the api so that retrieving both primary and secondary color is possible.
I left the method private for now, though it should probably be public
as all the other getters.
2011-01-29 13:13:42 +01:00
Paolo Borelli
9e20341775
Use GtkRGBA for the cursor color priv api.
2011-01-29 12:38:50 +01:00
Matthias Clasen
b42b47e7d3
Port gtk_draw_insertion_cursor to GtkStyleContext
2011-01-24 00:24:12 -05:00
Matthias Clasen
d9fcc4c630
Silence new gcc warnings
...
gcc 4.6.0 has started to warn about set-but-unused variables.
So don't do that, then.
2011-01-23 21:51:38 -05:00
Michael Natterer
5d3106275a
gtk: no need to add GTK_STYLE_FLAG_FOCUSED to the widget's state flags
...
because they correctly contain that flag now if the widget has focus.
2011-01-21 15:38:52 +01:00
Michael Natterer
287a388415
gtk: remove unused "window" variable from gtk_entry_draw_frame()
2011-01-21 14:19:48 +01:00
Pavel Holejsovsky
2fb1c06402
[GI] Add missing (out) and (array) annotations
2011-01-20 13:57:20 +01:00
Carlos Garnacho
0e77486e91
Make GtkEntry set the style context state.
2011-01-17 04:43:23 +01:00
Matthias Clasen
8e420bca02
Unify handling of prelighted icons
...
Make GtkEntry use gtk_render_icon_pixbuf for rendering the
icons, and move the working icon prelighting code from GtkEntry
to GtkThemingEngine.
https://bugzilla.gnome.org/show_bug.cgi?id=636691
2011-01-14 23:59:22 -05:00
Tristan Van Berkom
3f911b2516
Fixed GtkEntry to report the proper default value for "primary/secondary-icon-activatable"
2011-01-10 22:26:46 +09:00
Matthias Clasen
98440ad031
Remove gtktypeutils altogether
...
Based on patches by Javier Jardón.
https://bugzilla.gnome.org/show_bug.cgi?id=629955
2011-01-04 14:51:19 -05:00
Matthias Clasen
b5c6904c2f
Drop explicit includes of gdkkeysyms.h
...
These are no longer needed. At the same time, port gtkimcontextsimpleseqs.h
to use the new GDK_KEY_ symbols.
2011-01-04 12:21:41 -05:00
Carlos Garnacho
e4c509837f
GtkEntry: get font description from GtkStyleContext
2011-01-04 03:06:20 +01:00
Carlos Garnacho
55145e0e4e
GtkEntry: Remove unneeded calls
2011-01-04 03:06:19 +01:00
Benjamin Otte
8f1f743903
gtk: Use g_object_unref instead of gdk_cursor_unref
2010-12-21 12:07:05 -05:00
Matthias Clasen
28cc7baef0
Make GtkEntry hide completely
...
When it was converted to no-window, we forgot to make it hide/show
its input window as necessary.
2010-12-20 12:28:05 -05:00
Tristan Van Berkom
df0d61e50d
Fixed gtk_entry_set_icon_tooltip_text & markup to not crash
...
Setting this property before the icon is actually set was
resulting in a crash (found by way of Glade bug 606103).
2010-12-17 18:15:08 +09:00
Carlos Garnacho
8b8eab1c81
GtkEntry: Use GtkStyleContext.
2010-12-13 22:31:28 +01:00
Matthias Clasen
83204928b9
Don't access GdkDragContext fields directly
...
Instead use the accessors.
2010-12-10 00:59:07 -05:00
Carlos Garcia Campos
a5dba1670e
GtkEntry: Use gtk_widget_render_icon_pixbuf()
...
Instead of gtk_widget_render_icon() which is now deprecated.
2010-12-08 17:12:14 +01:00
Javier Jardón
d351b40a0b
Add internal accessor for GtkEntry->is_cell_renderer
...
This fixes commit fb3429e507
2010-12-04 22:06:02 -05:00
Matthias Clasen
fc10599ac8
Make unfocused selections visible in entries
2010-12-04 15:39:33 +01:00
Carlos Garnacho
f7f5ac1b09
GtkEntry: Set widget state as state flags.
2010-12-04 15:38:31 +01:00
Michael Natterer
fb5dd9f72f
Move all GdkDevice members to private and add one missing accessor
2010-11-23 20:25:13 +01:00
Javier Jardón
c4be956473
gtkentry: move public members to private structure
2010-11-19 08:38:12 +01:00
Javier Jardón
8c941d2b4e
Add _gtk_entry_get_im_context() internal accessor
...
It's needed by gtktreeview
2010-11-19 06:15:27 +01:00
Michael Natterer
881282e055
gtk: honor entry->has_frame again draw the frame conditionally
...
when GtkEntry had visible windows, it was never noticed that we always
draw the frame, because the text_area window would cover it if
draw_frame was FALSE.
2010-11-18 01:06:57 +01:00
Michael Natterer
3ec8daa66c
gtk: draw the progress only on the text area
...
so it doesn't extend under GtkSpinButton's buttons.
2010-11-18 01:06:57 +01:00
Javier Jardón
0e0c4ee129
docs: move documentation to inline comments: GtkEntry
2010-11-05 20:49:20 +01:00
Tristan Van Berkom
393bd507bb
Fixed unused variable in get_preferred_height().
2010-10-27 13:56:13 +09:00
Matthias Clasen
2432bf4a58
Remove size_request from GtkEntry
2010-10-26 21:41:13 -04:00
Matthias Clasen
520a6aeb8f
Fix up docs
2010-10-23 23:41:08 +02:00
Michael Natterer
ba9efeda4b
gtk: add gtk_entry_get_text_area() and gtk_entry_get_icon_area()
...
as replacement for the removed get_foo_window() functions, so draw()
callbacks can figure where to paint.
2010-10-22 14:48:08 +02:00
Benjamin Otte
e6f95e9316
entry: No, you can not haz ununused variables
2010-10-21 15:08:14 +02:00
Matthias Clasen
596da84312
Make GtkEntry a no-window widget
...
Use input-only windows for capturing input, and just draw onto
the parent window. This allows themes to make entries with rounded
corners. Patch by Boram Park.
https://bugzilla.gnome.org/show_bug.cgi?id=632736
2010-10-21 13:17:33 +02:00
Emmanuele Bassi
9f9edb662e
settings: Move setting property registration in gtksettings.c
...
Some GtkSettings property are registered by other classes. This leads
to the "interesting" issue that setting GtkSettings:gtk-button-images
requires that the GtkButton class is referenced first - or that a
GtkButton is created.
https://bugzilla.gnome.org/show_bug.cgi?id=632538
2010-10-20 10:34:25 +01:00
Javier Jardón
eac1959d2c
Move destroy signal to GtkWidget
...
Also make GtkWidget derive from GInitiallyUnowned
2010-09-26 22:18:18 -04:00
Benjamin Otte
90beb8a514
entry: Use gtk_cairo_transform_to_window()
2010-09-26 15:11:46 +02:00
Benjamin Otte
d9c9259861
Move GtkSizeRequest into GtkWidget
...
It doesn't make sense to keep them separate as GtkSizeRequest requires a
GtkWidget and GtkWidget implements GtkSizeRequest, so you can never have
one without the other.
It also makes the code a lot easier because no casts are required when
calling functions.
Also, the names would translate to gtk_widget_get_width() and people
agreed that this would be a too generic name, so a "preferred" was added
to the names.
So this patch moves the functions:
gtk_size_request_get_request_mode() => gtk_widget_get_request_mode()
gtk_size_request_get_width() => gtk_widget_get_preferred_width()
gtk_size_request_get_height() => gtk_widget_get_preferred_height()
gtk_size_request_get_size() => gtk_widget_get_preferred_size()
gtk_size_request_get_width_for_height() =>
gtk_widget_get_preferred_width_for_height()
gtk_size_request_get_height_for_width() =>
gtk_widget_get_preferred_height_for_width()
... and moves the corresponding vfuncs to the GtkWidgetClass.
The patch also renames the implementations of the vfuncs in widgets to
include the word "preferrred".
2010-09-26 15:11:45 +02:00
Benjamin Otte
34c6e35152
entry: Get rid of gdk_drawable_get_size() usage
2010-09-26 15:11:44 +02:00
Benjamin Otte
67284a57de
API: Get rid of gtk_draw_insertion_cursor()
...
and rename gtk_cairo_draw_insertion_cursor() to
gtk_draw_insertion_cursor().
2010-09-26 15:11:43 +02:00
Benjamin Otte
1d3f6b30b0
API: Rename gtk_cairo_paint_*() to gtk_paint_*()
...
Large patch, but just renaming.
Indentation should still mostly be correct because I took care of
keeping the indentation for this function name.
2010-09-26 15:11:42 +02:00
Benjamin Otte
d13a2ad66a
entry: Remove gtk_entry_is_drawable() checks when painting
2010-09-26 15:11:35 +02:00
Benjamin Otte
c412c1c752
entry: Port to draw signal
2010-09-26 15:11:35 +02:00
Benjamin Otte
696989d499
entry: Split else ifs into separate if statements
...
Preparation for the draw vfunc
2010-09-26 15:11:35 +02:00
Benjamin Otte
ec4be3619f
entry: Add bug reference to workaround
2010-09-26 15:11:35 +02:00
Benjamin Otte
2ee8fdb79b
gtk: gdk_drawable_get_display() => gdk_window_get_display()
2010-09-26 15:11:33 +02:00
Benjamin Otte
e8a6bad00b
gtk: Don't set colormap anymore when creating GDK windows
...
Colormaps are about to be removed, so not using them sounds like an
awesome idea.
2010-09-26 15:11:31 +02:00
Benjamin Otte
3d340d7449
text: Make _gtk_text_util_create_drag_icon() return a surface
...
And change its callers to handle it that way.
2010-09-26 15:03:00 +02:00
Matthias Clasen
e0aa12eb0a
Tons of transfer annotations
2010-09-21 00:18:11 -04:00
Javier Jardón
efbf04236e
Change GtkEditable typedef from GtkEditableClass to GtkEditabeInterface
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=323904
2010-09-17 19:57:09 +02:00
Javier Jardón
8345760fdb
gtkentry: remove unnneded check in map/unmap functions
2010-09-15 03:28:24 +02:00
Javier Jardón
b140884fec
Use gtk_size_request_get_size() instead deprecated gtk_widget_size_request()
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=629598
Signed-off-by: Javier Jardón <jjardon@gnome.org>
Signed-off-by: Tristan Van Berkom <tristanvb@openismus.com>
2010-09-15 03:02:58 +02:00
Javier Jardón
9e81022bf6
Use gtk_size_request_get_size() instead deprecated gtk_widget_get_child_requisition()
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=629177
2010-09-13 21:26:01 +02:00
Colin Walters
913cdf3be7
GDK: Prefix key names with KEY_
...
The keysyms create a lot of potential namespace conflicts for
C, and are especially problematic for introspection, where we take
constants into the namespace, so GDK_Display conflicts with GdkDisplay.
For C application compatiblity, add gdkkeysyms-compat.h which uses
the old names.
Just one user in GTK+ continues to use gdkkeysyms-compat.h, which is
the gtkimcontextsimple.c, since porting that requires porting more
custom Perl code.
2010-09-08 18:51:44 -04:00
Benjamin Otte
78ccc74879
entry: Use the same state for the flat box of text area and icons
2010-09-03 17:01:06 +02:00
Matthias Clasen
399580f9e1
Remove GtkEntry::state-hint
...
This was a style property to let theme engines 'opt-in' to more
correct behaviour while maintaining compatibility with existing
themes. GTK+ 3 engines are expected to handle the more correct
behaviour.
2010-09-01 20:21:21 -04:00
Matthias Clasen
29aa3818a4
Remove deprecated text and text_length field in GtkEntry
...
These fields have been superseded by GtkEntryBuffer.
2010-08-28 22:27:36 -04:00