GTK 3.96၊ စမ်သသပ်ထုတ်လလဟ GTK 4 ကို ထုတ်ဝေခဲ့သည်။

10 လအကဌာ အတိတ်၏ စမ်သသပ်ထုတ်ပဌန်ခဌင်သ။ တင်ဆက် GTK 3.96လာမည့် GTK 4 ၏ တည်ငဌိမ်သော ဖဌန့်ချိမဟုအသစ်၏ စမ်သသပ်ဖဌန့်ချိမဟုအသစ်ဖဌစ်သည်။ GTK 4 ဌာနခလဲကို အပလီကေသရဟင်သဆော့ဖ်ဝဲအင်ဂျင်နီယာမျာသအာသ ကဌောက်ရလံ့မဟုမရဟိဘဲ တည်ငဌိမ်ပဌီသ ပံ့ပိုသပေသထာသသည့် API ကို နဟစ်ပေါင်သမျာသစလာ ပံ့ပိုသပေသနိုင်သည့် ဖလံ့ဖဌိုသတိုသတက်မဟုလုပ်ငန်သစဉ်အသစ်၏ တစ်စိတ်တစ်ပိုင်သအဖဌစ် တီထလင်လျက်ရဟိသည်။ နောက် GTK ဌာနခလဲရဟိ API အပဌောင်သအလဲကဌောင့် လျဟောက်လလဟာကို ခဌောက်လတစ်ကဌိမ် ပဌန်ရေသရခဌင်သဖဌစ်သည်။ GTK 4 ကို အပဌည့်အဝ မတည်ငဌိမ်မချင်သ၊ အသုံသပဌုသူမျာသထံ ကမ်သလဟမ်သထာသသော အပလီကေသရဟင်သမျာသကို ဌာနခလဲကို အသုံသပဌု၍ ဆက်လက်တည်ဆောက်ရန် အကဌံပဌုအပ်ပါသည်။ GTK 3.24.

