๊ทธ๋†ˆ ์Šคํƒ€์ผ ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์„ฑ์„ ์œ„ํ•œ Libadwaita 1.3 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถœ์‹œ

๊ทธ๋†ˆ ํ”„๋กœ์ ํŠธ๋Š” ๊ทธ๋†ˆ HIG(Human Interface Guidelines) ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ์ค€์ˆ˜ํ•˜๋Š” ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ์Šคํƒ€์ผ์„ ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•œ ๊ตฌ์„ฑ ์š”์†Œ ์ง‘ํ•ฉ์ด ํฌํ•จ๋œ Libadwaita 1.3 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฆด๋ฆฌ์Šค๋ฅผ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—๋Š” ์ผ๋ฐ˜ GNOME ์Šคํƒ€์ผ์„ ์ค€์ˆ˜ํ•˜๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ์„ฑํ’ˆ ์œ„์ ฏ๊ณผ ๊ฐ์ฒด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์ธํ„ฐํŽ˜์ด์Šค๋Š” ๋ชจ๋“  ํฌ๊ธฐ์˜ ํ™”๋ฉด์— ๋ฐ˜์‘์ ์œผ๋กœ ์ ์‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ฝ”๋“œ๋Š” C ์–ธ์–ด๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ LGPL 2.1+ ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

libadwaita ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” GTK4์™€ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜๋ฉฐ GTK์—์„œ ๋ณ„๋„์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์ด๋™๋œ GNOME์—์„œ ์‚ฌ์šฉ๋˜๋Š” Adwaita ์Šคํ‚จ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. GNOME ๋น„์ฃผ์–ผ์„ ๋ณ„๋„์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์ด๋™ํ•˜๋ฉด GNOME์— ํ•„์š”ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ GTK์™€ ๋ณ„๋„๋กœ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ GTK ๊ฐœ๋ฐœ์ž๋Š” ๊ธฐ๋ณธ ์‚ฌํ•ญ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ณ  GNOME ๊ฐœ๋ฐœ์ž๋Š” GTK ์ž์ฒด์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๊ณ  ์Šคํƒ€์ผ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ณด๋‹ค ๋น ๋ฅด๊ณ  ์œ ์—ฐํ•˜๊ฒŒ ์ถ”์ง„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—๋Š” ๋ชฉ๋ก, ํŒจ๋„, ํŽธ์ง‘ ๋ธ”๋ก, ๋ฒ„ํŠผ, ํƒญ, ๊ฒ€์ƒ‰ ์–‘์‹, ๋Œ€ํ™” ์ƒ์ž ๋“ฑ๊ณผ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ์ธํ„ฐํŽ˜์ด์Šค ์š”์†Œ๋ฅผ ํฌํ•จํ•˜๋Š” ํ‘œ์ค€ ์œ„์ ฏ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ œ์•ˆ๋œ ์œ„์ ฏ์„ ์‚ฌ์šฉํ•˜๋ฉด PC ๋ฐ ๋žฉํ†ฑ์˜ ๋Œ€ํ˜• ํ™”๋ฉด๊ณผ ์Šค๋งˆํŠธํฐ์˜ ์ž‘์€ ํ„ฐ์น˜ ์Šคํฌ๋ฆฐ ๋ชจ๋‘์—์„œ ์›ํ™œํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ๋ฒ”์šฉ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ธํ„ฐํŽ˜์ด์Šค๋Š” ํ™”๋ฉด ํฌ๊ธฐ์™€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ž…๋ ฅ ์žฅ์น˜์— ๋”ฐ๋ผ ๋™์ ์œผ๋กœ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—๋Š” ์ˆ˜๋™ ์‚ฌ์šฉ์ž ์ •์˜ ์—†์ด ๊ทธ๋†ˆ ์ง€์นจ์— ๋ชจ์–‘๊ณผ ๋Š๋‚Œ์„ ๊ฐ€์ ธ์˜ค๋Š” Adwaita ์Šคํƒ€์ผ ์„ธํŠธ๋„ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

