[질문]GNOME환경 수정과 X-window정보 얻기에 대해서.....
글쓴이: kyh1026 / 작성시간: 금, 2008/03/21 - 5:21오후
안녕하세요
리눅스에서 프로그래밍을 공부하는 학생입니다.
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에서도 같이 공유를 할 수 있지 않을까 생각하는데
이부분은 어떻게 접근을 해야하는지 궁금합니다.....
접근방법을 알수 없을까요??
긴글 읽어주셔서 감사합니다 ^^
수고하세요~~
Forums:


관련된 것을 볼 수
관련된 것을 볼 수 있는 링크입니다.
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
여담이지만, Windows의
여담이지만, Windows의 RealDesktop이란 것과 비슷해 보이는군요.
저것이 먼저인지 이것이 먼저인지는 모르겠습니다만, 재밌는 프로젝트가 될 듯 합니다.
1. 세션관리자
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. 구현하려는 프로그램의 상세가 명확하지 않습니다.
어떤 것을 어느만큼 구현할 것인지 먼저 확인해보는게 우선일 것 같네요.
----
데스크탑 프로그래머를 꿈꾸는 임베디드 삽질러
----
데스크탑 프로그래머를 꿈꾸는 임베디드 삽질러
아~ 세부적인 정보
자세한 정보 정말 감사합니다~
일단 해봐야 겠네요 ^^
댓글 달기