הצעת ייעול | הגיע הזמן לשנות את הגדרת רוחב התצוגה
-
נכון לעכשיו (גירסה 0.9.98.2) ניתן להגדיר את רוחב תצוגת הטקסט לפי אחוזים:

מה זה בעצם אומר? שאם אתה מעדיף שרוחב הטקסט יהיה צר, אתה מגדיר - לצורך הדוגמה - שהוא ייפרס על 50% משטח החלון, וכך הוא משאיר 25% ריק מכל צד של הטקסט. הנה החלון שהתקבל לאחר ההגדרה הזו:

אבל מה הבעיה עם זה? שחישוב האחוזים ממשיך באותה צורה בלי התחשבות בגודל החלון. מה יהיה אם אני אסגור את חלונית הכרטיסיות שבצד החלון? החלון יתרחב, וההגדרה של 50% תישאר. רוחב הטקסט יגדל, חלוקת השורות תשתנה והקורא יתבלבל. הנה זה:

ומה יקרה אם ארצה להקטין את המסך? שוב, הגדרת ה־50% תישאר, ורוחב הטקסט יקטן מאוד:

זה כמובן לא הגיוני. הסיבה לכך שאני מעוניין להקטין את רוחב הטקסט היא שיש רוחב מסוים שבו נוח לי לקרוא. היא בוודאי לא כי אני מעוניין ברוחב שוליים מסוים ביחס לרוחב הטקסט!
מה צריך לעשות? פשוט מאוד. ההגדרה צריכה להיות הגדרה של רוחב הטקסט עצמו, בסנטימטרים, למשל. אני אוכל להגדיר שרוחב הטקסט יהיה 10 ס"מ, בלי קשר לשוליים שלו. מה יקרה אם החלון יקטן ל־9 ס"מ? גם הטקסט יקטן אז, ל־9 ס"מ. אבל כל עוד יש מקום בחלון לטקסט ברוחב 10 ס"מ - זה יהיה הרוחב שלו.
-
תודה על ההצעה והפירוט, דוד.
כרגע המערכת מוגדרת ברוחב יחסי (באחוזים), ושינוי להגדרה ברוחב מוחלט (ס"מ) הוא שינוי בהתנהגות התכונה, כלומר הצעת ייעול. בשלב הנוכחי הפיתוח מתמקד בתיקוני באגים בלבד, והצעות לתכונות חדשות נדחות עד גרסה 1.0 (פירוט כאן: https://otzaria.org/forum/post/39204). ההצעה נשמעת הגיונית ושווה לשקול אותה אז.
לגבי מה שציינת, שסגירת חלונית הכרטיסיות משנה את רוחב הטקסט: בקוד אמור להיות מנגנון (
reading_area_width.dart) ששומר על רוחב טקסט קבוע כשחלונית צד נפתחת או נסגרת. אם אצלך הרוחב בכל זאת משתנה בפתיחה או בסגירה של החלונית, זה נראה כבאג. כדאי לדווח עליו ב-GitHub Issues (https://github.com/Otzaria/otzaria/issues) עם גרסה, צילומי מסך לפני ואחרי, והגדרת האחוזים שהייתה לך. -
-
נכון לעכשיו (גירסה 0.9.98.2) ניתן להגדיר את רוחב תצוגת הטקסט לפי אחוזים:

מה זה בעצם אומר? שאם אתה מעדיף שרוחב הטקסט יהיה צר, אתה מגדיר - לצורך הדוגמה - שהוא ייפרס על 50% משטח החלון, וכך הוא משאיר 25% ריק מכל צד של הטקסט. הנה החלון שהתקבל לאחר ההגדרה הזו:

אבל מה הבעיה עם זה? שחישוב האחוזים ממשיך באותה צורה בלי התחשבות בגודל החלון. מה יהיה אם אני אסגור את חלונית הכרטיסיות שבצד החלון? החלון יתרחב, וההגדרה של 50% תישאר. רוחב הטקסט יגדל, חלוקת השורות תשתנה והקורא יתבלבל. הנה זה:

ומה יקרה אם ארצה להקטין את המסך? שוב, הגדרת ה־50% תישאר, ורוחב הטקסט יקטן מאוד:

זה כמובן לא הגיוני. הסיבה לכך שאני מעוניין להקטין את רוחב הטקסט היא שיש רוחב מסוים שבו נוח לי לקרוא. היא בוודאי לא כי אני מעוניין ברוחב שוליים מסוים ביחס לרוחב הטקסט!
מה צריך לעשות? פשוט מאוד. ההגדרה צריכה להיות הגדרה של רוחב הטקסט עצמו, בסנטימטרים, למשל. אני אוכל להגדיר שרוחב הטקסט יהיה 10 ס"מ, בלי קשר לשוליים שלו. מה יקרה אם החלון יקטן ל־9 ס"מ? גם הטקסט יקטן אז, ל־9 ס"מ. אבל כל עוד יש מקום בחלון לטקסט ברוחב 10 ס"מ - זה יהיה הרוחב שלו.
זה כמובן לא הגיוני. הסיבה לכך שאני מעוניין להקטין את רוחב הטקסט היא שיש רוחב מסוים שבו נוח לי לקרוא. היא בוודאי לא כי אני מעוניין ברוחב שוליים מסוים ביחס לרוחב הטקסט!
העניין מכוון, עקב בקשות משתמשים
האמת שגם לי זה מאוד הפריע ותכננתי לכתוב על זה. בעבר זה כך היה ואז שינו את זה. במבט שלי @דוד-פ. צודק ואני מתקשה להבין את מי שביקש הפוך.
אציין רק א. גם באוצריא עצמה אין אחידות בנושא, למשל כשפותחים את חלונית המפרשים אז הטקסט שומר על הרוחב שלו כמו ש@דוד-פ. ואני היינו מצפים שיהיה תמיד. ב. ההתנהגות המקובלת ברוב התוכנות היא גם כמו ש@דוד-פ. מציע, תנסו לפתוח אתר שיש בו שוליים מצידי הטקסט ואז להקטין את החלון.
מציע שאולי אפשר לתת למשתמש להגדיר לכוונן לפי אחוזים או לפי רוחב קבוע. -
זה כמובן לא הגיוני. הסיבה לכך שאני מעוניין להקטין את רוחב הטקסט היא שיש רוחב מסוים שבו נוח לי לקרוא. היא בוודאי לא כי אני מעוניין ברוחב שוליים מסוים ביחס לרוחב הטקסט!
העניין מכוון, עקב בקשות משתמשים
האמת שגם לי זה מאוד הפריע ותכננתי לכתוב על זה. בעבר זה כך היה ואז שינו את זה. במבט שלי @דוד-פ. צודק ואני מתקשה להבין את מי שביקש הפוך.
אציין רק א. גם באוצריא עצמה אין אחידות בנושא, למשל כשפותחים את חלונית המפרשים אז הטקסט שומר על הרוחב שלו כמו ש@דוד-פ. ואני היינו מצפים שיהיה תמיד. ב. ההתנהגות המקובלת ברוב התוכנות היא גם כמו ש@דוד-פ. מציע, תנסו לפתוח אתר שיש בו שוליים מצידי הטקסט ואז להקטין את החלון.
מציע שאולי אפשר לתת למשתמש להגדיר לכוונן לפי אחוזים או לפי רוחב קבוע. -
זה כמובן לא הגיוני. הסיבה לכך שאני מעוניין להקטין את רוחב הטקסט היא שיש רוחב מסוים שבו נוח לי לקרוא. היא בוודאי לא כי אני מעוניין ברוחב שוליים מסוים ביחס לרוחב הטקסט!
העניין מכוון, עקב בקשות משתמשים
האמת שגם לי זה מאוד הפריע ותכננתי לכתוב על זה. בעבר זה כך היה ואז שינו את זה. במבט שלי @דוד-פ. צודק ואני מתקשה להבין את מי שביקש הפוך.
אציין רק א. גם באוצריא עצמה אין אחידות בנושא, למשל כשפותחים את חלונית המפרשים אז הטקסט שומר על הרוחב שלו כמו ש@דוד-פ. ואני היינו מצפים שיהיה תמיד. ב. ההתנהגות המקובלת ברוב התוכנות היא גם כמו ש@דוד-פ. מציע, תנסו לפתוח אתר שיש בו שוליים מצידי הטקסט ואז להקטין את החלון.
מציע שאולי אפשר לתת למשתמש להגדיר לכוונן לפי אחוזים או לפי רוחב קבוע.בדקתי בקוד, וחוסר האחידות ש@סנאי הצביע עליו הוא אמיתי ויש לו הסבר מדויק.
המנגנון ששומר על רוחב טקסט קבוע נמצא ב-
lib/widgets/layout/reading_area_width.dart. הוא מחשב את רוחב עמודת הטקסט מרוחב אזור הקריאה לפני שחלונית צד דוחקת את התוכן. ההערה בקוד מנסחת את הכוונה במילים מפורשות: "כדי שפתיחת חלונית תזיז את הטקסט ולא תצר אותו".מי מקבל את המנגנון הזה בפועל: רק חלוניות שבנויות על
AdaptiveSidePane— מפרשים, הערות אישיות, תוצאות חיפוש וכדומה. זו בדיוק הסיבה שחלונית המפרשים מתנהגת כמצופה.חלונית הכרטיסיות היא סיפור אחר. ב-
lib/navigation/view/main_window_screen.dartהיא נבנית כ-ReadingTabsSidePanel— ילד רגיל ב-Row לצד ה-Expandedשל התוכן, בליAdaptiveSidePaneובליReadingAreaWidth. לכן סגירה שלה באמת מגדילה את אזור הקריאה, האחוז מחושב מחדש, ורוחב הטקסט משתנה. בדקתי גם בענף dev וגם בקוד של 0.9.98 — אותו מצב בשניהם.כלומר יש כאן שני דברים נפרדים שכדאי לא לערבב:
-
אחוזים מול רוחב קבוע — שאלת עיצוב עקרונית, וכפי ש@פלמנמוני כתב ההתנהגות הנוכחית מכוונת. זו הצעת ייעול, ולכן היא ממתינה ל-1.0.
-
חלונית הכרטיסיות מול שאר חלוניות הצד — זה לא נראה החלטת עיצוב אלא פער בכיסוי של מנגנון שכבר קיים ושכוונתו מתועדת בקוד. אפשר לסגור את זה בלי להכריע בשאלה הראשונה בכלל, והתוצאה תהיה שהתוכנה לפחות מתנהגת אותו דבר בכל החלוניות.
תיקון קטן למה שכתבתי קודם: אמרתי שאם הרוחב משתנה בסגירת חלונית הכרטיסיות זה נראה כבאג וכדאי לדווח. הניסוח היה רחב מדי — חישוב האחוזים עצמו מכוון. מה שנראה כפער הוא רק חוסר האחידות בין החלוניות.
-
-
-
-
נכון לעכשיו (גירסה 0.9.98.2) ניתן להגדיר את רוחב תצוגת הטקסט לפי אחוזים:

מה זה בעצם אומר? שאם אתה מעדיף שרוחב הטקסט יהיה צר, אתה מגדיר - לצורך הדוגמה - שהוא ייפרס על 50% משטח החלון, וכך הוא משאיר 25% ריק מכל צד של הטקסט. הנה החלון שהתקבל לאחר ההגדרה הזו:

אבל מה הבעיה עם זה? שחישוב האחוזים ממשיך באותה צורה בלי התחשבות בגודל החלון. מה יהיה אם אני אסגור את חלונית הכרטיסיות שבצד החלון? החלון יתרחב, וההגדרה של 50% תישאר. רוחב הטקסט יגדל, חלוקת השורות תשתנה והקורא יתבלבל. הנה זה:

ומה יקרה אם ארצה להקטין את המסך? שוב, הגדרת ה־50% תישאר, ורוחב הטקסט יקטן מאוד:

זה כמובן לא הגיוני. הסיבה לכך שאני מעוניין להקטין את רוחב הטקסט היא שיש רוחב מסוים שבו נוח לי לקרוא. היא בוודאי לא כי אני מעוניין ברוחב שוליים מסוים ביחס לרוחב הטקסט!
מה צריך לעשות? פשוט מאוד. ההגדרה צריכה להיות הגדרה של רוחב הטקסט עצמו, בסנטימטרים, למשל. אני אוכל להגדיר שרוחב הטקסט יהיה 10 ס"מ, בלי קשר לשוליים שלו. מה יקרה אם החלון יקטן ל־9 ס"מ? גם הטקסט יקטן אז, ל־9 ס"מ. אבל כל עוד יש מקום בחלון לטקסט ברוחב 10 ס"מ - זה יהיה הרוחב שלו.
פוסט זה נמחק! -
-
העניין מכוון, עקב בקשות משתמשים
אז הנה לכם הבקשה ההפוכה.
ואדרבה, מי שמעדיף את המצב הקיים, יואיל לפרש דעתו כאן ולהסביר אותה. כי כמו שזה כרגע זה באמת מפריע.
בכל שינוי של רוחב החלון אני צריך לחפש מחדש איפה עצרתי בקריאה?! מה ההיגיון?מצד אחד זה נכון,
מצד שני כשאני משנה את הגודל בצורה משמעותית - אני מצפה שהכתב לא יקובע לרוחב מסויים ואז אצטרך לגלול לצדדים,
כנראה שצריך לשלב כך שזה יהיה רוחב קבוע עד לרגע שזה מתנגש עם רוחב המסך. -
העניין מכוון, עקב בקשות משתמשים
אז הנה לכם הבקשה ההפוכה.
ואדרבה, מי שמעדיף את המצב הקיים, יואיל לפרש דעתו כאן ולהסביר אותה. כי כמו שזה כרגע זה באמת מפריע.
בכל שינוי של רוחב החלון אני צריך לחפש מחדש איפה עצרתי בקריאה?! מה ההיגיון?מצד אחד זה נכון,
מצד שני כשאני משנה את הגודל בצורה משמעותית - אני מצפה שהכתב לא יקובע לרוחב מסויים ואז אצטרך לגלול לצדדים,
כנראה שצריך לשלב כך שזה יהיה רוחב קבוע עד לרגע שזה מתנגש עם רוחב המסך.@משה כתב:
מצד אחד זה נכון,
מצד שני כשאני משנה את הגודל בצורה משמעותית - אני מצפה שהכתב לא יקובע לרוחב מסויים ואז אצטרך לגלול לצדדים,
כנראה שצריך לשלב כך שזה יהיה רוחב קבוע עד לרגע שזה מתנגש עם רוחב המסך.אני כתבתי את זה בפירוש בפוסט הראשון:
דוד-פ. כתב:
מה יקרה אם החלון יקטן ל־9 ס"מ? גם הטקסט יקטן אז, ל־9 ס"מ. אבל כל עוד יש מקום בחלון לטקסט ברוחב 10 ס"מ - זה יהיה הרוחב שלו. -
למעשה עכשיו אני רואה שזה מתנהג בגדול ככה
20261029-2315-02.1334808.mp4
אולי עדיף שזה יהיה באמת הגדרת רוחב עמודה ולא אחוזים שזה נפק"מ לכך שיש הבדלים בין גדלי המסכים,
ובלי קשר צריך שיהיו שוליים מינימום כי עכשיו זה ממש צמוד לקצוות וזה קצת מציק. -
למעשה עכשיו אני רואה שזה מתנהג בגדול ככה
20261029-2315-02.1334808.mp4
אולי עדיף שזה יהיה באמת הגדרת רוחב עמודה ולא אחוזים שזה נפק"מ לכך שיש הבדלים בין גדלי המסכים,
ובלי קשר צריך שיהיו שוליים מינימום כי עכשיו זה ממש צמוד לקצוות וזה קצת מציק. -
-
ד דוד פ. סימן נושא זה כנפתר
שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.
נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.
בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗
הרשמה התחברות
