Commit graph

1375 commits

Author SHA1 Message Date
Fred Kiefer
db40d23ed6
Merge pull request #38 from anthonyc-r/scale_factor_font_advancement
Cairo: Disable font hinting when GSScaleFactor is not 1 to fix text d…
2022-01-24 20:03:00 +01:00
anthony
20182c8ec8 Cairo: Default font hinting to off when GSScaleFactor is set to values other than 1.0 2022-01-24 09:56:03 +00:00
Fred Kiefer
d7cfebe169
Merge pull request #37 from nongio/wayland-cursor-fix
wayland: use GSStandardWindowDecorationView to hit-test cursor clicks
2021-12-29 14:44:03 +01:00
Riccardo Canalicchio
977b375feb wayland: use GSStandardWindowDecorationView to hit-test cursor clicks 2021-12-29 14:29:44 +01:00
Fred Kiefer
9c7c878717
Merge pull request #35 from nongio/wayland-pointer
Wayland backend pointer events and cursor images
2021-12-27 17:52:47 +01:00
Riccardo Canalicchio
89280c0e3e code formatting 2021-12-27 15:21:03 +01:00
Fred Kiefer
06be91b267
Merge pull request #34 from nongio/wayland-shm-surface
Wayland shm surface
2021-12-27 13:29:36 +01:00
Fred Kiefer
cb3a8d1501
Merge pull request #36 from nongio/wayland-menu-api-change
wayland backend: libs-gui api change _menu
2021-12-27 13:18:48 +01:00
Riccardo Canalicchio
ec500d2bfb wayland backend: libs-gui api change _menu 2021-12-27 10:00:02 +01:00
Riccardo Canalicchio
cc7af18075 wayland backendL capture mouse bugfix 2021-12-27 09:53:15 +01:00
Riccardo Canalicchio
a240d1b4d8 wayland cursor: capture and release methods 2021-12-22 07:50:34 +01:00
Riccardo Canalicchio
2683cdd8ab Wayland backend: cursor event serial 2021-12-20 00:12:13 +01:00
Riccardo Canalicchio
54b2b172d8 Wayland backend: cursor icon functions 2021-12-20 00:11:48 +01:00
Riccardo Canalicchio
5db58c071d Wayland backend: window ignoreMouse 2021-12-20 00:11:41 +01:00
Riccardo Canalicchio
00b7183f84 Wayland backend: cursor handlers 2021-12-20 00:11:32 +01:00
Gregory Casamento
e106932ae0
Merge pull request #33 from nongio/wayland 2021-12-14 12:47:06 -05:00
Riccardo Canalicchio
79be4acfba WaylandCairoShmSurface: fix memory leak, handling buffer release 2021-12-13 22:27:31 +01:00
Riccardo Canalicchio
317ca762a3 rename WaylandCairoShmSurface 2021-12-13 22:27:22 +01:00
Riccardo Canalicchio
96f07c13f7 Wayland server: remove attach calls from server, surface attach is delegated to cairo surface 2021-12-13 22:23:59 +01:00
Riccardo Mottola
637baa2d91 make cast to float explicit 2021-12-03 02:04:47 +01:00
Riccardo Canalicchio
91a1479193 Wayland server: code formatting
using clang-format from:
https://github.com/gnustep/libs-base/blob/master/.clang-format
2021-11-23 14:00:01 -05:00
Riccardo Canalicchio
114743a5d0 wayland backend: refactor logs 2021-11-09 03:23:08 -05:00
Riccardo Canalicchio
5967015078 wayland backend: window move/resize 2021-11-06 08:09:26 -04:00
Riccardo Canalicchio
502dde25f5 wayland backend: surface roles based on window level 2021-11-06 08:07:44 -04:00
Riccardo Canalicchio
6a9e97660d wayland backend: change logs to debuglog 2021-10-28 02:35:31 -04:00
Riccardo Canalicchio
30ceacc90d wayland backend: refactor code, split into categories 2021-10-25 07:38:15 -04:00
Riccardo Canalicchio
7b87b268e3 wayland backend: layer shell 2021-10-25 03:13:35 -04:00
Riccardo Canalicchio
1d74e36258 wayland backend:re-attach surface on ExposeRect 2021-10-19 02:10:45 -04:00
Riccardo Canalicchio
e7ab056264 wayland backend:implement xdg ping/pong handler
this prevents the client from being considered unresponsive
2021-10-18 13:39:58 -04:00
Riccardo Canalicchio
c6ce795898 wayland backend: delayed toplevel creation 2021-10-18 03:37:02 -04:00
Ivan Vučica
3227b39c58 release-chore: Release 0.29.0. 2021-04-26 23:28:18 +01:00
Fred Kiefer
6556ff6dd8 Correct date of last ChangeLog entry 2021-03-12 18:22:58 +01:00
Fred Kiefer
9299fa1f93 * Source/x11/XGServerWindow.m (-styleoffsets:...:): Change NSLog
statement on guessing the offset into a NSDebugLLog statement.
2021-03-12 17:40:08 +01:00
Fred Kiefer
3b90116f44
Merge pull request #31 from gnustep/win64-fixes
Win64 fixes
2021-03-05 11:14:15 +01:00
rmottola
c40aa45ea6 Merge branch 'win64-fixes' of https://github.com/gnustep/libs-back into win64-fixes 2021-03-04 15:13:01 +01:00
rmottola
8640bfafe3 use consistently GetWindowLongPtr also for Cairo on Windows 2021-03-04 15:12:34 +01:00
Riccardo Mottola
60f2cb4235 update changelog 2021-03-04 00:04:09 +01:00
rmottola
d5abf2ff1c actually store in a LONG_PTR the result of GetWindowLongPtr 2021-03-03 20:58:05 +01:00
rmottola
aad896a260 use consistently GetWindowLongPtr also for Cairo on Windows 2021-03-03 20:53:01 +01:00
rmottola
da9e53c608 upgrade consistently [Set,Get]WindowLong to [Set,Get]WindowLongPtr 2021-03-02 22:13:22 +01:00
Sergii Stoian
e5cdc1747b * Source/x11/XGServerWindow.m (_checkStyle:): do not set application
name and WindowGroupHint to temporary window. Created window designed
to help get window frame offsets only - appicon window will be created
later. This change prevents appicon flickering on WindowMaker at
application start.
(_createWMAppiconHack, _setupRootWindow): WindowMaker hack removed in
favour of solution introduced in _checkStyle:.
2021-01-27 15:37:27 +02:00
Sergii Stoian
3f3c1305a9 2021-01-24 Sergii Stoian <stoyan255@gmail.com>
* Source/x11/XGServerWindow.m: WindowMaker doesn't support
  _NET_REQUEST_FRAME_EXTENTS message andthe only way to determine offsets
  is creating and mapping window. In this case first mapped window of
  application is not appicon window.
  Early appicon creating inserted back as _createWMAppiconHack method and
  called only if no other way to determine window's offsets (before call to
  _checkStyle);appicon window size is set to size icon;
