>> Edit article
이름
제목
패스워드
갈레온도 0.10.4버전 부터는 모질라 0.8.1을 지원하는 것으로 알고 있습니다. 제가 쓰고 있거든요. 어제 날짜로 0.10.5가 나왔네요. 제가 모질라 패치가 어떻게 이루어지는지 문서를 읽어봤지만, 워낙 아는게 없어서 어디를 손봐야 할 지 잘 이해를 못하겠더군요. 여기 고수분들 패치한 것을 rpm이나 srpm으로 올려주시면 어떠실지요? 그럼 모두들 행복한 하루가 되시길. : : 패치는 아래 URL에서 다운받으실 수 있습니다. : : : : <A HREF="http://www.zuguri.org/linux/mozilla/mozilla-title2.patch">http://www.zuguri.org/linux/mozilla/mozilla-title2.patch</A> : : : 0.8.1 버전은 소스의 라인 수가 변경 되어서 실제 패치 화일 중에 가르키는 라인 : : 수만 조정하면 패치는 가능합니다. : : gcc 2.95.3으로 패치를 적용해서 만든 mozilla가 있기는 합니다만 galeon이 아직 : : 0.8.1을 지원하지 않아서 잘 작동하는지 확인드릴 수는 없을 것 같고, : : 제가 조정한 0.8.1용 패치는 다음과 같습니다. : : 도움이 되었길 빕니다. : : --- mozilla/widget/src/gtk/nsWidget.cpp.orig Tue Nov 14 14:06:29 2000 : +++ mozilla/widget/src/gtk/nsWidget.cpp Tue Nov 14 14:07:44 2000 : @@ -3106,15 +3106,18 @@ : { : GdkWindow *parent = gdk_window_get_parent(gdkWindow); : nsWidget *root_win = nsnull; : + nsWidget *candidate = nsnull; : gpointer data; : : while (parent) { : gdk_window_get_user_data(parent, &data); : if (GTK_IS_OBJECT(data)) { : root_win = (nsWidget *) gtk_object_get_data(GTK_OBJECT(data), "nsWindow"); : + if (!root_win && candidate) return candidate; : if(root_win && root_win->mIsToplevel == PR_TRUE){ : return root_win; : } : + candidate = root_win; : } : parent = gdk_window_get_parent(parent); : } : --- mozilla/embedding/browser/gtk/src/GtkMozEmbedChrome.cpp.orig Mon Nov 13 11:46:51 2000 : +++ mozilla/embedding/browser/gtk/src/GtkMozEmbedChrome.cpp Mon Nov 13 13:56:07 2000 : @@ -21,6 +21,8 @@ : : #include "GtkMozEmbedChrome.h" : #include "GtkMozEmbedStream.h" : +#include "nsICharsetConverterManager.h" : +#include "nsIPlatformCharset.h" : #include "nsCWebBrowser.h" : #include "nsIURI.h" : #include "nsNetUtil.h" : @@ -82,6 +84,36 @@ : sBrowsers->RemoveElement((void *)this); : } : : +char * : +getMbString(nsString uni) : +{ : + nsresult rv; : + char *platformText = 0; : + PRInt32 platformLen; : + static nsCOMPtr<nsIUnicodeEncoder> encoder = 0; : + : + if (!encoder) { : + nsAutoString platformCharset; : + nsCOMPtr <nsIPlatformCharset> platformCharsetService = do_GetService(NS_PLATFORMCHARSET_CONTRACTID, &rv); : + if (NS_SUCCEEDED(rv)) rv = platformCharsetService->GetCharset(kPlatformCharsetSel_Menu, platformCharset); : + if (NS_FAILED(rv)) : + platformCharset.AssignWithConversion("ISO-8859-1"); : + NS_WITH_SERVICE(nsICharsetConverterManager, ccm, NS_CHARSETCONVERTERMANAGER_CONTRACTID, &rv); : + rv = ccm->GetUnicodeEncoder(&platformCharset, getter_AddRefs(encoder)); : + } : + : + PRInt32 len = uni.Length(); : + encoder->GetMaxLength(uni.GetUnicode(), len, &platformLen); : + if (platformLen) { : + platformText = NS_REINTERPRET_CAST(char*, nsMemory::Alloc(platformLen + sizeof(char))); : + if (platformText) { : + rv = encoder->Convert(uni.GetUnicode(), &len, platformText, &platformLen); : + (platformText)[platformLen] = ' '; : + } : + } : + return platformText; : +} : + : // nsISupports interface : : NS_IMPL_ADDREF(GtkMozEmbedChrome) : @@ -372,7 +404,7 @@ : case STATUS_SCRIPT: : { : nsString jsStatusString(status); : - mJSStatus = jsStatusString.ToNewCString(); : + mJSStatus = getMbString(jsStatusString); : PR_LOG(mozEmbedLm, PR_LOG_DEBUG, ("js status is %s", (const char *)mJSStatus)); : // let our chrome listener know that the JS message has changed. : if (mChromeListener) : @@ -385,7 +417,7 @@ : case STATUS_LINK: : { : nsString linkMessageString(status); : - mLinkMessage = linkMessageString.ToNewCString(); : + mLinkMessage = getMbString(linkMessageString); : PR_LOG(mozEmbedLm, PR_LOG_DEBUG, ("message is %s", (const char *)mLinkMessage)); : // notify the chrome listener that the link message has changed : if (mChromeListener) : @@ -811,7 +843,7 @@ : PR_LOG(mozEmbedLm, PR_LOG_DEBUG, ("GtkMozEmbedChrome::SetTitle")); : nsString newTitleString(aTitle); : mTitleUnicode = aTitle; : - mTitle = newTitleString.ToNewCString(); : + mTitle = getMbString(newTitleString); : PR_LOG(mozEmbedLm, PR_LOG_DEBUG, ("title is %s", (const char *)mTitle)); : // let the listener know that the title has changed : if (mChromeListener) : : -- : 내 서명
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved