[질문]GNOME환경 수정과 X-window정보 얻기에 대해서.....

kyh1026의 이미지

안녕하세요

리눅스에서 프로그래밍을 공부하는 학생입니다.

Fedora core8에 GNOME2.20.3 환경에서 프로젝트를 수행하려고 하는데요

바탕화면을 3D로 만들어 보려고 생각중입니다.

http://www.youtube.com/watch?v=M0ODskdEPnQ <---- 거의 요런 컨셉입니다.

요렇게 만든 바탕화면을 X-window를 덮어서 실행하려고 생각중이고,

바탕화면이므로 저희가 만든 3D상의 바탕화면에서 아이콘을 클릭하면 프로그램이 실행 되야하고,

3D바탕화면에서 아이콘을 생성하면 x-window상에서도 아이콘이 만들어 져야 합니다.

이렇게 하려면 GNOME환경을 수정해서 작업표시줄이나 바탕화면의 아이콘들을 나타나게 하지 말아야 하는데 어떻게 해야되는지 감이 안잡히고요...

X-window의 정보 즉, 폴더의 위치라든지 이런것들을 가지고 있어야 3D바탕화면에서의 변화를 X-window에서도 같이 공유를 할 수 있지 않을까 생각하는데

이부분은 어떻게 접근을 해야하는지 궁금합니다.....

접근방법을 알수 없을까요??
긴글 읽어주셔서 감사합니다 ^^

수고하세요~~

atie의 이미지

관련된 것을 볼 수 있는 링크입니다.
http://bugzilla.gnome.org/show_bug.cgi?id=444320
http://forum.compiz-fusion.org/showthread.php?t=6199
http://gitweb.compiz-fusion.org/?p=fusion/plugins/wallpaper;a=summary
http://forum.compiz-fusion.org/showthread.php?t=7519

gnome bugzilla와 compiz forum에 있는 패치는 2.20 때까지 eel과 nautilus에 적용을 해서 새로 작성되기 전의 wallpaper플러그인과 함께 사용을 할 수 있는 패치입니다. 2.22와 현재의 wallpaper 플러그인용은 패치가 아직 보이는게 없습니다. 2.20에서 작업을 하시니 이전 패치를 보셔도 될테고 새 wallpaper 플러그인의 createFakeDesktopWindow()를 참고해도 도움이 될 듯 합니다.
----
I paint objects as I think them, not as I see them.
atie's minipage

----
I paint objects as I think them, not as I see them.
atie's minipage

hexascii의 이미지

여담이지만, Windows의 RealDesktop이란 것과 비슷해 보이는군요.

저것이 먼저인지 이것이 먼저인지는 모르겠습니다만, 재밌는 프로젝트가 될 듯 합니다.

ganadist의 이미지

1. 세션관리자 설정에서 gnome-panel을 지우십시오.
메뉴 -> 시스템 -> 기본 설정 -> 세션 -> 현재 세션 탭에 보면 Gnome 세션에 등록된 어플들이 보입니다.
여기서 gnome-panel을 찾은 후에 지우기를 선택한 후 저장을 하면 패널이 더이상 활성화 되지 않을겁니다.

2. 노틸러스에서 바탕화면을 그리지 않게 설정하십시오.
gconf-editor 를 이용해서 /apps/nautilus/preferences/show_desktop 키값을 설정하면 됩니다.

3. 만들려는 바탕화면 프로그램의 wmclass에 desktop 역할을 할 것이라고 창 관리자에게 알려주는 코드를 넣으십시오.
노틸러스에서는 해당 기능이 다음과 같이 구현되어 있습니다

static void
set_wmspec_desktop_hint (GdkWindow *window)
{
        GdkAtom atom;
 
        atom = gdk_atom_intern ("_NET_WM_WINDOW_TYPE_DESKTOP", FALSE);
 
        gdk_property_change (window,
                             gdk_atom_intern ("_NET_WM_WINDOW_TYPE", FALSE),
                             gdk_x11_xatom_to_atom (XA_ATOM), 32,
                             GDK_PROP_MODE_REPLACE, (guchar *) &atom, 1);
}

nautilus는 gdk를 이용하기 때문에 이렇게 구현했고 순수 X함수로도 구현이 가능합니다.

4. 구현하려는 프로그램의 상세가 명확하지 않습니다.
어떤 것을 어느만큼 구현할 것인지 먼저 확인해보는게 우선일 것 같네요.

----
데스크탑 프로그래머를 꿈꾸는 임베디드 삽질러

----
데스크탑 프로그래머를 꿈꾸는 임베디드 삽질러

kyh1026의 이미지

자세한 정보 정말 감사합니다~

일단 해봐야 겠네요 ^^

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.