2021-01-24 02:45:29 +02:00
fredkiefer
aa9ae34916 Fill in some details for pending release. 2021-01-16 20:47:10 +01:00
Sergii Stoian
6c53486617
Merge pull request #29 from trunkmaster/master
x11/XGServerWindow.m: removed WindowMaker appicon hack
2020-09-19 01:51:00 +03:00
Sergii Stoian
0bbb7a0915 Author: Sergii Stoian <stoyan255@gmail.com>
--- log message follows this line --
* Source/x11/XGServerWindow.m: removed code commented out in
  previous commit.
2020-09-19 01:48:00 +03:00
Sergii Stoian
31b7c4ed2f * Source/x11/XGServerWindow.m
(_setupRootWindow, window::::): removed WindowMaker appicon hack and
  - now unused - _wmAppIcon variable.

  Description: The removed code removed creates and maps zero-sized
  window in hope that WindowMaker will recognize app by this event and
  create app icon window. Although when application requests window
  for appicon through the `-window::::` method call, it returns newly
  created and mapped window. This actually happens but application icon
  flickers between WM icon creation and application icon window appearance.

  This fix based on the fact that root application window (ROOT) is mapped
  in `-orderwindow:::` and this is the event of application recognition
  by WindowMaker because it is a first application window that is
  mapped.
2020-09-18 16:15:14 +03:00
Sergii Stoian
d221c98e95
Merge pull request #28 from trunkmaster/master
XGServerEvent.m: unhide app if WindowMaker sends WM_TAKE_FOCUS to window
2020-09-17 18:12:55 +03:00
Sergii Stoian
fa4549e522 * Source/x11/XGServerEvent.m (_handleTakeFocusAtom:forContext:):
space before argument was added.
2020-09-17 12:00:38 +03:00
Sergii Stoian
df32af71fc * Source/x11/XGServerEvent.m
(_handleTakeFocusAtom:forContext:): if application (window) receives
  WM_TAKE_FOCUS in hidden state it means WindowMaker wants us to be
  unhidden.

  Description: There are 2 protocols defined in XGServerWindow.h:
  WMFHideApplication and WMFHideOtherApplications. These protocols exist
  to help GNUstep application and WindowMaker notify each other
  about "Hide" and "Hide Others" actions. There are no protocols for
  "unhide" action.

  Test case steps:
  1. Open application with window opened.
  2. Hide application with "Hide" menu item.
  3. Open WindowMaker's "Windows" menu (middle-click on desktop).
  4. Select hidden application window.
  Application unhides, activates, restored window is focused (receives) input
  and "Hide" menu item unselected.
2020-09-17 01:42:32 +03:00
Sergii Stoian
d970554391 * Source/x11/XGServerWindow.m
(hideApplication:): send application's root window to WindowMaker (WM)
  because it's a "group leader" that clearly identifies application
  inside WM. WM uses XFindContext to get WApplication structure and
  "group leader" window ID is a key to find it.
2020-09-16 09:24:48 +00:00