Project

General

Profile

Feature #123

Port to GTK+ 3?

Added by X. W. about 9 years ago. Updated 2 months ago.

Status:
In Progress
Priority:
Normal
Category:
-
Target version:
-
Start date:
08/11/2013
Due date:
% Done:

0%

Estimated time:

Description

Dear Mr. Yamamoto,

the initial version of GTK+ 3 already has been released more than two years ago. But Sylpheed still is utilizing the old GTK+ 2.

Why is that?

And will Sylpheed be ported to GTK+ 3 anytime soon?


Files

bug123-20140601.tar.gz (20.5 KB) bug123-20140601.tar.gz patch to use newer version of API instead of deprecated one Kentaro Hayashi, 06/01/2014 10:37 PM
bug123-20140611.tar.gz (19.6 KB) bug123-20140611.tar.gz Kentaro Hayashi, 06/11/2014 12:37 AM
#1

Updated by X. W. almost 9 years ago

PS:

Just wondering:

Or do you plan to port Sylpheed to something entirely different, like Qt for example?

#2

Updated by Hiroyuki Yamamoto almost 9 years ago

  • Priority changed from Immediate to Normal

Porting to GTK+3 is roughly planned, but no progress yet.

I had also thought of porting to other platforms like Qt,
but it will be almost same as full rewriting.

#3

Updated by X. W. over 8 years ago

Dear Mr. Yamamoto,

i just wanted to let you know that i just had a look at Audacious 3.4.2 Win32:

http://audacious-media-player.org/

It uses GTK+ 3 on Windows and it seems to work just fine :). So, maybe you want to have a look at it yourself as well.

In feature request #124 you said you can not upgrade GTK+ 2 on Windows because of font rendering problems.

So, could you please start porting Sylpheed to the latest GTK+ 3 and release a GTK+ 3 Sylpheed Win32 ;)?

It would be much appreciated.

Regards

#4

Updated by X. W. over 8 years ago

PS:

GTK+ 3 Win32 is also available on gtk.org now, see:

http://www.gtk.org/download/win32.php
http://www.gtk.org/download/win32_tutorial.php

:)

So, please port Sylpheed to GTK+ 3 ;).

Regards

#5

Updated by Kentaro Hayashi over 8 years ago

  • Assignee set to Kentaro Hayashi
#6

Updated by Kentaro Hayashi about 8 years ago

As a first step, we need to use newer version of API instead of deprecated stuff.
Here is the list of patch a bit supports newer one.

I've attached a patch set bug123-20140601.tar.gz. This archive contains following patches.

Mr Yamamoto, please review and merge into svn HEAD? I've created this patch set for r3404.

% ls -1 bug123-20140601
0001-use-g_path_get_basename-instead-of-g_basename-123.patch
0002-don-t-use-g_strdown-123.patch
0003-use-g_mapped_file_unref-instead-of-g_mapped_file_fre.patch
0004-use-g_io_channel_read_chars-instead-of-g_io_channel_.patch
0005-use-g_thread_new-instead-of-g_thread_create-123.patch
0006-use-GtkTooltip-instead-of-GtkTooltips-123.patch
0007-use-gtk_widget_set_tooltip_text-instead-of-gtk_toolt.patch
0008-use-gtk_tool_item_set_tooltip_text-instead-of-gtk_to.patch
0009-use-gtk_widget_set_-function-instead-of-GTK_WIDGET_S.patch
0010-remove-needless-GtkNotebookPage-from-argument-123.patch
0011-use-gtk_widget_set_can_focus-function-instead-of-GTK.patch
0012-get-GdkDisplay-by-gdk_display_get_default-123.patch
0013-use-GRecMutex-instead-of-GStaticRecMutex-123.patch
0014-use-gtk_widget_get_visible-instead-of-GTK_WIDGET_VIS.patch
0015-use-gtk_widget_has_focus-instead-of-GTK_WIDGET_HAS_F.patch
0016-use-gtkut_widget_get_state-instead-of-GTK_WIDGET_STA.patch
0017-use-gtkut_widget_is_sensitive-instead-of-GTK_WIDGET_.patch
0018-use-g_string_append_printf-instead-of-g_string_sprin.patch

