GtkAssistant "apply" signal

2013-05-17 Thread Kip Warner
Hey list,

During handling of the "apply" signal in my GtkAssistant, what is the
recommended way of stopping the assistant from advancing to the next
page if my code would like to abort the apply transitioning to the next
page automatically? I am aware of the set_page_complete() function,
however I don't actually know if the page is ready to transition to the
next page until the apply button is actually pressed.

What I'm doing now if I ever want to stop the "apply" signal
transitioning to the next page is to run the following in the "apply"
signal callback where currentPageIndex is the index of the assistant
page containing the apply button.

  assistant.set_current_page(currentPageIndex - 1)

This works, excepts it has an obnoxious side effect. This makes the
'previous' button transition to ghost pages however many times the above
'apply' code is run if the user clicks 'previous' on the page containing
the apply button. By ghost page, I mean clicking previous goes back, but
the page doesn't actually change, only on the left page list in the
assistant.

-- 
Kip Warner -- Software Engineer
OpenPGP encrypted/signed mail preferred
http://www.thevertigo.com
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list


Re: Can I install both GTK+2 and GTK+3?

2013-05-17 Thread Emmanuele Bassi
hi;

On 17 May 2013 16:54, Tristan Van Berkom  wrote:
>> sure, let's work around bugs and "peculiarities" instead of, you know,
>> fixing them. ;-)
>
> Right, but let's try to fix them without radically changing the set of
> particularities and introducing new bugs in the process ;-)

that only happens with proper regression testing and continuous
integration — and, rejoice! it's been worked on right as we speak.

ciao,
 Emmanuele.

--
W: http://www.emmanuelebassi.name
B: http://blogs.gnome.org/ebassi/
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: Can I install both GTK+2 and GTK+3?

2013-05-17 Thread Tristan Van Berkom
On Fri, May 17, 2013 at 11:17 PM, Emmanuele Bassi  wrote:
> hi;
>
> On 17 May 2013 12:37, David Nečas  wrote:
>> On Fri, May 17, 2013 at 11:40:10AM +0100, Emmanuele Bassi wrote:
>>> it's maintained only for critical bugs, or for platform support; no
>>> new feature, and no new API is *ever* going in to the gtk-2-24 branch.
>>
>> And that's what many 3rd party developers like.  Absolutely no changes
>> except critical bug and platform support fixes.
>
> yes, I suppose there is a part of ISVs that favour this approach.
>
> after all, there are still a ton of corporate Motif applications
> written in 1994 lying around that still need to be replaced by web
> apps.
>
>>  All the small bugs and
>> peculiarities are known, are not replaced with a different set of small
>> bugs and peculiarities in the next release and we've learned how to work
>> around them.
>
> sure, let's work around bugs and "peculiarities" instead of, you know,
> fixing them. ;-)

Right, but let's try to fix them without radically changing the set of
particularities and introducing new bugs in the process ;-)

Basically, we must care about not breaking applications which were
written 3 or 4 years ago, those applications are just as important as
applications which were written, or hacked on, in the current release
cycle. The more we care about code which others have written in
the past, and not breaking their code by our "fixing of bugs" the more
we build trust.

Anyway, I'm sure this trust is getting stronger the more that
applications do port to GTK+3 and the more GTK+3 matures.

I.e. it's hard to fix back-compat problems when nobody files bugs
about them, the more applications which do port, the more bugs get
filed, and the more awareness is raised in general. It's that awareness
which helps us to pay attention to older applications, helps us to
avoid breaking older applications (which are just as important as
newer applications).

Cheers,
-Tristan
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: Can I install both GTK+2 and GTK+3?

2013-05-17 Thread Emmanuele Bassi
hi;

On 17 May 2013 12:37, David Nečas  wrote:
> On Fri, May 17, 2013 at 11:40:10AM +0100, Emmanuele Bassi wrote:
>> it's maintained only for critical bugs, or for platform support; no
>> new feature, and no new API is *ever* going in to the gtk-2-24 branch.
>
> And that's what many 3rd party developers like.  Absolutely no changes
> except critical bug and platform support fixes.

yes, I suppose there is a part of ISVs that favour this approach.

after all, there are still a ton of corporate Motif applications
written in 1994 lying around that still need to be replaced by web
apps.

>  All the small bugs and
> peculiarities are known, are not replaced with a different set of small
> bugs and peculiarities in the next release and we've learned how to work
> around them.

sure, let's work around bugs and "peculiarities" instead of, you know,
fixing them. ;-)

ciao,
 Emmanuele.

--
W: http://www.emmanuelebassi.name
B: http://blogs.gnome.org/ebassi/
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: Can I install both GTK+2 and GTK+3?