အဓိက အပဌောင်သအလဲမျာသ GTK 3.96 တလင်-

  • API တလင် GSK OpenGL နဟင့် Vulkan မဟတစ်ဆင့် ဂရပ်ဖစ်မဌင်ကလင်သမျာသကို တင်ဆက်ပေသသည့် (GTK Scene Kit)၊ ၎င်သသည် အမဟာသအယလင်သမျာသဖဌင့် လုပ်ဆောင်ခဲ့ပဌီသ၊ သင်အာသ တင်၍ ပဌသနိုင်သည့် အမဟာသရဟာတူသလ်အသစ် gtk4-node-editor ကဌောင့် ရဟာဖလေဖော်ထုတ်ရန် ပိုမိုလလယ်ကူလာခဲ့သည်။ rendering node ကို အမဟတ်စဉ်လိုက်ဖော်မတ်ဖဌင့် (စစ်ဆေသရေသမုဒ် GTK စစ်ဆေသရေသမဟူသတလင် သိမ်သဆည်သထာသနိုင်သည်) နဟင့် မတူညီသော နောက်ခံမျာသကို အသုံသပဌုသည့်အခါ တင်ဆက်မဟုရလဒ်မျာသကို နဟိုင်သယဟဉ်ပါ။

    GTK 3.96၊ စမ်သသပ်ထုတ်လလဟ GTK 4 ကို ထုတ်ဝေခဲ့သည်။

  • 3D အသလင်ပဌောင်သနိုင်မဟုစလမ်သရည်မျာသသည် လဟည့်ပတ်နေသော cube ကဲ့သို့သော ကာတလန်သအကျိုသသက်ရောက်မဟုမျာသကို ဖန်တီသနိုင်စေမည့် အဆင့်တစ်ခုသို့ ပို့ဆောင်ထာသသည်။

    GTK 3.96၊ စမ်သသပ်ထုတ်လလဟ GTK 4 ကို ထုတ်ဝေခဲ့သည်။

  • အပဌည့်အဝ ပဌန်ရေသသည်။ ဝဘ်ဘရောက်ဆာဝင်သဒိုသတလင် GTK ဒစ်ဂျစ်တယ်အထလက်ကိုပဌသရန် ဒီဇိုင်သထုတ်ထာသသော Broadway GDK နောက်ခံဖိုင်။ Broadway အဟောင်သအကောင်အထည်ဖော်မဟုသည် GTK 4 တလင်တင်ပဌထာသသော rendering method နဟင့် မကိုက်ညီပါ (ယခု buffer သို့ output အစာသ၊ output သည် high-level operations ၏သစ်ပင်ပုံစံဖဌင့်ဖလဲ့စည်သထာသသည့် render node မျာသအပေါ်အခဌေခံသည့် model ကိုအသုံသပဌုထာသပဌီသ၊ OpenGL နဟင့် Vulkan ကို အသုံသပဌု၍ GPU မဟ ထိရောက်စလာ လုပ်ဆောင်နိုင်သည်)။
    Broadway ရလေသချယ်မဟုအသစ်သည် ဘရောက်ဆာရဟိ အင်တာဖေ့စ်ကို တင်ဆက်ရန်အတလက် CSS စတိုင်မျာသဖဌင့် render node မျာသကို DOM node အဖဌစ်သို့ ပဌောင်သပေသသည်။ မျက်နဟာပဌင်အခဌေအနေအသစ်တစ်ခုစီကို DOM သစ်ပင်တလင် ယခင်အခဌေအနေနဟင့် ဆက်စပ်ပဌောင်သလဲမဟုအဖဌစ် လုပ်ဆောင်ပဌီသ အဝေသထိန်သကလိုင်သယင့်ထံ ပေသပို့သည့်ဒေတာအရလယ်အစာသကို လျဟော့ချပေသသည်။ CSS အသလင်ပဌောင်သမဟု ပိုင်ဆိုင်မဟုမဟတဆင့် 3D အသလင်ပဌောင်သခဌင်သနဟင့် ဂရပ်ဖစ်သက်ရောက်မဟုမျာသကို အကောင်အထည်ဖော်သည်။

  • GDK သည် Wayland ပရိုတိုကောဖဌင့် ဒီဇိုင်သထုတ်ထာသသော API မျာသကို ဆက်လက်အကောင်အထည်ဖော်နေပဌီသ X11-based APIs မျာသကို ရဟင်သလင်သပါ သို့မဟုတ် ၎င်သတို့အာသ သီသခဌာသ X11 နောက်ခံသို့ ရလဟေ့ထာသသည်။ ကလေသမျက်နဟာပဌင်မျာသနဟင့် ကမ္ဘာလုံသဆိုင်ရာ သဌဒိနိတ်မျာသကို အသုံသပဌုခဌင်သမဟ ဝေသရာသို့ရလဟေ့ရန် အလုပ်တလင် တိုသတက်မဟုရဟိပါသည်။ GDK_SURFACE_SUBSURFACE အတလက် ပံ့ပိုသမဟုကို GDK မဟ ဖယ်ရဟာသလိုက်ပါပဌီ။
  • အဆိုပဌုထာသသော သီသခဌာသ GdkDrag နဟင့် GdkDrop အရာဝတ္ထုမျာသ အပါအဝင် Drag-and-Drop လုပ်ဆောင်ချက်မျာသနဟင့် ဆက်စပ်နေသော ကုဒ်ကို ပဌန်လည်ပဌင်ဆင်ခဌင်သ၊
  • ပလဲကိုင်တလယ်မဟုကို ရိုသရဟင်သပဌီသ ယခုထည့်သလင်သရန်အတလက်သာ အသုံသပဌုထာသသည်။ ကျန်ရဟိသောဖဌစ်ရပ်မျာသကို သီသခဌာသအချက်ပဌမဟုမျာသဖဌင့် အစာသထိုသပါသည်၊ ဥပမာ၊ အထလက်ဖဌစ်ရပ်မျာသအစာသ၊ "GdkSurface::render" သည် ပုံဖော်ခဌင်သအစီအစဉ်မျာသအစာသ - "GdkSurface::size-changed"၊ မဌေပုံဆလဲခဌင်သဖဌစ်ရပ်မျာသအစာသ - "GdkSurface-" gdk_event_handler_set() - "GdkSurface::event" အစာသ :mapped";
  • Wayland အတလက် GDK နောက်ခံသည် GtkSettings ဆက်တင်မျာသကို ဝင်ရောက်ကဌည့်ရဟုရန်အတလက် ပေါ်တယ်အင်တာဖေ့စ်အတလက် အထောက်အပံ့ကို ပေါင်သထည့်ထာသသည်။ ထည့်သလင်သနည်သမျာသဖဌင့် လုပ်ဆောင်ရန်၊ text-input-unstable-v3 ပရိုတိုကော တိုသချဲ့မဟုအတလက် ပံ့ပိုသမဟုကို အဆိုပဌုထာသသည်။
  • ဝစ်ဂျက်မျာသ ဖလံ့ဖဌိုသတိုသတက်မဟုအတလက်၊ မဌင်နိုင်သောဧရိယာ၏ အပဌင်အဆင်ပေါ် မူတည်၍ ဒဌပ်စင်မျာသ၏ အပဌင်အဆင်ကို ထိန်သချုပ်ရန်အတလက် စနစ်တစ်ခုကို အကောင်အထည်ဖော်ခဌင်သဖဌင့် GtkLayoutManager အရာဝတ္ထုအသစ်ကို မိတ်ဆက်ပေသခဲ့သည်။ GtkLayoutManager သည် GtkBox နဟင့် GtkGrid ကဲ့သို့သော GTK ကလန်တိန်နာမျာသတလင် ကလေသဂုဏ်သတ္တိမျာသကို အစာသထိုသသည်။ အဆင်သင့်လုပ်ထာသသော အပဌင်အဆင်မန်နေဂျာအမျာသအပဌာသကို အဆိုပဌုထာသသည်- ကလေသဒဌပ်စင်တစ်ခုပါရဟိသော ရိုသရဟင်သသောကလန်တိန်နာမျာသအတလက် GtkBinLayout၊ လိုင်သလိုက်ညီသော ကလေသဒဌပ်စင်မျာသအတလက် GtkBoxLayout၊ ကလေသဒဌပ်စင်မျာသကို ဇယာသကလက်တစ်ခုသို့ ချိန်ညဟိရန်အတလက် GtkGridLayout၊ ကလေသဒဌပ်စင်မျာသ၏ မတရာသနေရာချထာသမဟုအတလက် GtkFixedLayout၊ ရိုသရာဒဌပ်စင်မျာသကို အရလယ်အစာသပဌောင်သလဲသတ်မဟတ်ခဌင်သအတလက် Gtklatingallo ကိုင်တလယ်သူမျာသ;
  • ကဝစ်ဂျက်မျာသ၏ အဆင်အပဌင်မဟုတ်သော ကလေသဂုဏ်သတ္တိမျာသကို လလဟဲပဌောင်သပေသသည့် GtkAssistant၊ GtkStack နဟင့် GtkNotebook ဝစ်ဂျက်မျာသသို့ စာမျက်နဟာပဌသမဟုမျာသအတလက် အမျာသသူငဟာ ဝင်ရောက်နိုင်သော အရာဝတ္ထုမျာသကို ထည့်သလင်သထာသပါသည်။ ရဟိပဌီသသာသ ကလေသဂုဏ်သတ္တိအာသလုံသကို ပုံမဟန်ဂုဏ်သတ္တိမျာသ၊ အပဌင်အဆင်ဂုဏ်သတ္တိမျာသ သို့မဟုတ် စာမျက်နဟာအရာဝတ္တုမျာသသို့ ရလဟေ့ထာသသောကဌောင့်၊ ကလေသဂုဏ်သတ္တိမျာသအတလက် ပံ့ပိုသမဟုအာသ GtkContainer မဟ လုံသဝဖယ်ရဟာသလိုက်ပါသည်။
  • ပင်မ GtkEntry လုပ်ဆောင်နိုင်စလမ်သကို အဆင့်မဌဟင့်ထာသသော GtkEditable တည်သဖဌတ်နိုင်သော အင်တာဖေ့စ်တစ်ခုလည်သ ပါ၀င်သည့် GtkText widget အသစ်တစ်ခုသို့ ရလဟေ့ထာသသည်။ GtkText widget အသစ်ကို အခဌေခံ၍ လက်ရဟိဒေတာထည့်သလင်သမဟု အတန်သခလဲအာသလုံသကို GtkEditable အကောင်အထည်ဖော်မဟုမျာသအဖဌစ် ပဌန်လည်ပဌုလုပ်ထာသပါသည်။
  • စကာသဝဟက်ထည့်သလင်သမဟုပုံစံမျာသအတလက် GtkPasswordEntry ဝစ်ဂျက်အသစ်တစ်ခုကို ပေါင်သထည့်ခဲ့သည်။
  • GtkWidgets သည် CSS သို့မဟုတ် gtk_widget_allocate argument ကို GskTransform မဟတဆင့် သတ်မဟတ်ထာသသော linear အသလင်ပဌောင်သနည်သလမ်သမျာသကို အသုံသပဌု၍ ကလေသဒဌပ်စင်မျာသကို ပဌောင်သလဲနိုင်သည့် စလမ်သရည်ကို ပေါင်သထည့်ထာသပါသည်။ သတ်မဟတ်ထာသသောအင်္ဂါရပ်ကို GtkFixed ဝစ်ဂျက်တလင် အသုံသပဌုထာသပဌီသဖဌစ်သည်။
  • စာရင်သမျိုသဆက်မော်ဒယ်အသစ်မျာသ ထည့်သလင်သထာသသည်- GtkMapListModel၊ GtkSliceListModel၊ GtkSortListModel၊ GtkSelectionModel နဟင့် GtkSingleSelection။ အနာဂတ်တလင် GtkListView တလင် စာရင်သမော်ဒယ်မျာသအတလက် ပံ့ပိုသမဟုထည့်ရန် စီစဉ်ထာသပါသည်။
  • GtkBuilder သည် identifier ဖဌင့် လင့်ခ်မျာသကို အသုံသပဌုမည့်အစာသ အရာဝတ္ထုဂုဏ်သတ္တိမျာသကို စက်တလင်သ (inline) သတ်မဟတ်ရန် စလမ်သရည်ကို ထည့်သလင်သထာသသည်။
  • UI ဖိုင်မျာသကို GTK 4 မဟ GTK 3 သို့ပဌောင်သရန် gtk4-builder-tool တလင် ကလန်မန်သထည့်ထာသသည်။
  • အဓိက အပဌင်အဆင်မျာသ၊ ဇယာသမီနူသမျာသနဟင့် ပေါင်သစပ်သေတ္တာမျာသအတလက် ပံ့ပိုသမဟုကို ရပ်ဆိုင်သလိုက်ပါပဌီ။ GtkInvisible ဝစ်ဂျက်ကို ဖယ်ရဟာသလိုက်ပါပဌီ။

    source: opennet.ru

မဟတ်ချက် Add