summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorElliot Lee <sopwith@redhat.com>2000-06-20 20:22:05 +0000
committerElliot Lee <sopwith@src.gnome.org>2000-06-20 20:22:05 +0000
commit8f4f35b392510a8b480dd0c7e6030ab834f6aa43 (patch)
tree43279f2410f52f6548858709bbb344ac4d9054e8 /gtk
parentdd7510dccbf51df37e0d02d31f4daed4e52152e6 (diff)
downloadgdk-pixbuf-8f4f35b392510a8b480dd0c7e6030ab834f6aa43.tar.gz
(follow-on from previous commit)
(follow-on from previous commit) 2000-06-18 Elliot Lee <sopwith@redhat.com> * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen. * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar problem by calculating event position relative to the trough rather than the slider. * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate. * gdk/gdkgc.h: Add GDK_NOR. * configure.in, Makefile.am: Add modules top level dir * configure.in: Only use pangox library if building x11 target. * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
Diffstat (limited to 'gtk')
-rw-r--r--gtk/Makefile.am13
-rw-r--r--gtk/gtkbutton.c2
-rw-r--r--gtk/gtkcolorsel.c4
-rw-r--r--gtk/gtkdnd.c2
-rw-r--r--gtk/gtklabel.c4
-rw-r--r--gtk/gtkplug.c8
-rw-r--r--gtk/gtkrange.c16
-rw-r--r--gtk/gtkselection.c6
-rw-r--r--gtk/gtksocket.c10
-rw-r--r--gtk/gtkstyle.c6
-rw-r--r--gtk/gtkwindow.c5
-rw-r--r--gtk/testgtk.c9
12 files changed, 51 insertions, 34 deletions
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index a564e5309..ec19afdbf 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -7,9 +7,9 @@ INCLUDES = @STRIP_BEGIN@ \
-DGTK_DATA_PREFIX=\"$(prefix)\" \
-DGTK_SYSCONFDIR=\"$(sysconfdir)\" \
-DGTK_LOCALEDIR=\"$(gtklocaledir)\" \
+ -DTESTGTK_RCFILE=\"`pwd`/$(srcdir)/testgtkrc\" \
-I$(top_srcdir) -I../gdk \
-I$(top_srcdir)/gdk \
- -I$(top_srcdir)/gdk/x11 \
@GTK_DEBUG_FLAGS@ \
@GTK_XIM_FLAGS@ \
@GTK_LOCALE_FLAGS@ \
@@ -35,6 +35,7 @@ LDFLAGS = @STRIP_BEGIN@ \
@more_libs@ \
-lm \
@STRIP_END@
+
# $(top_builddir)/gdk/libgdk.la
@@ -516,12 +517,12 @@ uninstall-local:
# test programs, not to be installed
#
noinst_PROGRAMS = testgtk testcalendar testinput testselection testrgb testdnd testtext simple testtextbuffer # testthreads
-DEPS = libgtk-x11.la $(top_builddir)/gdk/libgdk-x11.la
+DEPS = @gtktargetlib@ $(top_builddir)/gdk/@gdktargetlib@
LDADDS = @STRIP_BEGIN@ \
- libgtk-x11.la \
- $(top_builddir)/gdk/libgdk-x11.la \
- @x_ldflags@ \
- @x_libs@ \
+ @gtktargetlib@ \
+ $(top_builddir)/gdk/@gdktargetlib@ \
+ @more_ldflags@ \
+ @more_libs@ \
@GDK_WLIBS@ \
@PANGO_LIBS@ \
@GLIB_LIBS@ \
diff --git a/gtk/gtkbutton.c b/gtk/gtkbutton.c
index 3f0e4ff62..2c9113aed 100644
--- a/gtk/gtkbutton.c
+++ b/gtk/gtkbutton.c
@@ -595,7 +595,7 @@ gtk_button_paint (GtkWidget *widget,
y -= 1;
width += 2;
height += 2;
-
+
gtk_paint_focus (widget->style, widget->window,
area, widget, "button",
x, y, width - 1, height - 1);
diff --git a/gtk/gtkcolorsel.c b/gtk/gtkcolorsel.c
index d292106bf..c43c18438 100644
--- a/gtk/gtkcolorsel.c
+++ b/gtk/gtkcolorsel.c
@@ -33,6 +33,8 @@
#include "win32/gdkwin32.h"
#elif defined (GDK_WINDOWING_NANOX)
#include "nanox/gdkprivate-nanox.h"
+#elif defined (GDK_WINDOWING_FB)
+#include "linux-fb/gdkprivate-fb.h"
#endif
#include "gdk/gdkkeysyms.h"
#include "gtkcolorsel.h"
@@ -581,7 +583,7 @@ palette_paint (GtkWidget *drawing_area,
gc = drawing_area->style->black_gc;
else
gc = drawing_area->style->white_gc;
-
+
gdk_draw_rectangle (drawing_area->window,
gc, FALSE, 0, 0,
drawing_area->allocation.width - 1,
diff --git a/gtk/gtkdnd.c b/gtk/gtkdnd.c
index e00fa7d59..5de66cfa2 100644
--- a/gtk/gtkdnd.c
+++ b/gtk/gtkdnd.c
@@ -30,6 +30,8 @@
#include "x11/gdkx.h"
#elif defined (GDK_WINDOWING_WIN32)
#include "win32/gdkwin32.h"
+#elif defined(GDK_WINDOWING_FB)
+#include "linux-fb/gdkfb.h"
#elif defined (GDK_WINDOWING_NANOX)
#include "nanox/gdkprivate-nanox.h"
#endif
diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c
index 92357439d..823dcb497 100644
--- a/gtk/gtklabel.c
+++ b/gtk/gtklabel.c
@@ -622,8 +622,8 @@ gtk_label_expose (GtkWidget *widget,
gdk_draw_layout (widget->window, widget->style->fg_gc [widget->state], x, y, label->layout);
- gdk_gc_set_clip_mask (widget->style->white_gc, NULL);
- gdk_gc_set_clip_mask (widget->style->fg_gc[widget->state], NULL);
+ gdk_gc_set_clip_rectangle (widget->style->white_gc, NULL);
+ gdk_gc_set_clip_rectangle (widget->style->fg_gc[widget->state], NULL);
}
return TRUE;
diff --git a/gtk/gtkplug.c b/gtk/gtkplug.c
index 3329218f6..ae6397e51 100644
--- a/gtk/gtkplug.c
+++ b/gtk/gtkplug.c
@@ -26,6 +26,7 @@
*/
#include "gdkconfig.h"
+#include "gdkprivate.h"
#if defined (GDK_WINDOWING_X11)
#include "x11/gdkx.h"
@@ -33,6 +34,8 @@
#include "win32/gdkwin32.h"
#elif defined (GDK_WINDOWING_NANOX)
#include "nanox/gdkprivate-nanox.h"
+#elif defined (GDK_WINDOWING_FB)
+#include "linux-fb/gdkfb.h"
#endif
#include "gdk/gdkkeysyms.h"
@@ -53,7 +56,6 @@ static void gtk_plug_set_focus (GtkWindow *window,
/* From Tk */
#define EMBEDDED_APP_WANTS_FOCUS NotifyNormal+20
-
static GtkWindowClass *parent_class = NULL;
@@ -115,7 +117,7 @@ gtk_plug_init (GtkPlug *plug)
}
void
-gtk_plug_construct (GtkPlug *plug, guint32 socket_id)
+gtk_plug_construct (GtkPlug *plug, GdkNativeWindow socket_id)
{
plug->socket_window = gdk_window_lookup (socket_id);
plug->same_app = TRUE;
@@ -128,7 +130,7 @@ gtk_plug_construct (GtkPlug *plug, guint32 socket_id)
}
GtkWidget*
-gtk_plug_new (guint32 socket_id)
+gtk_plug_new (GdkNativeWindow socket_id)
{
GtkPlug *plug;
diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c
index 92f49210c..42a59fe16 100644
--- a/gtk/gtkrange.c
+++ b/gtk/gtkrange.c
@@ -29,7 +29,6 @@
#include "gtkrange.h"
#include "gtksignal.h"
-
#define SCROLL_TIMER_LENGTH 20
#define SCROLL_INITIAL_DELAY 100
#define SCROLL_DELAY_LENGTH 300
@@ -988,8 +987,6 @@ gtk_range_motion_notify (GtkWidget *widget,
GdkEventMotion *event)
{
GtkRange *range;
- GdkModifierType mods;
- gint x, y, mask;
g_return_val_if_fail (GTK_IS_RANGE (widget), FALSE);
g_return_val_if_fail (event != NULL, FALSE);
@@ -998,13 +995,14 @@ gtk_range_motion_notify (GtkWidget *widget,
if (range->click_child == RANGE_CLASS (range)->slider)
{
- x = event->x;
- y = event->y;
+ GdkModifierType mods;
+ gint x, y, mask, x2, y2;
- if (event->is_hint || (event->window != range->slider))
- gdk_window_get_pointer (range->slider, &x, &y, &mods);
- else
- mods = event->state;
+ gdk_window_get_pointer (range->trough, &x, &y, &mods);
+ gdk_window_get_position (range->slider, &x2, &y2);
+
+ x -= x2;
+ y -= y2;
switch (range->button)
{
diff --git a/gtk/gtkselection.c b/gtk/gtkselection.c
index c443282e9..ea0abcf32 100644
--- a/gtk/gtkselection.c
+++ b/gtk/gtkselection.c
@@ -844,9 +844,13 @@ gtk_selection_request (GtkWidget *widget,
/* Create GdkWindow structure for the requestor */
+#if defined(GDK_WINDOWING_WIN32) || defined(GDK_WINDOWING_X11)
info->requestor = gdk_window_lookup (event->requestor);
if (!info->requestor)
info->requestor = gdk_window_foreign_new (event->requestor);
+#else
+ info->requestor = NULL;
+#endif
/* Determine conversions we need to perform */
@@ -1293,8 +1297,10 @@ gtk_selection_property_notify (GtkWidget *widget,
g_return_val_if_fail (widget != NULL, FALSE);
g_return_val_if_fail (event != NULL, FALSE);
+#if defined(GDK_WINDOWING_WIN32) || defined(GDK_WINDOWING_X11)
if ((event->state != GDK_PROPERTY_NEW_VALUE) || /* property was deleted */
(event->atom != gdk_selection_property)) /* not the right property */
+#endif
return FALSE;
#ifdef DEBUG_SELECTION
diff --git a/gtk/gtksocket.c b/gtk/gtksocket.c
index 860e06817..28ffe4dce 100644
--- a/gtk/gtksocket.c
+++ b/gtk/gtksocket.c
@@ -31,6 +31,8 @@
#include "x11/gdkx.h"
#elif defined (GDK_WINDOWING_WIN32)
#include "win32/gdkwin32.h"
+#elif defined(GDK_WINDOWING_FB)
+#include "linux-fb/gdkfb.h"
#endif
#include "gdk/gdkkeysyms.h"
@@ -145,7 +147,7 @@ gtk_socket_new (void)
}
void
-gtk_socket_steal (GtkSocket *socket, guint32 id)
+gtk_socket_steal (GtkSocket *socket, GdkNativeWindow id)
{
GtkWidget *widget;
@@ -543,7 +545,7 @@ gtk_socket_send_configure_event (GtkSocket *socket)
}
static void
-gtk_socket_add_window (GtkSocket *socket, guint32 xid)
+gtk_socket_add_window (GtkSocket *socket, GdkNativeWindow xid)
{
socket->plug_window = gdk_window_lookup (xid);
socket->same_app = TRUE;
@@ -757,7 +759,7 @@ gtk_socket_filter_func (GdkXEvent *gdk_xevent, GdkEvent *event, gpointer data)
return return_val;
}
-#elif defined (GDK_WINDOWING_WIN32)
+#else
GtkType
gtk_socket_get_type (void)
@@ -774,7 +776,7 @@ gtk_socket_new ()
}
void
-gtk_socket_steal (GtkSocket *socket, guint32 id)
+gtk_socket_steal (GtkSocket *socket, GdkNativeWindow id)
{
g_error ("GtkSocket not implemented");
}
diff --git a/gtk/gtkstyle.c b/gtk/gtkstyle.c
index 84cc60431..d2fb0f715 100644
--- a/gtk/gtkstyle.c
+++ b/gtk/gtkstyle.c
@@ -404,20 +404,18 @@ gtk_style_new (void)
style = g_new0 (GtkStyle, 1);
style->font_desc = pango_font_description_from_string ("Sans 10");
-
+
if (!default_font)
{
default_font = gdk_font_from_description (style->font_desc);
if (!default_font)
- default_font = gdk_font_load ("fixed");
- if (!default_font)
g_error ("Unable to load default font.");
}
style->font = default_font;
gdk_font_ref (style->font);
-
+
style->ref_count = 1;
style->attach_count = 0;
style->colormap = NULL;
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index 1be60d5b0..11a0d83cf 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -33,6 +33,8 @@
#include "x11/gdkx.h"
#elif defined (GDK_WINDOWING_WIN32)
#include "win32/gdkwin32.h"
+#elif defined (GDK_WINDOWING_FB)
+#include "linux-fb/gdkfb.h"
#elif defined (GDK_WINDOWING_NANOX)
#include "nanox/gdkprivate-nanox.h"
#endif
@@ -1826,6 +1828,9 @@ gtk_window_compute_default_size (GtkWindow *window,
*width = info->width > 0 ? info->width : *width;
*height = info->height > 0 ? info->height : *height;
}
+
+ *width = MIN(*width, gdk_screen_width());
+ *height = MIN(*width, gdk_screen_height());
}
/* Constrain a window size to obey the hints passed in geometry
diff --git a/gtk/testgtk.c b/gtk/testgtk.c
index 6a2303ce6..accc42d7c 100644
--- a/gtk/testgtk.c
+++ b/gtk/testgtk.c
@@ -5886,7 +5886,7 @@ create_text (void)
gtk_text_freeze (GTK_TEXT (text));
- font = gdk_font_load ("-adobe-courier-medium-r-normal--*-120-*-*-*-*-*-*");
+ font = NULL;
for (i=0; i<ntext_colors; i++)
{
@@ -8510,7 +8510,7 @@ do_exit (GtkWidget *widget, GtkWidget *window)
gtk_main_quit ();
}
-void
+GtkWidget *
create_main_window (void)
{
struct {
@@ -8627,6 +8627,7 @@ create_main_window (void)
for (i = 0; i < nbuttons; i++)
{
button = gtk_button_new_with_label (buttons[i].label);
+ gtk_widget_set_name(button, buttons[i].label);
if (buttons[i].func)
gtk_signal_connect (GTK_OBJECT (button),
"clicked",
@@ -8653,6 +8654,8 @@ create_main_window (void)
gtk_widget_grab_default (button);
gtk_widget_show_all (window);
+
+ return window;
}
int
@@ -8682,9 +8685,7 @@ main (int argc, char *argv[])
"debug_msg",
1,
GTK_TYPE_STRING, "GtkWidgetClass <ctrl><release>9 test");
-
create_main_window ();
-
gtk_main ();
return 0;