2013-05-17 Thread David Buchan
Thanks Emmanuele. Yes, providing a grace period for users is exactly what I had 
in mind. For example, since lots of people are less than enthused about Unity, 
there are quite a few Ubuntu 10.04 users still out there, and the Ubuntu 
repository only serves up GTK+2 for that. I suppose people might be able to 
build GTK+3, but that's likely a lot of work. So had in mind producing two 
binaries for the distribution tarball.





 From: Emmanuele Bassi 
To: David Buchan  
Cc: gtk-app-devel-list list  
Sent: Thursday, May 16, 2013 10:50 PM
Subject: Re: Can I install both GTK+2 and GTK+3?
 

hi;

yes, you most definitely can have gtk 2.x and gtk 3.x installed on the
same machine, without them interfering with each other. the shared
libraries and ancillary files are all parallel installable.

what you cannot do is using gtk 2.x *and* gtk 3.x at the same time, in
the same process.

if you want to write your application to support both gtk 2.x and 3.x,
you can do that only by compiling once against gtk 2.x and again
against gtk 3.x — i.e. you will need two binaries.

targeting gtk 2.x is not a good idea, though, unless you're migrating
from 2.x to 3.x and you want to have a "grace period" for your users
to switch. gtk 3.x is already 2.5 years old, and will be 3 years old
when 3.10 is released this September.

ciao,
Emmanuele.


On 17 May 2013 03:40, David Buchan  wrote:
> I am using Ubuntu 13.04.
>
>
> Rumour on the street (I *think* I read it somewhere) is that I can install 
> both libgtk2.0-dev and libgtk-3-dev. Is that true? Can they both be installed 
> without interfering with each other, and without breaking Unity?
>
> I'd like to be able to provide executables of my program for those with GTK+2 
> and those with GTK+3. Maybe I'm safer to use two separate machines to 
> compile. Unity seems    delicate.
>
> Dave
> ___
> gtk-app-devel-list mailing list
> gtk-app-devel-list@gnome.org
> https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list



-- 
W: http://www.emmanuelebassi.name
B: http://blogs.gnome.org/ebassi/
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: GTK+3 motion events and is_hint

2013-05-17 Thread Donn

On 17/05/2013 11:29, Tristan Van Berkom wrote:

This is a good question, actually I haven't used this feature since
GTK+2... I'd be curious to know the answer but here is my input
anyway.

Tristan,
 Thanks so much for responding. I will try your suggestions and perhaps 
clarity will come in time. I do think it's a GTK+3 quirk. In the 
meantime, I will keep coding - better to aim for finished than perfect.


\d

___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list


Re: Can I install both GTK+2 and GTK+3?

2013-05-17 Thread David Nečas
On Fri, May 17, 2013 at 11:40:10AM +0100, Emmanuele Bassi wrote:
> it's maintained only for critical bugs, or for platform support; no
> new feature, and no new API is *ever* going in to the gtk-2-24 branch.

And that's what many 3rd party developers like.  Absolutely no changes
except critical bug and platform support fixes.  All the small bugs and
peculiarities are known, are not replaced with a different set of small
bugs and peculiarities in the next release and we've learned how to work
around them.

Actually, I do target Gtk+3 with a program which has a number of its own
widgets.  And I'm constantly anxious and wondering whether it was a good
decision...

Yeti

___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list


Re: Can I install both GTK+2 and GTK+3?

2013-05-17 Thread Emmanuele Bassi
hi;

On 17 May 2013 11:22, Chris Vine  wrote:
> On Fri, 17 May 2013 03:50:57 +0100
> Emmanuele Bassi  wrote:
>> hi;
>>
>> yes, you most definitely can have gtk 2.x and gtk 3.x installed on the
>> same machine, without them interfering with each other. the shared
>> libraries and ancillary files are all parallel installable.
>>
>> what you cannot do is using gtk 2.x *and* gtk 3.x at the same time, in
>> the same process.
>>
>> if you want to write your application to support both gtk 2.x and 3.x,
>> you can do that only by compiling once against gtk 2.x and again
>> against gtk 3.x — i.e. you will need two binaries.
>>
>> targeting gtk 2.x is not a good idea, though, unless you're migrating
>> from 2.x to 3.x and you want to have a "grace period" for your users
>> to switch. gtk 3.x is already 2.5 years old, and will be 3 years old
>> when 3.10 is released this September.
>
> I wouldn't agree with that.  gtk+-2 is still maintained (the latest
> maintenance release is 4 days old) and is a far more stable target.

it's maintained only for critical bugs, or for platform support; no
new feature, and no new API is *ever* going in to the gtk-2-24 branch.
if a bug is fixed by the introduction of new API, then it won't be
fixed in 2.24.x

> The introspection bindings for gtk+-3 break at regular intervals (I
> gave up on trying write minor tools using gjs/introspection about 2
> years ago because of it),