libadwaita 1.3์˜ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ:

  • ์ œ๋ชฉ๊ณผ ํ•˜๋‚˜์˜ ์„ ํƒ์  ๋ฒ„ํŠผ์ด ํฌํ•จ๋œ ๋ฐฐ๋„ˆ ์ฐฝ์„ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด GTK GtkInfoBar ์œ„์ ฏ ๋Œ€์‹  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” AdwBanner ์œ„์ ฏ์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„์ ฏ์˜ ๋‚ด์šฉ์€ ํฌ๊ธฐ์— ๋”ฐ๋ผ ๋ณ€ํ˜•๋˜๋ฉฐ, ํ‘œ์‹œ ๋ฐ ์ˆจ๊ธฐ๊ธฐ ์‹œ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ๊ทธ๋†ˆ ์Šคํƒ€์ผ ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์„ฑ์„ ์œ„ํ•œ Libadwaita 1.3 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถœ์‹œ
  • AdwTabView ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‘œ์‹œ๋˜๋Š” ํƒญ ๋˜๋Š” ํŽ˜์ด์ง€์˜ ์‹œ๊ฐ์  ๊ฐœ์š”๋ฅผ ์œ„ํ•ด ์„ค๊ณ„๋œ AdwTabOverview ์œ„์ ฏ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์œ„์ ฏ์„ ์‚ฌ์šฉํ•˜๋ฉด ์Šค์œ„์น˜๋ฅผ ์ง์ ‘ ๊ตฌํ˜„ํ•˜์ง€ ์•Š๊ณ ๋„ ๋ชจ๋ฐ”์ผ ์žฅ์น˜์˜ ํƒญ์œผ๋กœ ์ž‘์—…์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ๊ทธ๋†ˆ ์Šคํƒ€์ผ ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์„ฑ์„ ์œ„ํ•œ Libadwaita 1.3 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถœ์‹œ๊ทธ๋†ˆ ์Šคํƒ€์ผ ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์„ฑ์„ ์œ„ํ•œ Libadwaita 1.3 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถœ์‹œ
  • ๋ชจ๋ฐ”์ผ ์žฅ์น˜์—์„œ ํƒญ ๋ณด๊ธฐ๋ฅผ ์—ฌ๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” AdwTabView์˜ ์—ด๋ฆฐ ํƒญ ์ˆ˜์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋œ ๋ฒ„ํŠผ์„ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด AdwTabButton ์œ„์ ฏ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
    ๊ทธ๋†ˆ ์Šคํƒ€์ผ ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์„ฑ์„ ์œ„ํ•œ Libadwaita 1.3 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถœ์‹œ
  • AdwViewStack, AdwTabView ๋ฐ AdwEntryRow ์œ„์ ฏ์€ ์ด์ œ ์ ‘๊ทผ์„ฑ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • ์‹œ์Šคํ…œ ์„ค์ •์—์„œ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋น„ํ™œ์„ฑํ™”๋ฅผ ๋ฌด์‹œํ•˜๊ธฐ ์œ„ํ•ด AdwAnimation ํด๋ž˜์Šค์— ์†์„ฑ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ด์ œ AdwActionRow ํด๋ž˜์Šค์— ์ž๋ง‰์„ ๊ฐ•์กฐ ํ‘œ์‹œํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ œ๋ชฉ ์ค„ ๋ฐ ์ž๋ง‰ ์ค„ ์†์„ฑ์ด AdwExpanderRow ํด๋ž˜์Šค์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Grab_focus_without_selecting() ๋ฉ”์†Œ๋“œ๊ฐ€ GtkEntry์™€ ์œ ์‚ฌํ•˜๊ฒŒ AdwEntryRow ํด๋ž˜์Šค์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋น„๋™๊ธฐ choose() ๋ฉ”์†Œ๋“œ๊ฐ€ GtkAlertDialog์™€ ์œ ์‚ฌํ•˜๊ฒŒ AdwMessageDialog ํด๋ž˜์Šค์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ ์ธํ„ฐํŽ˜์ด์Šค์™€ ๊ด€๋ จ๋œ API ํ˜ธ์ถœ์ด AdwTabBar ํด๋ž˜์Šค์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • AdwAvatar ํด๋ž˜์Šค๋Š” ์˜ฌ๋ฐ”๋ฅธ ์ด๋ฏธ์ง€ ํฌ๊ธฐ ์กฐ์ •์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.
  • Windows ํ”Œ๋žซํผ์—์„œ ์ž‘์—…ํ•  ๋•Œ ์–ด๋‘์šด ์Šคํƒ€์ผ๊ณผ ๊ณ ๋Œ€๋น„ ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ด์ œ ๋ชฉ๋ก ๋ฐ ๊ทธ๋ฆฌ๋“œ์—์„œ ์„ ํƒํ•œ ์š”์†Œ๊ฐ€ ํ™œ์„ฑ ์š”์†Œ๋ฅผ ๊ฐ•์กฐ ํ‘œ์‹œํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ ์ƒ‰์ƒ(์•…์„ผํŠธ)์œผ๋กœ ๊ฐ•์กฐ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€