Then we need to consider replacing GtkItemFactory, GtkCList, GtkCTree and so on...

#7

Updated by Hiroyuki Yamamoto about 8 years ago

Kentaro HAYASHI wrote:

As a first step, we need to use newer version of API instead of deprecated stuff.
Here is the list of patch a bit supports newer one.

I've attached a patch set bug123-20140601.tar.gz. This archive contains following patches.

Mr Yamamoto, please review and merge into svn HEAD? I've created this patch set for r3404.

Thanks. Just reviewed your patch.

0001-use-g_path_get_basename-instead-of-g_basename-123.patch
- leaks memory in some case
- variable name "basename" should not be used
- possible performance degradation because of malloc()
(should use our original basename() in this case?)

0002-don-t-use-g_strdown-123.patch
- html.c: only tag name and attr_name have to be lowercase, not other parts (attr_value)

0013-use-GRecMutex-instead-of-GStaticRecMutex-123.patch
- g_rec_mutex_init() doesn't seem to be required for static GRecMutex, according to the document

Then we need to consider replacing GtkItemFactory, GtkCList, GtkCTree and so on...

Yes, these are the hardest part :)

#8

Updated by Kentaro Hayashi about 8 years ago

Thanks you for reviewing!

Hiroyuki Yamamoto wrote:

0001-use-g_path_get_basename-instead-of-g_basename-123.patch
- leaks memory in some case
- variable name "basename" should not be used
- possible performance degradation because of malloc()
(should use our original basename() in this case?)

Oops! Actually there are performance degradation,
it spends more than 4 times or so. it is better to use my_basename or something to equivalent one.

0002-don-t-use-g_strdown-123.patch
- html.c: only tag name and attr_name have to be lowercase, not other parts (attr_value)

It is same as 0001, it is better to use my_strdown or something.

0013-use-GRecMutex-instead-of-GStaticRecMutex-123.patch
- g_rec_mutex_init() doesn't seem to be required for static GRecMutex, according to the document

I've got it. Acutually it is documented for static GRecMutex...

I've updated patch 0001,0002,0013.

#9

Updated by replica watches 5 months ago

https://www.bestwatchaaa.com/Hamilton-replica.html https://www.bestwatchaaa.com/Jaeger-LeCoultre-replica.html https://www.fakeswatchs.com/ http://www.classicwatchess.com/ https://www.hotwatchsreplica.com/Hublot.html Michele https://www.bestwatchss.com/SevenFriday-Replica-Watches.html the https://www.allswisswatchs.com/ https://www.hotwatchsreplica.com/blancpain.html https://www.bestwatchss.com/Parmigiani-Replica-Watches.html https://www.bestwatchss.com/Oris-Replica-Watches.html https://www.hotwatchsreplica.com/Vacheron-Constantin.html in https://www.replicawatchsshop.cc/Omega-Replica.html online https://www.hotwatchsreplica.com/Alain-Silberstein.html https://www.bestwatchss.com/Panerai-Replica-Watches.html https://www.replicawatchsshop.cc/ https://www.bestwatchss.com/Chopard-Replica-Watches.html https://www.hotwatchsreplica.com/Zenith.html https://www.bestwatchss.com/Linde-Werdelin-Replica-Watches.html https://www.bestwatchss.com/Ebel-Replica-Watches.html https://www.bestwatchss.com/Cartier-Replica-Watches.html wholesale price https://www.bestwatchaaa.com/Bell-Ross-replica.html https://www.bestwatchss.com/A-Lange-Sohne-Replica-Watches.html https://www.shopwatchus.com/ https://www.bestwatchaaa.com/IWC-replica.html https://www.hotwatchsreplica.com/Ulysse-Nardin.html the world. And https://www.bestwatchss.com/Tag-Heuer-Replica-Watches.html https://www.hotwatchsreplica.com/Raymond-Weil.html https://www.luxuryshopwatch.com/ https://www.watchrm.com/ https://www.bestwatchaaa.com/R-M-replica.html https://www.bestwatchaaa.com/Longines-replica.html https://www.bestwatchaaa.com/Chopard-replica.html https://www.bestwatchaaa.com/Seiko-replica.html real ones.