yes, 2 years ago the breakage of g-i was more evident; the feature was
also pretty new. these days, at most, you may find some missing
annotation, which usually gets fixed in the following release. yes: we
don't paper over non-introspectable API by fixing the language
bindings, so you need to wait for gtk to be updated; the side effect
of that is that you only have a single moving part, instead of two.

> and the theming breaks with every release.

yes, the CSS is known to not be stable; on the other hand, there has
been no stability promise on that front — actually, since gtk 1.x. it
just so happened that themes did not break in gtk 2.x, but not
breaking themes for nearly ten years actually accelerated the switch
to a different technology for 3.x, and thus some of the breakage that
followed. we're still getting feedback on themeing issues, and the
breakage comes from changes needed by theme authors, as well as widget
and toolkit developers.

> Possibly things might be settling down with gtk+3 now but I have not
> seen any announcement that these are considered stable now.

I very much doubt you'll see one; the only announcements made are
release announcement.

>  Until there
> is more stability I doubt there is any prospect of the big non-gnome
> gtk+ applications I use (claws-mail, firefox and libreoffice) moving to
> gtk+-3.

two of the three applications you picked (firefox and libreoffice)
have their own toolkit that uses parts of the gtk themeing
infrastructure to draw their UI so that it, at least, looks like an
integrated application; switching to gtk3 for them is pretty
inconsequential: they are not gtk applications. the reason why they
don't port to gtk3 is not because of perceived instability of gtk3:
it's because they are big applications that require a ton of work to
be ported. Gimp took years to get ported to gtk3, and it's still a
work in progress.

having said that, firefox already has a gtk 3 port that is also a
blocker for enabling proper acceleration on Linux. I don't know
whether or not LO will switch to gtk3 any time soon, considering the
amount of stuff that needs to happen on that code base.

those are exceptions, though: large applications, with big code bases
and a long history. if you're not writing one of those, or if you're
writing a new application, targeting gtk2 is pretty pointless, and you
won't get far.

ciao,
 Emmanuele.

--
W: http://www.emmanuelebassi.name
B: http://blogs.gnome.org/ebassi/
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: Can I install both GTK+2 and GTK+3?

2013-05-17 Thread Chris Vine
On Fri, 17 May 2013 03:50:57 +0100
Emmanuele Bassi  wrote:
> hi;
> 
> yes, you most definitely can have gtk 2.x and gtk 3.x installed on the
> same machine, without them interfering with each other. the shared
> libraries and ancillary files are all parallel installable.
> 
> what you cannot do is using gtk 2.x *and* gtk 3.x at the same time, in
> the same process.
> 
> if you want to write your application to support both gtk 2.x and 3.x,
> you can do that only by compiling once against gtk 2.x and again
> against gtk 3.x — i.e. you will need two binaries.
> 
> targeting gtk 2.x is not a good idea, though, unless you're migrating
> from 2.x to 3.x and you want to have a "grace period" for your users
> to switch. gtk 3.x is already 2.5 years old, and will be 3 years old
> when 3.10 is released this September.

I wouldn't agree with that.  gtk+-2 is still maintained (the latest
maintenance release is 4 days old) and is a far more stable target.

The introspection bindings for gtk+-3 break at regular intervals (I
gave up on trying write minor tools using gjs/introspection about 2
years ago because of it), and the theming breaks with every release.
Theming is not necessarily an issue for many programs, but
introspection is.

Possibly things might be settling down with gtk+3 now but I have not
seen any announcement that these are considered stable now.  Until there
is more stability I doubt there is any prospect of the big non-gnome
gtk+ applications I use (claws-mail, firefox and libreoffice) moving to
gtk+-3.

Chris
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list

Re: GTK+3 motion events and is_hint

2013-05-17 Thread Tristan Van Berkom
This is a good question, actually I haven't used this feature since GTK+2...

I'd be curious to know the answer but here is my input anyway.

Your application doesn't do much between is_hint events, so it could
be that if you were slow handling the hint events, you might receive
events that are not 'is_hint' in between the regular 'is_hint' events.

FWIW, I don't think you should be concerned about which events are
'is_hint' or not 'is_hint'.

Rather, the hint mask traditionally prevents you from receiving too many
motion events that are queued up while your widget is processing a previous
event, and the call to gdk_event_request_motions() tells GDK that your
GdkWindow is ready to handle more motion events.

Actually, I don't see why you should be trying to handle the 'is_hint' events
any differently from the normal events (it should be enough to just call
gdk_event_request_motions() at the end of a motion-notify-event handler,
after you're done processing the event).

Cheers,
-Tristan

On Fri, May 17, 2013 at 6:15 PM, Donn  wrote:
> Anyone?
>
>
> \d
> ___
> gtk-app-devel-list mailing list
> gtk-app-devel-list@gnome.org
> https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list


Re: GTK+3 motion events and is_hint

2013-05-17 Thread Donn

Anyone?

\d
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list