Վեց ամսվա մշակումից հետո հրապարակվել է գրաֆիկական ինտերֆեյսի ստեղծման համար նախատեսված բազմահարթակ գործիքակազմի թողարկումը՝ GTK 4.10.0: GTK 4-ը մշակվում է որպես մշակման նոր գործընթացի մաս, որը փորձում է հավելվածների մշակողներին տրամադրել կայուն և աջակցվող API մի քանի տարի շարունակ, որը կարող է օգտագործվել առանց վախենալու, որ վեց ամիսը մեկ դիմումները վերաշարադրվեն՝ հաջորդ GTK-ում API-ի փոփոխությունների պատճառով: մասնաճյուղ.
GTK 4.10-ի ամենաուշագրավ բարելավումներից մի քանիսը ներառում են.
- GtkFileChooserWidget վիջեթը, որն իրականացնում է երկխոսություն, որը բացվում է հավելվածներում ֆայլեր ընտրելու համար, իրականացնում է տեղեկատուի բովանդակությունը պատկերակների ցանցի տեսքով ներկայացնելու ռեժիմ: Լռելյայնորեն, դասական տեսքը՝ ֆայլերի ցանկի տեսքով, շարունակում է օգտագործվել, և վահանակի աջ կողմում հայտնվել է առանձին կոճակ՝ պատկերակների ռեժիմին անցնելու համար: սրբապատկերներ:
- Ավելացվել են նոր դասեր՝ GtkColorDialog, GtkFontDialog, GtkFileDialog և GtkAlertDialog՝ գույների, տառատեսակների և ֆայլերի ընտրության և նախազգուշացումների ցուցադրման երկխոսություններով: Նոր տարբերակներն առանձնանում են ավելի ամբողջական և հավասարակշռված API-ի անցումով, որն աշխատում է ասինխրոն ռեժիմով (GIO async): Նոր երկխոսություններում, հնարավորության և հասանելիության դեպքում, օգտագործվում են Freedesktop պորտալները (xdg-desktop-portal), որոնք օգտագործվում են մեկուսացված հավելվածներից օգտվողի միջավայրի ռեսուրսների հասանելիությունը կազմակերպելու համար:
- Ավելացվել է նոր CPDB (Common Printing Dialog Backend)՝ ապահովելով ստանդարտ մշակիչներ տպագրության երկխոսություններում օգտագործելու համար: Նախկինում օգտագործված lpr տպագրության հետնամասը դադարեցվել է:
- GDK գրադարանը, որն ապահովում է շերտ GTK-ի և գրաֆիկական ենթահամակարգի միջև, առաջարկում է GdkTextureDownloader կառուցվածքը, որն օգտագործվում է GdkTexture դասի հյուսվածքները բեռնելու համար և կարող է օգտագործվել տարբեր ձևաչափեր փոխարկելու համար: Բարելավված հյուսվածքների մասշտաբավորում՝ օգտագործելով OpenGL:
- GSK գրադարանը (GTK Scene Kit), որն ապահովում է OpenGL-ի և Vulkan-ի միջոցով գրաֆիկական տեսարանները ցուցադրելու հնարավորություն, աջակցում է դիմակներով հանգույցներին և մասշտաբային հյուսվածքների հատուկ զտմանը:
- Աջակցություն է իրականացվել Wayland արձանագրության ընդարձակման նոր տարբերակների համար: «xdg-activation» արձանագրությունն օգտագործելիս մեկնարկի ծանուցումների ելքը ճշգրտվել է: Լուծվել են բարձր պիքսելային խտությամբ էկրանների կուրսորի չափի հետ կապված խնդիրները:
- GtkMountOperation դասը հարմարեցված է աշխատելու ոչ X11 միջավայրերում:
- Broadway backend-ը, որը թույլ է տալիս Ձեզ ցուցադրել GTK գրադարանի ելքը վեբ բրաուզերի պատուհանում, ավելացրել է մոդալ պատուհանների աջակցությունը:
- GtkFileLauncher դասը առաջարկում է նոր ասինխրոն API՝ gtk_show_uri-ին փոխարինելու համար:
- Gtk-builder-tool կոմունալը բարելավել է ձևանմուշների մշակումը:
- GtkSearchEntry վիջեթն ավելացրել է լրացնող տեքստի աջակցություն, որը ցուցադրվում է, երբ դաշտը դատարկ է և մուտքային ֆոկուս չկա:
- Ավելացվեց GtkUriLauncher դասը, որը փոխարինում է gtk_show_uri ֆունկցիան, որն օգտագործվում է տվյալ URI-ի ցուցադրման համար գործարկված հավելվածը որոշելու համար, կամ սխալ է նետում, եթե մշակող չկա:
- GtkStringSorter դասը ավելացրել է աջակցություն տարբեր «համադրման» մեթոդների համար՝ թույլ տալով կատարել համապատասխանեցում և տեսակավորում՝ հիմնվելով նիշերի նշանակության վրա (օրինակ, երբ առկա է շեշտադրման նշան):
- API-ների և վիջեթների մեծ մասը հնացել են, որոնք որոշվել է չաջակցել ապագա GTK5 մասնաճյուղում և որոնք փոխարինվել են ասինխրոն ռեժիմով աշխատող անալոգներով.
- GtkDialog (պետք է օգտագործի GtkWindow):
- GtkTreeView (պետք է օգտագործվեն GtkListView և GtkColumnView):
- GtkIconView (պետք է օգտագործի GtkGridView):
- GtkComboBox (պետք է օգտագործվի GtkDropDown):
- GtkAppChooser (պետք է օգտագործվի GtkDropDown):
- GtkMessageDialog (պետք է օգտագործվի GtkAlertDialog):
- GtkColorChooser (պետք է օգտագործի GtkColorDialog և GtkColorDialogButton):
- GtkFontChooser (պետք է օգտագործի GtkFontDialog և GtkFontDialogButton):
- GtkFileChooser (պետք է օգտագործի GtkFileDialog):
- GtkInfoBar
- GtkEntryCompletion
- GtkStyleContext
- GtkVolumeButton
- GtkStatusbar
- GtkAssistant
- GtkLockButton
- gtk_widget_show/hide
- gtk_show_uri
- gtk_render_ և gtk_snapshot_render_
- gtk_gesture_set_sequence_state
- GtkAccessible ինտերֆեյսը տեղափոխվել է հանրային կատեգորիա, որը թույլ է տալիս միացնել հաշմանդամություն ունեցող անձանց ինտերֆեյսի տարրերի երրորդ կողմի մշակողներին: Ավելացվեց GtkAccessibleRange ինտերֆեյսը:
- MacOS պլատֆորմը ապահովում է մկնիկի միջոցով տարրերը քաշելու աջակցություն (DND, Drag-and-Drop):
- Windows հարթակում բարելավվել է ինտեգրումը համակարգի կարգավորումների հետ:
- Վրիպազերծման ելքային ձևաչափը միավորվել է:
- JPEG պատկերների վերբեռնիչի հիշողության սահմանաչափը բարձրացվել է մինչև 1 ԳԲ:
Source: opennet.ru