#10

Updated by boddy massage 2 months ago

We are one of the best body massage service providers in bangalore. Call us for female to male full body massage. We are Offering professional full body massage in bangalore.

http://boddymsg.com/
http://boddymsg.com/services.html
http://boddymsg.com/contact.html
http://boddymsg.com/body_to_body_msg_bang.html
http://boddymsg.com/female_to_male_msg.html
http://boddymsg.com/spa_near_mebang.html
http://boddymsg.com/swedish_msg_bang.html
http://boddymsg.com/ban_msg_center.html
http://boddymsg.com/erotic_msg_bang.html
http://boddymsg.com/hot_stone_massage.html
http://boddymsg.com/full_body_msg.html
http://boddymsg.com/happy_ending_msg.html
http://boddymsg.com/ladies_parlour_me.html
http://boddymsg.com/deep_tissue_msg.html
http://boddymsg.com/female_to_male.html
http://boddymsg.com/body_msg.html
http://boddymsg.com/sensual_msg.html
http://boddymsg.com/body_to_body_spa_nearme.html
http://boddymsg.com/aromatherapy_msg_bang.html
http://boddymsg.com/thai_spa_near_me.html
http://boddymsg.com/nuru_msg_bangalore.html
http://boddymsg.com/msg_center_near_me_bangalore.html
http://boddymsg.com/couples_msg_bang.html
http://boddymsg.com/body_msg_spa_near_me.html
http://boddymsg.com/msg_par_near_me.html
http://boddymsg.com/carn_therapy.html
http://boddymsg.com/msg_spa_near_me.html
http://boddymsg.com/massage_spa.html
http://boddymsg.com/sarjapura.html
http://boddymsg.com/jigani.html
http://boddymsg.com/chandapura.html
http://boddymsg.com/anekal.html
http://boddymsg.com/attibele.html
http://boddymsg.com/madiwala.html
http://boddymsg.com/bommanahalli.html
http://boddymsg.com/yaswanthpur.html
http://boddymsg.com/yelahanka.html
http://boddymsg.com/mathikere.html
http://boddymsg.com/jalahalli.html
http://boddymsg.com/kammanahalli.html
http://boddymsg.com/ramamurthy_nagar.html
http://boddymsg.com/banaswadi.html
http://boddymsg.com/kalyan_nagar.html
http://boddymsg.com/bellundur.html
http://boddymsg.com/sadashivanagar.html
http://boddymsg.com/frazer_town.html
http://boddymsg.com/rajaji_nagar.html
http://boddymsg.com/malleshwaram.html
http://boddymsg.com/jaya_nagar.html
http://boddymsg.com/basavangudi.html
http://boddymsg.com/indira_nagar.html
http://boddymsg.com/KR_Market.html
http://boddymsg.com/KR_Puram.html
http://boddymsg.com/koramangala.html
http://boddymsg.com/marathahalli.html
http://boddymsg.com/bannerghatta_road.html
http://boddymsg.com/hebbal.html
http://boddymsg.com/JP_nagar.html
http://boddymsg.com/HSR_layout.html
http://boddymsg.com/lalbagh.html
http://boddymsg.com/electronic_city.html
http://boddymsg.com/whitfield.html
http://boddymsg.com/brookefield.html
http://boddymsg.com/banashankari.html
http://boddymsg.com/majestic.html
http://boddymsg.com/shivaji_nagar.html
http://boddymsg.com/victoria_layout.html
http://boddymsg.com/jayanagar.html
http://boddymsg.com/all_over_bangalore.html
http://boddymsg.com/bangalore.html
http://boddymsg.com/index.html
http://kamasutramsg.in/
http://kamasutramsg.in/index.html

Also available in: Atom PDF