הכי קל זה להתעסק בQA בלינוקס. המערכת יציבה מידי, כתוצאה מיכך משתעממים ועוברים לגרסה יציבה יותר או בכלל הפצה חדשה. אני מניח שאני לא היחיד שנמצא במעגל זה.

אתמול החלטתי להכיר בעובדה שאני מתכנת ואני יכול לעשות עוד דברים מאשר לדווח באגים שגרמתי לעצמי, והחלטתי לעזור ללינוקס (או יותר נכון גנום) לראות טובה יותר. ולכן המטרה הראשונה שיש לתקוף היא Glade.

Glade הוא ספרייה וגם תוכנה ליצירת ממשקים, ולכן רוב התוכנות מוגבלות למה שהיא יכולה לאפשר. לכן כפרוייקט ראשון אני רוצה להוסיף לה תמיכה ב"חלונות בצורות מיוחדות", שתחתוך את החלון לפי תמונה.

אחד הייתרונות של קוד פתוח הוא שאפשר להיכנס לתוך תוכנה קיימת ולהבין איך מימשו חלקים בתוכה, לכן הורדתי את הקוד של תוכנה שעושה זאת, cairo-clock, ואחרי זמן לא רב הבנתי שזה בעצם חיסרון בגלל כמות הקוד הרבה. חיפוש בגוגל הביא אותי לתוכנית לדוגמה של השעון שאיפשרה להבין אותו טוב יותר. כל מה שצריך כדי לעשות חלון בצורה מסויימת הוא להפוך לשקוף את החלקים ה"מיותרים" ואז למסור לו מידע על המיקומים של אותם חלקים שקופים שיידע להעביר את הקלט של העכבר לחלונות שנמצאים מאחוריו.

בשלב זה התחלתי לשנות את הקוד שיפתח קובץ תמונה ויעצב את החלון על פיה. תהליך זה לקח זמן רב בגלל שמפתחי הGTK כנראה לא ממש מרוצים מהAPI שהם יצרו וכבר נתקלתי בכמה גרסאות של פונקציות מיושנות.

השלבים שעשיתי הם: קרא את המשך הפוסט »