[prev in list] [next in list] [prev in thread] [next in thread] 

List:       fedora-desktop-list
Subject:    Re: GTK test with koji
From:       Matthias Clasen <mclasen () redhat ! com>
Date:       2018-03-22 13:43:50
Message-ID: CAEXRhXk3-fCnWzjGFsDJ6qD_HXeWGspDOuChjJ7EGcTwu7-nZA () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


No sorry. I don't know what Xvfb does for focus - you may have to run a
window manager to get newly mapped windows focused. X defaults to
pointer-root, I believe


On Thu, Mar 22, 2018 at 7:15 AM Takao Fujiwara <fujiwara@redhat.com> wrote:

> I'd like to have GTK tests with koji and rpmbuild but I cannot get the
> focus-in event during the koji build.
>
> I referred the wiki page.
> https://fedoraproject.org/wiki/PackageMaintainers/GraphicalTests
>
> Added BuildRequires of xorg-x11-server-Xvfb and gtk3-devel in my spec file.
>
> +BuildRequires:  xorg-x11-server-Xvfb
> +BuildRequires:  gtk3-devel
>
> Added the run program in %check in my spec file.
>
> +gcc -o test %SOURCE1 `pkg-config --cflags --libs gtk+-3.0` -g
> +xvfb-run ./test
>
> Do you have any ideas?
>
> I added the following test code.
>
> -------- >8 ===============
> #include <gtk/gtk.h>
>
> #define TEST_STR "test"
>
> static void
> entry_focus_in_event_cb (GtkEntry *entry,
>                           gpointer  user_data)
> {
>      g_warning ("FOCUS_IN");
>      gtk_entry_set_text (entry, TEST_STR);
> }
>
> static void
> buffer_inserted_text_cb (GtkEntryBuffer *buffer,
>                           guint           position,
>                           const gchar    *chars,
>                           guint           n_chars,
>                           gpointer        user_data)
> {
>      g_warning ("INSERTED_TEXT");
>      g_assert_cmpstr (chars, ==, TEST_STR);
>      gtk_main_quit ();
> }
>
> int
> main (int argc, char* argv[])
> {
>      GtkWidget *window;
>      GtkWidget *box;
>      GtkWidget *entry;
>      GtkEntryBuffer *buffer;
>
>      gtk_init (&argc, &argv);
>      window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
>      box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
>      gtk_container_add (GTK_CONTAINER (window), box);
>      entry = gtk_entry_new ();
>      g_signal_connect (G_OBJECT (entry), "focus-in-event",
>                        G_CALLBACK (entry_focus_in_event_cb), NULL);
>      buffer = gtk_entry_get_buffer (GTK_ENTRY (entry));
>      g_signal_connect (G_OBJECT (buffer), "inserted-text",
>                        G_CALLBACK (buffer_inserted_text_cb), NULL);
>      gtk_container_add (GTK_CONTAINER (box), entry);
>      gtk_widget_show_all (window);
>
>      gtk_main ();
>      return 0;
> }
> ------------- >8 ======================
> _______________________________________________
> desktop mailing list -- desktop@lists.fedoraproject.org
> To unsubscribe send an email to desktop-leave@lists.fedoraproject.org
>

[Attachment #5 (text/html)]

<div dir="ltr">No sorry. I don&#39;t know what Xvfb does for focus - you may have to \
run a window manager to get newly mapped windows focused. X defaults to pointer-root, \
I believe<br><br></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Mar 22, \
2018 at 7:15 AM Takao Fujiwara &lt;<a \
href="mailto:fujiwara@redhat.com">fujiwara@redhat.com</a>&gt; \
wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex">I&#39;d like to have GTK tests with \
koji and rpmbuild but I cannot get the focus-in event during the koji build.<br> <br>
I referred the wiki page.<br>
<a href="https://fedoraproject.org/wiki/PackageMaintainers/GraphicalTests" \
rel="noreferrer" target="_blank">https://fedoraproject.org/wiki/PackageMaintainers/GraphicalTests</a><br>
 <br>
Added BuildRequires of xorg-x11-server-Xvfb and gtk3-devel in my spec file.<br>
<br>
+BuildRequires:   xorg-x11-server-Xvfb<br>
+BuildRequires:   gtk3-devel<br>
<br>
Added the run program in %check in my spec file.<br>
<br>
+gcc -o test %SOURCE1 `pkg-config --cflags --libs gtk+-3.0` -g<br>
+xvfb-run ./test<br>
<br>
Do you have any ideas?<br>
<br>
I added the following test code.<br>
<br>
-------- &gt;8 ===============<br>
#include &lt;gtk/gtk.h&gt;<br>
<br>
#define TEST_STR &quot;test&quot;<br>
<br>
static void<br>
entry_focus_in_event_cb (GtkEntry *entry,<br>
                                       gpointer   user_data)<br>
{<br>
        g_warning (&quot;FOCUS_IN&quot;);<br>
        gtk_entry_set_text (entry, TEST_STR);<br>
}<br>
<br>
static void<br>
buffer_inserted_text_cb (GtkEntryBuffer *buffer,<br>
                                       guint                 position,<br>
                                       const gchar      *chars,<br>
                                       guint                 n_chars,<br>
                                       gpointer            user_data)<br>
{<br>
        g_warning (&quot;INSERTED_TEXT&quot;);<br>
        g_assert_cmpstr (chars, ==, TEST_STR);<br>
        gtk_main_quit ();<br>
}<br>
<br>
int<br>
main (int argc, char* argv[])<br>
{<br>
        GtkWidget *window;<br>
        GtkWidget *box;<br>
        GtkWidget *entry;<br>
        GtkEntryBuffer *buffer;<br>
<br>
        gtk_init (&amp;argc, &amp;argv);<br>
        window = gtk_window_new (GTK_WINDOW_TOPLEVEL);<br>
        box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);<br>
        gtk_container_add (GTK_CONTAINER (window), box);<br>
        entry = gtk_entry_new ();<br>
        g_signal_connect (G_OBJECT (entry), &quot;focus-in-event&quot;,<br>
                                   G_CALLBACK (entry_focus_in_event_cb), NULL);<br>
        buffer = gtk_entry_get_buffer (GTK_ENTRY (entry));<br>
        g_signal_connect (G_OBJECT (buffer), &quot;inserted-text&quot;,<br>
                                   G_CALLBACK (buffer_inserted_text_cb), NULL);<br>
        gtk_container_add (GTK_CONTAINER (box), entry);<br>
        gtk_widget_show_all (window);<br>
<br>
        gtk_main ();<br>
        return 0;<br>
}<br>
------------- &gt;8 ======================<br>
_______________________________________________<br>
desktop mailing list -- <a href="mailto:desktop@lists.fedoraproject.org" \
target="_blank">desktop@lists.fedoraproject.org</a><br> To unsubscribe send an email \
to <a href="mailto:desktop-leave@lists.fedoraproject.org" \
target="_blank">desktop-leave@lists.fedoraproject.org</a><br> </blockquote></div>


[Attachment #6 (text/plain)]

_______________________________________________
desktop mailing list -- desktop@lists.fedoraproject.org
To unsubscribe send an email to desktop-leave@lists.fedoraproject.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic